<?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="ValidateAdvancedConfigurationWithAllUpdatedNotVisibleActionGroup">
        <annotations>
            <description value="Validates Advanced configuration was not set"/>
        </annotations>
        <arguments>
            <argument name="page" defaultValue=""/>
            <argument name="border" defaultValue="PageBuilderAdvancedBorderPropertyNone"/>
            <argument name="borderRadius" defaultValue="PageBuilderAdvancedBorderRadiusProperty0"/>
            <argument name="borderWidth" defaultValue="PageBuilderAdvancedBorderWidthProperty0"/>
            <argument name="defaultAlignment" defaultValue="PageBuilderAdvancedAlignmentPropertyStart"/>
            <argument name="defaultMargin" defaultValue="0" type="string"/>
            <argument name="defaultPadding" defaultValue="0" type="string"/>
            <argument name="cssClasses" defaultValue=""/>
            <argument name="index" defaultValue="1" type="string"/>
        </arguments>
        <waitForElement selector="{{page.base(index)}}" stepKey="waitForElement"/>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).textAlign" stepKey="grabAlignmentValue"/>
        <assertEquals stepKey="assertDefaultAlignmentVisible">
            <expectedResult type="string">{{defaultAlignment.value}}</expectedResult>
            <actualResult type="variable">grabAlignmentValue</actualResult>
        </assertEquals>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).borderStyle" stepKey="grabBorderStyleValue"/>
        <assertEquals stepKey="assertNoBorderStyle">
            <expectedResult type="string">{{border.value}}</expectedResult>
            <actualResult type="variable">grabBorderStyleValue</actualResult>
        </assertEquals>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).borderColor" stepKey="grabBorderColorValue"/>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).color" stepKey="grabColorValue"/>
        <assertEquals stepKey="assertNoBorderColor">
            <expectedResult type="variable">grabBorderColorValue</expectedResult>
            <actualResult type="variable">grabColorValue</actualResult>
        </assertEquals>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).borderWidth.replace(&quot;px&quot;, &quot;&quot;)" stepKey="grabBorderWidthValue"/>
        <assertEquals stepKey="assertNoBorderWidth">
            <expectedResult type="string">{{borderWidth.value}}</expectedResult>
            <actualResult type="variable">grabBorderWidthValue</actualResult>
        </assertEquals>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).borderRadius.replace(&quot;px&quot;, &quot;&quot;)" stepKey="grabBorderRadiusValue"/>
        <assertEquals stepKey="assertNoBorderRadius">
            <expectedResult type="string">{{borderRadius.value}}</expectedResult>
            <actualResult type="variable">grabBorderRadiusValue</actualResult>
        </assertEquals>
        <waitForElement selector="{{page.cssClasses(index, cssClasses.value)}}" stepKey="waitForCSSClasses"/>
        <dontSeeElement selector="{{page.cssClasses(index, cssClasses.value)}}" stepKey="dontSeeCSSClasses"/>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).margin.replace(/px/g, &quot;&quot;)" stepKey="grabMarginValue"/>
        <assertEquals stepKey="assertNoMarginVisible">
            <expectedResult type="string">{{defaultMargin}}</expectedResult>
            <actualResult type="variable">grabMarginValue</actualResult>
        </assertEquals>
        <executeJS function="return window.getComputedStyle(document.evaluate('{{page.advancedConfigurationPath(index)}}', document.body).iterateNext()).padding.replace(/px/g, &quot;&quot;)" stepKey="grabPaddingValue"/>
        <assertEquals stepKey="assertNoPaddingVisible">
            <expectedResult type="string">{{defaultPadding}}</expectedResult>
            <actualResult type="variable">grabPaddingValue</actualResult>
        </assertEquals>
    </actionGroup>
</actionGroups>
