diff --git a/app/code/Magento/Newsletter/Test/Mftf/ActionGroup/StorefrontCreateNewSubscriberActionGroup.xml b/app/code/Magento/Newsletter/Test/Mftf/ActionGroup/StorefrontCreateNewSubscriberActionGroup.xml index 0aee2cb9b2e3..482ecec58355 100644 --- a/app/code/Magento/Newsletter/Test/Mftf/ActionGroup/StorefrontCreateNewSubscriberActionGroup.xml +++ b/app/code/Magento/Newsletter/Test/Mftf/ActionGroup/StorefrontCreateNewSubscriberActionGroup.xml @@ -8,7 +8,8 @@ - + + + + + + + + + + + + + diff --git a/app/code/Magento/Newsletter/Test/Mftf/Section/NewsletterTemplateSection/BasicFrontendNewsletterFormSection.xml b/app/code/Magento/Newsletter/Test/Mftf/Section/NewsletterTemplateSection/BasicFrontendNewsletterFormSection.xml index 8475fb4d55b9..f4c685e730be 100644 --- a/app/code/Magento/Newsletter/Test/Mftf/Section/NewsletterTemplateSection/BasicFrontendNewsletterFormSection.xml +++ b/app/code/Magento/Newsletter/Test/Mftf/Section/NewsletterTemplateSection/BasicFrontendNewsletterFormSection.xml @@ -8,8 +8,8 @@
- - + +
diff --git a/app/code/Magento/Newsletter/Test/Mftf/Test/StorefrontNewsletterGuestSubscriptionWithDisallowedOptionTest.xml b/app/code/Magento/Newsletter/Test/Mftf/Test/StorefrontNewsletterGuestSubscriptionWithDisallowedOptionTest.xml new file mode 100644 index 000000000000..8d6e707930bb --- /dev/null +++ b/app/code/Magento/Newsletter/Test/Mftf/Test/StorefrontNewsletterGuestSubscriptionWithDisallowedOptionTest.xml @@ -0,0 +1,39 @@ + + + + + + + + + + <description value="Guest cannot subscribe to Newsletter if it is disallowed in configurations"/> + <group value="newsletter"/> + <group value="configuration"/> + <testCaseId value="MC-35728"/> + </annotations> + <before> + <magentoCLI stepKey="disableGuestSubscription" command="config:set newsletter/subscription/allow_guest_subscribe 0"/> + <magentoCLI command="cache:clean config" stepKey="cleanCache"/> + </before> + <after> + <magentoCLI stepKey="allowGuestSubscription" command="config:set newsletter/subscription/allow_guest_subscribe 1"/> + <magentoCLI command="cache:clean config" stepKey="cacheClean"/> + </after> + + <actionGroup ref="StorefrontOpenHomePageActionGroup" stepKey="openStorefrontPage"/> + <actionGroup ref="StorefrontCreateNewsletterSubscriberActionGroup" stepKey="createSubscription"> + <argument name="email" value="{{_defaultNewsletter.senderEmail}}"/> + </actionGroup> + <actionGroup ref="StorefrontAssertErrorMessageActionGroup" stepKey="assertMessage"> + <argument name="message" value="Sorry, but the administrator denied subscription for guests. Please register."/> + <argument name="messageType" value="error"/> + </actionGroup> + </test> +</tests> diff --git a/app/code/Magento/Newsletter/Test/Mftf/Test/VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest.xml b/app/code/Magento/Newsletter/Test/Mftf/Test/VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest.xml index cffce8da1d71..42df2061e435 100644 --- a/app/code/Magento/Newsletter/Test/Mftf/Test/VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest.xml +++ b/app/code/Magento/Newsletter/Test/Mftf/Test/VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest.xml @@ -8,7 +8,8 @@ <tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd"> - <test name="VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest"> + <test name="VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest" deprecated="Use StorefrontNewsletterGuestSubscriptionWithDisallowedOptionTest"> + <!-- Deprecated Due to inconsistency with the best practices --> <annotations> <features value="Newsletter"/> <stories value="Configure guest newsletter subscription to 'No'"/> diff --git a/app/code/Magento/Ui/Test/Mftf/ActionGroup/StorefrontAssertErrorMessageActionGroup.xml b/app/code/Magento/Ui/Test/Mftf/ActionGroup/StorefrontAssertErrorMessageActionGroup.xml new file mode 100644 index 000000000000..fa9b7c377e32 --- /dev/null +++ b/app/code/Magento/Ui/Test/Mftf/ActionGroup/StorefrontAssertErrorMessageActionGroup.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + /** + * Copyright © Magento, Inc. All rights reserved. + * See COPYING.txt for license details. + */ +--> + +<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd"> + <actionGroup name="StorefrontAssertErrorMessageActionGroup"> + <arguments> + <argument name="message" type="string"/> + <argument name="messageType" type="string" defaultValue="success"/> + </arguments> + + <see userInput="{{message}}" selector="{{StorefrontMessagesSection.messageByType(messageType)}}" stepKey="verifyMessage"/> + </actionGroup> +</actionGroups> diff --git a/app/code/Magento/Ui/Test/Mftf/Section/StorefrontMessagesSection.xml b/app/code/Magento/Ui/Test/Mftf/Section/StorefrontMessagesSection.xml index c58479a7b73e..f46e25a83213 100644 --- a/app/code/Magento/Ui/Test/Mftf/Section/StorefrontMessagesSection.xml +++ b/app/code/Magento/Ui/Test/Mftf/Section/StorefrontMessagesSection.xml @@ -12,5 +12,6 @@ <element name="success" type="text" selector="div.message-success.success.message"/> <element name="error" type="text" selector="div.message-error.error.message"/> <element name="noticeMessage" type="text" selector="div.message.notice div"/> + <element name="messageByType" type="text" selector=".messages .message-{{messageType}}" parameterized="true" /> </section> </sections>