From 106513f6d6bbc66c02c8b1d856bd0884c0651263 Mon Sep 17 00:00:00 2001 From: serhii balko Date: Fri, 25 Aug 2017 11:24:08 +0300 Subject: [PATCH] MAGETWO-56349: [GITHUB] Newsletter Queue doesn't set to local time #5943 #2937 #7560 --- .../Block/Adminhtml/Queue/Edit/QueueForm.xml | 4 ++ ...Save.php => AssertNewsletterQueueForm.php} | 11 ++-- .../AssertNewsletterQueueInGrid.php | 47 ++++++++++++++ .../AssertNewsletterQueueSaveMessage.php | 48 +++++++++++++++ .../Magento/Newsletter/Test/Fixture/Queue.xml | 5 +- .../Newsletter/Test/Fixture/Queue/Stores.php | 61 +++++++++++++++++++ .../Newsletter/Test/Repository/Queue.xml | 12 +++- .../Test/TestCase/UpdateQueueTest.xml | 6 +- 8 files changed, 182 insertions(+), 12 deletions(-) rename dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/{AssertNewsletterQueueSave.php => AssertNewsletterQueueForm.php} (76%) create mode 100644 dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueInGrid.php create mode 100644 dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSaveMessage.php create mode 100644 dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue/Stores.php diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Queue/Edit/QueueForm.xml b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Queue/Edit/QueueForm.xml index f18c53cb112e2..c1970955013e8 100644 --- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Queue/Edit/QueueForm.xml +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Queue/Edit/QueueForm.xml @@ -10,6 +10,10 @@ input[name='start_at'] + + select[name="stores[]"] + multiselectgrouplist + input[name='subject'] diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSave.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueForm.php similarity index 76% rename from dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSave.php rename to dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueForm.php index ccc273d0f4ebf..89df51175b069 100644 --- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSave.php +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueForm.php @@ -8,17 +8,16 @@ use Magento\Mtf\Constraint\AbstractAssertForm; use Magento\Newsletter\Test\Fixture\Queue; -use Magento\Newsletter\Test\Fixture\Template; use Magento\Newsletter\Test\Page\Adminhtml\TemplateQueue; use Magento\Newsletter\Test\Page\Adminhtml\TemplateQueueIndex; /** - * Assert that "Newsletter Queue" saved correctly. + * Assert that Newsletter Queue form data equal the fixture data. */ -class AssertNewsletterQueueSave extends AbstractAssertForm +class AssertNewsletterQueueForm extends AbstractAssertForm { /** - * Assert that "Newsletter Queue" saved correctly. + * Assert that Newsletter Queue form data equal the fixture data. * * @param TemplateQueueIndex $indexQueue * @param TemplateQueue $templateQueue @@ -30,7 +29,7 @@ public function processAssert( TemplateQueue $templateQueue, Queue $queue ) { - $indexQueue->getMessagesBlock()->assertSuccessMessage(); + $indexQueue->open(); $indexQueue->getQueueTemplateGrid()->searchAndOpen(['newsletter_subject' => $queue->getNewsletterSubject()]); $dataDiff = $this->verifyData($queue->getData(), $templateQueue->getEditForm()->getData($queue)); @@ -42,6 +41,6 @@ public function processAssert( */ public function toString() { - return '"Newsletter Queue" saved correctly'; + return 'Newsletter Queue form data equal the fixture data.'; } } diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueInGrid.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueInGrid.php new file mode 100644 index 0000000000000..35606db3e5202 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueInGrid.php @@ -0,0 +1,47 @@ +open(); + $filter = [ + 'newsletter_subject' => $queue->getNewsletterSubject(), + ]; + + \PHPUnit_Framework_Assert::assertTrue( + $indexQueue->getQueueTemplateGrid()->isRowVisible($filter), + 'Newsletter Queue \'' . $queue->getNewsletterSubject() . '\' is absent in grid.' + ); + } + + /** + * {@inheritdoc} + */ + public function toString() + { + return 'Newsletter Queue is present in grid.'; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSaveMessage.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSaveMessage.php new file mode 100644 index 0000000000000..4e240d6edd0c1 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueueSaveMessage.php @@ -0,0 +1,48 @@ +getMessagesBlock()->getSuccessMessages(); + \PHPUnit_Framework_Assert::assertContains( + self::SUCCESS_MESSAGE, + $actualMessages, + 'Wrong success message is displayed.' + . "\nExpected: " . self::SUCCESS_MESSAGE + . "\nActual:\n" . implode("\n - ", $actualMessages) + ); + } + + /** + * {@inheritdoc} + */ + public function toString() + { + return 'Newsletter Queue success save message is present.'; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue.xml b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue.xml index 1cd11177df0cd..7e723e678e1ae 100644 --- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue.xml +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue.xml @@ -24,7 +24,8 @@ - - + + + diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue/Stores.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue/Stores.php new file mode 100644 index 0000000000000..c0d9e6f1e7e73 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Queue/Stores.php @@ -0,0 +1,61 @@ +params = $params; + if (isset($data['dataset'])) { + $datasets = is_array($data['dataset']) ? $data['dataset'] : [$data['dataset']]; + foreach ($datasets as $dataset) { + /** @var \Magento\Store\Test\Fixture\Store $store */ + $store = $fixtureFactory->createByCode('store', ['dataset' => $dataset]); + if (!$store->hasData('store_id')) { + $store->persist(); + } + $this->stores[] = $store; + $this->data[] = $store->getGroupId() . '/' . $store->getName(); + } + } + } + + /** + * Return stores. + * + * @return array + */ + public function getStores() + { + return $this->stores; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Queue.xml b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Queue.xml index 2cbcc2de63269..eac5caac897ff 100644 --- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Queue.xml +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Queue.xml @@ -7,8 +7,16 @@ --> - - Aug 17, 2017 2:50:30 PM + + + M j, Y g:i:s A + + + + default + custom + + Newsletter Subject %isolation% Sender Name %isolation% support%isolation%@example.com diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateQueueTest.xml b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateQueueTest.xml index 938078551c1cf..02bc8aa7c1c04 100644 --- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateQueueTest.xml +++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateQueueTest.xml @@ -9,8 +9,10 @@ default - default - + default_with_stores + + +