/** * Assert that product is not present in Wishlist on Frontend * * @param CustomerAccountIndex $customerAccountIndex * @param WishlistIndex $wishlistIndex * @param InjectableFixture $product * @param CustomerInjectable $customer * @param CmsIndex $cmsIndex * @param CustomerAccountLogin $customerAccountLogin * @param CustomerAccountLogout $customerAccountLogout * @return void */ public function processAssert(CustomerAccountIndex $customerAccountIndex, WishlistIndex $wishlistIndex, InjectableFixture $product, CustomerInjectable $customer, CmsIndex $cmsIndex, CustomerAccountLogin $customerAccountLogin, CustomerAccountLogout $customerAccountLogout) { $productName = $product->getName(); $customerAccountLogout->open(); $cmsIndex->getLinksBlock()->openLink('Log In'); $customerAccountLogin->getLoginBlock()->login($customer); $customerAccountIndex->open()->getAccountMenuBlock()->openMenuItem("My Wish List"); \PHPUnit_Framework_Assert::assertFalse($wishlistIndex->getWishlistBlock()->getProductItemsBlock()->isProductPresent($productName), 'Product \'' . $productName . '\' is present in Wishlist on Frontend.'); }
/** * Constructor * * @constructor * @param Config $configuration * @param RepositoryFactory $repositoryFactory * @param FixtureFactory $fixtureFactory * @param HandlerFactory $handlerFactory * @param EventManagerInterface $eventManager * @param array $data * @param string $dataSet * @param bool $persist */ public function __construct(Config $configuration, RepositoryFactory $repositoryFactory, FixtureFactory $fixtureFactory, HandlerFactory $handlerFactory, EventManagerInterface $eventManager, array $data = [], $dataSet = '', $persist = false) { parent::__construct($configuration, $repositoryFactory, $fixtureFactory, $handlerFactory, $eventManager, $data, $dataSet, $persist); if (!isset($this->data['url_key']) && isset($this->data['name'])) { $this->data['url_key'] = trim(strtolower(preg_replace('#[^0-9a-z%]+#i', '-', $this->data['name'])), '-'); } }
/** * Create data array for filling tabs (new fixture specification) * * @param InjectableFixture $fixture * @return array */ private function getFixtureFieldsByTabs(InjectableFixture $fixture) { $tabs = []; $data = $fixture->getData(); foreach ($data as $field => $value) { $attributes = $fixture->getDataFieldConfig($field); $attributes['value'] = $value; if (array_key_exists('group', $attributes) && $attributes['group'] !== null) { $tabs[$attributes['group']][$field] = $attributes; } elseif (!array_key_exists('group', $attributes)) { $this->unassignedFields[$field] = $attributes; } } return $tabs; }