/** * Run Unassign Custom OrderStatus test. * * @param OrderStatus $orderStatus * @return void */ public function test(OrderStatus $orderStatus) { // Preconditions: $orderStatus->persist(); // Steps: $orderStatusLabel = $orderStatus->getLabel(); $this->orderStatusIndex->open(); $this->orderStatusIndex->getOrderStatusGrid()->searchAndUnassign(['label' => $orderStatusLabel]); }
/** * Run Update Custom OrderStatus Test. * * @param OrderStatus $orderStatusInitial * @param OrderStatus $orderStatus * @param OrderInjectable $order * @param FixtureFactory $fixtureFactory * @param string $orderExist * @return array */ public function test(OrderStatus $orderStatusInitial, OrderStatus $orderStatus, OrderInjectable $order, FixtureFactory $fixtureFactory, $orderExist) { // Preconditions: $orderStatusInitial->persist(); if ($orderExist == 'Yes') { $config = $fixtureFactory->createByCode('configData', ['dataset' => 'checkmo_custom_new_order_status', 'data' => ['payment/checkmo/order_status' => ['value' => $orderStatusInitial->getStatus()]]]); $config->persist(); $order->persist(); } // Steps: $this->orderStatusIndex->open(); $this->orderStatusIndex->getOrderStatusGrid()->searchAndOpen(['label' => $orderStatusInitial->getLabel()]); $this->orderStatusEdit->getOrderStatusForm()->fill($orderStatus); $this->orderStatusEdit->getFormPageActions()->save(); // Configuring orderStatus for asserts. $orderStatus = $fixtureFactory->createByCode('orderStatus', ['data' => array_merge($orderStatusInitial->getData(), $orderStatus->getData())]); // Prepare data for tear down $this->orderStatus = $orderStatus; $this->orderStatusInitial = $orderStatusInitial; $this->order = $order; return ['orderStatus' => $orderStatus, 'status' => $orderStatus->getLabel(), 'customer' => $order->getDataFieldConfig('customer_id')['source']->getCustomer()]; }
/** * Run Assign Custom OrderStatus. * * @param OrderStatus $orderStatus * @param OrderInjectable $order * @param array $orderStatusState * @param AssertOrderStatusSuccessAssignMessage $assertion * @return array */ public function test(OrderStatus $orderStatus, OrderInjectable $order, array $orderStatusState, AssertOrderStatusSuccessAssignMessage $assertion) { // Preconditions: $orderStatus->persist(); /** @var OrderStatus $orderStatus */ $orderStatus = $this->fixtureFactory->createByCode('orderStatus', ['data' => array_merge($orderStatus->getData(), $orderStatusState)]); $this->orderStatus = $orderStatus; // Steps: $this->orderStatusIndex->open(); $this->orderStatusIndex->getGridPageActions()->assignStatusToState(); $this->orderStatusAssign->getAssignForm()->fill($orderStatus); $this->orderStatusAssign->getPageActionsBlock()->save(); $assertion->processAssert($this->orderStatusIndex); $order->persist(); $this->order = $order; return ['orderId' => $order->getId(), 'customer' => $order->getDataFieldConfig('customer_id')['source']->getCustomer(), 'status' => $orderStatus->getLabel()]; }