Пример #1
0
 /**
  * Creates an instance of an entity.
  *
  * This method must return always an empty instance for related entity
  *
  * @return Order New Order instance
  */
 public function create()
 {
     /**
      * @var Order $order
      */
     $classNamespace = $this->getEntityNamespace();
     $order = new $classNamespace();
     $order->setQuantity(0)->setWidth(0)->setHeight(0)->setWidth(0)->setWeight(0)->setCreatedAt($this->now())->setPurchasableAmount($this->createZeroAmountMoney())->setAmount($this->createZeroAmountMoney())->setCouponAmount($this->createZeroAmountMoney())->setShippingAmount($this->createZeroAmountMoney());
     $paymentStateLineStack = $this->paymentMachineManager->initialize($order, StateLineStack::create(new ArrayCollection(), null), 'Order not paid');
     $order->setPaymentStateLineStack($paymentStateLineStack);
     $shippingStateLineStack = $this->shippingMachineManager->initialize($order, StateLineStack::create(new ArrayCollection(), null), 'Preparing Order');
     $order->setShippingStateLineStack($shippingStateLineStack);
     return $order;
 }
Пример #2
0
 /**
  * Test make transition with an initialized object
  */
 public function testReachStateInitialized()
 {
     $machineManager = $this->getMachineManager(5);
     $order = new Order();
     $stateLineStack = StateLineStack::create(new ArrayCollection(), null);
     $order->setStateLineStack($stateLineStack);
     $stateLineStack = $machineManager->initialize($order, $stateLineStack, '');
     $order->setStateLineStack($stateLineStack);
     $stateLineStack = $machineManager->reachState($order, $stateLineStack, 'paid', '');
     $this->assertEquals('paid', $stateLineStack->getLastStateLine()->getName());
     $this->assertEquals('paid', $stateLineStack->getStateLines()->last()->getName());
 }
Пример #3
0
 /**
  * Get StateLineStack.
  *
  * @return StateLineStack StateLineStack
  */
 public function getStateLineStack()
 {
     return StateLineStack::create($this->stateLines, $this->lastStateLine);
 }
Пример #4
0
 /**
  * Get ShippingStateLineStack
  *
  * @return StateLineStack ShippingStateLineStack
  */
 public function getShippingStateLineStack()
 {
     return StateLineStack::create($this->shippingStateLines, $this->shippingLastStateLine);
 }