Example #1
0
 /**
  * @test
  * @loadFixture ../../../../../var/fixtures/orders.yaml
  */
 public function testGetItemParams()
 {
     $fakeProduct = Mage::getModel('catalog/product');
     $fakeProduct->setCategoryIds(array(1, 2));
     $productMock = $this->getModelMock('catalog/product', array('load'));
     $productMock->expects($this->any())->method('load')->will($this->returnValue($fakeProduct));
     $this->replaceByMock('model', 'catalog/product', $productMock);
     $fakeKwixoCategory = new Varien_Object();
     $fakeKwixoCategory->setId(1);
     $fakeKwixoCategory->setKwixoCategoryId(123);
     $kwixoMapping = $this->getModelMock('ops/kwixo_category_mapping', array('loadByCategoryId'));
     $kwixoMapping->expects($this->any())->method('loadByCategoryId')->will($this->returnValue($fakeKwixoCategory));
     $this->replaceByMock('model', 'ops/kwixo_category_mapping', $kwixoMapping);
     $order = Mage::getModel('sales/order')->load(11);
     $formFields = Mage::getModel('ops/payment_kwixo_abstract')->getItemParams($order);
     $orderItems = $order->getAllItems();
     $i = 1;
     foreach ($orderItems as $orderItem) {
         $this->assertTrue(array_key_exists('ITEMID' . $i, $formFields));
         $this->assertEquals($orderItem->getId(), $formFields['ITEMID' . $i]);
         $this->assertTrue(array_key_exists('ITEMNAME' . $i, $formFields));
         $this->assertEquals($orderItem->getName(), $formFields['ITEMNAME' . $i]);
         $this->assertTrue(array_key_exists('ITEMPRICE' . $i, $formFields));
         $this->assertEquals($orderItem->getBasePrice(), $formFields['ITEMPRICE' . $i]);
         $this->assertTrue(array_key_exists('ITEMQUANT' . $i, $formFields));
         $this->assertEquals($orderItem->getQtyOrdered(), $formFields['ITEMQUANT' . $i]);
         $this->assertTrue(array_key_exists('ITEMVAT' . $i, $formFields));
         $this->assertEquals($orderItem->getBaseTaxAmount(), $formFields['ITEMVAT' . $i]);
         $i++;
     }
     $fakeItem = new Varien_Object();
     $fakeItem->setParentItemId(1);
     $fakeOrder = $this->getModelMock('sales/order', array('getAllItems'));
     $fakeOrder->expects($this->any())->method('getAllItems')->will($this->returnValue(array($fakeItem)));
     $formFields = Mage::getModel('ops/payment_kwixo_abstract')->getItemParams($fakeOrder);
     $this->assertArrayNotHasKey('ITEMID0', $formFields);
 }