public function testCannotAddTransactionsWithSameId() { $this->setExpectedException('SlmGoogleAnalytics\\Exception\\InvalidArgumentException'); $tracker = new Tracker(123); $transaction1 = new Transaction(456, 12.5); $transaction2 = new Transaction(456, 12.5); $tracker->addTransaction($transaction1); $tracker->addTransaction($transaction2); }
public function testHelperRendersItemWithOptionalValuesEmpty() { $transaction = new Transaction(123, 12.55); $item = new Item(456, 9.66, 1); $transaction->addItem($item); $this->tracker->addTransaction($transaction); $expected = '_gaq.push(["_addItem",123,456,null,null,9.66,1])'; $actual = $this->script->getCode(); $this->assertContains($expected, $actual); }
public function testHelperRendersTransactionWithMultipleItems() { $transaction = new Transaction(123, 12.55); $item1 = new Item(456, 9.66, 1, 'Product1', 'Category1'); $item2 = new Item(789, 15.33, 2, 'Product2', 'Category2'); $transaction->addItem($item1); $transaction->addItem($item2); $this->tracker->addTransaction($transaction); $expected = 'ga("ecommerce:addItem",{"id":123,"name":"Product1","sku":456,"category":"Category1","price":9.66,"quantity":1});'; $actual = $this->script->getCode(); $this->assertContains($expected, $actual); $expected = 'ga("ecommerce:addItem",{"id":123,"name":"Product2","sku":789,"category":"Category2","price":15.33,"quantity":2});'; $this->assertContains($expected, $actual); }