function testAddItemAlreadyAdded() { $item1 = new MockCartItem($this); $item2 = new MockCartItem($this); $item1->expectOnce('getId'); $item1->setReturnValue('getId', $item_id = 1); $item1->expectOnce('getAmount'); $item1->setReturnValue('getAmount', 5); $item1->expectNever('summAmount'); $item2->expectOnce('getAmount'); $item2->setReturnValue('getAmount', 10); $item2->expectOnce('getId'); $item2->setReturnValue('getId', $item_id); $item2->expectOnce('summAmount', array(new IsAExpectation('MockCartItem'))); $this->cart_handler->addItem($item1); $this->cart_handler->addItem($item2); $item1->tally(); $item2->tally(); }
function testGetItemsArrayDataset() { $item1 = new MockCartItem($this); $item2 = new MockCartItem($this); $item1->expectOnce('getSumm'); $item1->setReturnValue('getSumm', 10); $item2->expectOnce('getSumm'); $item2->setReturnValue('getSumm', 40); $item1->expectOnce('export'); $item1->setReturnValue('export', array('id' => 'some_id1')); $item2->expectOnce('export'); $item2->setReturnValue('export', array('id' => 'some_id2')); $this->cart_handler->expectOnce('getItems'); $this->cart_handler->setReturnValue('getItems', $arr = array($item1, $item2)); $result_array_dataset = new ArrayDataset(array(array('id' => 'some_id1', 'summ' => 10), array('id' => 'some_id2', 'summ' => 40))); $this->assertEqual($this->cart->getItemsArrayDataset(), $result_array_dataset); $item1->tally(); $item2->tally(); }