Example #1
0
 public function testSetSingleAddress()
 {
     $this->order->addProduct($this->products[0], 1);
     $this->controller->setOrder($this->order);
     $this->controller->setMultiAddress();
     $shipment1 = Shipment::getNewInstance($this->order);
     $shipment1->save();
     $shipment2 = Shipment::getNewInstance($this->order);
     $shipment2->save();
     $this->order->addProduct($this->products[0], 1, true, $shipment1);
     $this->order->addProduct($this->products[1], 2, true, $shipment2);
     $this->order->save();
     $order = $this->reloadOrder($this->order);
     $this->assertEqual($order->getShipments()->size(), 2);
     $this->assertEqual(count($order->getOrderedItems()), 3);
     $this->controller->setOrder($order = $this->reloadOrder($this->order));
     $response = $this->controller->setSingleAddress();
     $order = $this->reloadOrder($order);
     $this->assertIsA($response, 'ActionRedirectResponse');
     $this->assertEqual($order->isMultiAddress->get(), '0');
     $this->assertEqual($order->getShipments()->size(), 1);
     $this->assertEqual(count($order->getOrderedItems()), 2);
 }