9 use Magento\Mtf\Fixture\FixtureFactory;
10 use Magento\Mtf\TestCase\Injectable;
12 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
70 public function test($steps, $ordersCount, $action, $resultStatuses)
73 $orders = $this->createOrders($ordersCount, $steps);
77 $this->orderIndex->open();
78 $this->orderIndex->getSalesOrderGrid()->massaction(
$items, $action);
80 return [
'orders' =>
$orders,
'orderStatuses' => explode(
',', $resultStatuses)];
90 protected function createOrders(
$count, $steps)
93 $steps = explode(
'|', $steps);
96 $order = $this->fixtureFactory->createByCode(
'orderInjectable', [
'dataset' =>
'default']);
116 $cart = $this->fixtureFactory->createByCode(
'cart',
$cart);
117 $steps = array_diff(explode(
',', $steps), [
'-']);
118 foreach ($steps as $step) {
119 $action = str_replace(
' ',
'', ucwords($step));
120 $methodAction = (($action !=
'OnHold') ?
'Create' :
'') . $action .
'Step';
121 $path =
'Magento\Sales\Test\TestStep';
122 $processStep = $this->objectManager->create(
123 $path .
'\\' . $methodAction,
__inject(OrderIndex $orderIndex, FixtureFactory $fixtureFactory)
test($steps, $ordersCount, $action, $resultStatuses)
prepareFilter(array $orders)
processSteps(OrderInjectable $order, $steps)