Skip to content

Commit

Permalink
Merge pull request #3161 from magento-epam/EPAM-PR-7-8-10
Browse files Browse the repository at this point in the history
EPAM PRs 7, 8, 10. Pangolins MFTF version bump.
  • Loading branch information
rganin authored Sep 14, 2018
2 parents 7411604 + ef3188a commit b647e9e
Show file tree
Hide file tree
Showing 54 changed files with 1,788 additions and 279 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?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/testSchema.xsd">
<actionGroup name="StorefrontFillCartDataActionGroup">
<arguments>
<argument name="cartData" defaultValue="PaymentAndShippingInfo"/>
</arguments>
<switchToIFrame selector="{{BraintreeConfigurationPaymentSection.cartFrame}}" stepKey="switchToIframe"/>
<fillField selector="{{BraintreeConfigurationPaymentSection.cartCode}}" userInput="{{cartData.cardNumber}}" stepKey="setCartCode"/>
<switchToIFrame stepKey="switchBack"/>
<switchToIFrame selector="{{BraintreeConfigurationPaymentSection.monthFrame}}" stepKey="switchToIframe1"/>
<fillField selector="{{BraintreeConfigurationPaymentSection.month}}" userInput="{{cartData.month}}" stepKey="setMonth"/>
<switchToIFrame stepKey="switchBack1"/>
<switchToIFrame selector="{{BraintreeConfigurationPaymentSection.yearFrame}}" stepKey="switchToIframe2"/>
<fillField selector="{{BraintreeConfigurationPaymentSection.year}}" userInput="{{cartData.year}}" stepKey="setYear"/>
<switchToIFrame stepKey="switchBack2"/>
<switchToIFrame selector="{{BraintreeConfigurationPaymentSection.codeFrame}}" stepKey="switchToIframe3"/>
<fillField selector="{{BraintreeConfigurationPaymentSection.verificationNumber}}" userInput="{{cartData.cvv}}" stepKey="setVerificationNumber"/>
<switchToIFrame stepKey="SwitchBackToWindow"/>

</actionGroup>

</actionGroups>
49 changes: 49 additions & 0 deletions app/code/Magento/Braintree/Test/Mftf/Data/BraintreeData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,33 @@
<data key="value">somePrivateKey</data>
</entity>

<entity name="BraintreeConfig" type="braintree_config_state">
<requiredEntity type="title">BraintreeTitle</requiredEntity>
<requiredEntity type="payment_action">PaymentAction</requiredEntity>
<requiredEntity type="environment">Environment</requiredEntity>
<requiredEntity type="merchant_id">MerchantId</requiredEntity>
<requiredEntity type="public_key">PublicKey</requiredEntity>
<requiredEntity type="private_key">PrivateKey</requiredEntity>
</entity>
<entity name="BraintreeTitle" type="title">
<data key="value">Credit Card (Braintree)</data>
</entity>
<entity name="PaymentAction" type="payment_action">
<data key="value">authorize</data>
</entity>
<entity name="Environment" type="environment">
<data key="value">sandbox</data>
</entity>
<entity name="MerchantId" type="merchant_id">
<data key="value">d4pdjhxgjfrsmzbf</data>
</entity>
<entity name="PublicKey" type="public_key">
<data key="value">m7q4wmh43xrgyrst</data>
</entity>
<entity name="PrivateKey" type="private_key">
<data key="value">67de364080b1b4e2492d7a3de413a572</data>
</entity>

<!-- default configuration used to restore Magento config -->
<entity name="DefaultBraintreeConfig" type="braintree_config_state">
<requiredEntity type="title">DefaultTitle</requiredEntity>
Expand Down Expand Up @@ -63,6 +90,28 @@
<data key="value"/>
</entity>

<entity name="CustomBraintreeConfigurationData" type="custom_braintree_config_state">
<requiredEntity type="braintree_cc_vault_active">BraintreeValuteActive</requiredEntity>
<requiredEntity type="active">EnableSolution</requiredEntity>
</entity>
<entity name="BraintreeValuteActive" type="braintree_cc_vault_active">
<data key="value">1</data>
</entity>
<entity name="EnableSolution" type="active">
<data key="value">1</data>
</entity>

<entity name="RollBackCustomBraintreeConfigurationData" type="custom_braintree_config_state">
<requiredEntity type="braintree_cc_vault_active">DefaultBraintreeValuteActive</requiredEntity>
<requiredEntity type="active">DefaultEnableSolution</requiredEntity>
</entity>
<entity name="DefaultBraintreeValuteActive" type="braintree_cc_vault_active">
<data key="value">0</data>
</entity>
<entity name="DefaultEnableSolution" type="active">
<data key="value">0</data>
</entity>

<entity name="testData" type="data">
<data key="websiteName" unique="suffix">Website</data>
<data key="websiteCode" unique="suffix">new_website</data>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,22 @@
</object>
</object>
</operation>
<operation name="CustomBraintreeConfigState" dataType="custom_braintree_config_state" type="create" auth="adminFormKey" url="/admin/system_config/save/section/payment/" method="POST">
<object key="groups" dataType="custom_braintree_config_state">
<object key="braintree_section" dataType="custom_braintree_config_state">
<object key="groups" dataType="custom_braintree_config_state">
<object key="braintree" dataType="custom_braintree_config_state">
<object key="fields" dataType="custom_braintree_config_state">
<object key="braintree_cc_vault_active" dataType="braintree_cc_vault_active">
<field key="value">integer</field>
</object>
<object key="active" dataType="active">
<field key="value">string</field>
</object>
</object>
</object>
</object>
</object>
</object>
</operation>
</operations>
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->

<sections xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
<section name="BraintreeConfigurationPaymentSection">
<element name="creditCart" type="radio" selector="#braintree"/>
<element name="paymentMethod" type="radio" selector="//div[@class='payment-group']//input[contains(@id, 'braintree_cc_vault_')]"/>
<element name="cartFrame" type="iframe" selector="braintree-hosted-field-number"/>
<element name="monthFrame" type="iframe" selector="braintree-hosted-field-expirationMonth"/>
<element name="yearFrame" type="iframe" selector="braintree-hosted-field-expirationYear"/>
<element name="codeFrame" type="iframe" selector="braintree-hosted-field-cvv"/>
<element name="cartCode" type="input" selector="#credit-card-number"/>
<element name="month" type="input" selector="#expiration-month"/>
<element name="year" type="input" selector="#expiration-year"/>
<element name="verificationNumber" type="input" selector="#cvv"/>
</section>
</sections>
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->

<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
<test name="BraintreeCreditCardOnCheckoutTest">
<annotations>
<features value="Braintree"/>
<stories value="MAGETWO-91624 - Braintree saved cards use billing address the same as shipping"/>
<title value="Use saved for Braintree credit card on checkout with selecting billing address"/>
<description value="Use saved for Braintree credit card on checkout with selecting billing address"/>
<severity value="MAJOR"/>
<testCaseId value="MAGETWO-93767"/>
<group value="braintree"/>
</annotations>

<before>
<createData entity="_defaultCategory" stepKey="category"/>
<createData entity="SimpleProduct" stepKey="product">
<requiredEntity createDataKey="category"/>
</createData>
<createData entity="Simple_US_Customer" stepKey="customer"/>
<createData entity="BraintreeConfig" stepKey="BraintreeConfigurationData"/>
<createData entity="CustomBraintreeConfigurationData" stepKey="CustomBraintreeConfigurationData"/>
</before>

<after>
<deleteData createDataKey="product" stepKey="deleteProduct1"/>
<deleteData createDataKey="customer" stepKey="deleteCustomer"/>
<deleteData createDataKey="category" stepKey="deleteCategory"/>
<createData entity="DefaultBraintreeConfig" stepKey="DefaultBraintreeConfig"/>
<createData entity="RollBackCustomBraintreeConfigurationData" stepKey="RollBackCustomBraintreeConfigurationData"/>
<actionGroup ref="StorefrontSignOutActionGroup" stepKey="StorefrontSignOutActionGroup"/>
</after>
<!--Go to storefront-->
<amOnPage url="" stepKey="DoToStorefront"/>
<!--Create account-->
<actionGroup ref="SignUpNewUserFromStorefrontActionGroup" stepKey="SignUpNewUserFromStorefrontActionGroup">
<argument name="Customer" value="Simple_US_Customer"/>
</actionGroup>

<!--Add product to cart-->
<amOnPage url="$$product.sku$$.html" stepKey="goToProductPage"/>
<waitForPageLoad stepKey="waitForPageLoad"/>
<click selector="{{StorefrontProductActionSection.addToCart}}" stepKey="addProductToCart"/>
<waitForPageLoad stepKey="waitForPageLoad1"/>
<!--Proceed to checkout-->
<actionGroup ref="GoToCheckoutFromMinicartActionGroup" stepKey="GoToCheckoutFromMinicartActionGroup"/>

<actionGroup ref="LoggedInCheckoutFillNewBillingAddressActionGroup" stepKey="LoggedInCheckoutFillNewBillingAddressActionGroup">
<argument name="Address" value="US_Address_CA"/>
</actionGroup>
<waitForPageLoad stepKey="waitForPageLoad2"/>
<click selector="{{CheckoutShippingSection.next}}" stepKey="clickNext"/>
<waitForElement selector="{{CheckoutPaymentSection.paymentSectionTitle}}" time="30" stepKey="waitForPaymentSectionLoaded"/>
<!--Fill cart data-->
<click selector="{{BraintreeConfigurationPaymentSection.creditCart}}" stepKey="SelectBraintreePaymentMethod"/>
<waitForPageLoad stepKey="waitForPageLoad3"/>
<actionGroup ref="StorefrontFillCartDataActionGroup" stepKey="StorefrontFillCartDataActionGroup"/>
<waitForPageLoad stepKey="waitForPageLoad4"/>
<!--Place order-->
<click selector="{{CheckoutPaymentSection.placeOrder}}" stepKey="PlaceOrder"/>
<waitForPageLoad stepKey="waitForPageLoad5"/>

<!--Add product to cart again-->
<amOnPage url="$$product.sku$$.html" stepKey="goToProductPage1"/>
<waitForPageLoad stepKey="waitForPageLoad6"/>
<click selector="{{StorefrontProductActionSection.addToCart}}" stepKey="addProductToCart1"/>
<waitForPageLoad stepKey="waitForPageLoad7"/>
<!--Proceed to checkout-->
<actionGroup ref="GoToCheckoutFromMinicartActionGroup" stepKey="GoToCheckoutFromMinicartActionGroup1"/>
<click selector="{{CheckoutPaymentSection.addressAction('New Address')}}" stepKey="clickOnNewAddress"/>
<waitForPageLoad stepKey="waitForPageLoad8"/>
<actionGroup ref="LoggedInCheckoutFillNewBillingAddressActionGroup" stepKey="LoggedInCheckoutFillNewBillingAddressActionGroup1">
<argument name="Address" value="US_Address_NY"/>
</actionGroup>
<click selector="{{CheckoutPaymentSection.addressAction('Save Address')}}" stepKey="SaveAddress"/>
<waitForPageLoad stepKey="waitForPageLoad9"/>
<click selector="{{CheckoutShippingSection.next}}" stepKey="clickNext1"/>
<waitForPageLoad stepKey="waitForPageLoad10"/>
<click selector="{{BraintreeConfigurationPaymentSection.paymentMethod}}" stepKey="SelectBraintreePaymentMethod1"/>
<waitForPageLoad stepKey="waitForPageLoad11"/>
<click selector="{{CheckoutPaymentSection.shippingAndBillingAddressSame}}" stepKey="UncheckCheckBox"/>

<click selector="{{CheckoutShippingSection.updateAddress}}" stepKey="clickToUpdate"/>
<waitForPageLoad stepKey="waitForPageLoad12"/>
<!--Place order-->
<click selector="{{CheckoutPaymentSection.placeOrder}}" stepKey="PlaceOrder1"/>
<waitForPageLoad stepKey="waitForPageLoad13"/>

<click selector="{{CheckoutOrderSummarySection.orderNumber}}" stepKey="ClickOnOrderNumber"/>
<waitForPageLoad stepKey="waitForPageLoad14"/>
<!--Check billing and shipping addresses also additional Address info-->
<click selector="{{CheckoutPaymentSection.addressBook}}" stepKey="goToAddressBook"/>
<grabTextFrom selector="{{CheckoutOrderSummarySection.shippingAddress}}" stepKey="shippingAddr"/>
<grabTextFrom selector="{{CheckoutOrderSummarySection.billingAddress}}" stepKey="billingAddr"/>
<grabTextFrom selector="{{CheckoutOrderSummarySection.additionalAddress}}" stepKey="additionalAddress"/>
<see userInput="Shipping Address" stepKey="seeShippingAddress"/>
<see userInput="Billing Address" stepKey="seeBillingAddress"/>
<assertEquals stepKey="assertValuesAreEqual" actual="$billingAddr" expected="$shippingAddr"/>
<assertNotEquals stepKey="assertValuesAreNotEqual" actual="$billingAddr" expected="$additionalAddress"/>
</test>
</tests>
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@
<item name="braintree_paypal" xsi:type="array">
<item name="isBillingAddressRequired" xsi:type="boolean">false</item>
</item>
<item name="braintree_cc_vault" xsi:type="array">
<item name="isBillingAddressRequired" xsi:type="boolean">true</item>
</item>
</item>
</item>
</item>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,13 +151,7 @@ protected function _construct()
*/
public function _afterLoad()
{
parent::_afterLoad();
if ($this->getStoreId() && $this->_items) {
foreach ($this->_items as $item) {
$item->setStoreId($this->getStoreId());
}
}
return $this;
return parent::_afterLoad();
}

/**
Expand Down Expand Up @@ -356,7 +350,10 @@ public function addPriceFilter($product, $searchMin, $useRegularPrice = false)
}

/**
* Get Catalog Rule Processor.
*
* @return \Magento\CatalogRule\Model\ResourceModel\Product\CollectionProcessor
*
* @deprecated 100.2.0
*/
private function getCatalogRuleProcessor()
Expand Down
Loading

0 comments on commit b647e9e

Please sign in to comment.