/** * 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]); }
/** * Assert order status availability in Order Status grid * * @param OrderStatus $orderStatus * @param OrderStatusIndex $orderStatusIndexPage * @param string|null $defaultState * @return void */ public function processAssert(OrderStatus $orderStatus, OrderStatusIndex $orderStatusIndexPage, $defaultState = null) { $orderStatusIndexPage->open(); $orderStatusLabel = $orderStatus->getLabel(); $filter = ['status' => $orderStatus->getStatus(), 'label' => $orderStatusLabel]; if ($defaultState !== null) { $state = $this->prepareState($orderStatus->getState()); $filter = ['label' => $defaultState, 'state' => $state]; } \PHPUnit_Framework_Assert::assertTrue($orderStatusIndexPage->getOrderStatusGrid()->isRowVisible($filter, true, false), 'Order status \'' . $orderStatusLabel . '\' is absent in Order Status grid.'); }
/** * 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') { $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()]; }