<?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="../../../../../src/Magento/FunctionalTestingFramework/Test/etc/testSchema.xsd">
    <test name="ParentExtendedTest">
        <annotations>
            <severity value="AVERAGE"/>
            <title value="ParentExtendedTest"/>
            <group value="Parent"/>
            <features value="Parent"/>
            <stories value="Parent"/>
        </annotations>
        <before>
            <amOnPage url="/beforeUrl" stepKey="beforeAmOnPageKey"/>
        </before>
        <after>
            <amOnPage url="/afterUrl" stepKey="afterAmOnPageKey"/>
        </after>
        <comment stepKey="basicCommentWithNoData" userInput="Parent Comment"/>
    </test>

    <test name="ChildExtendedTestReplace" extends="ParentExtendedTest">
        <annotations>
            <severity value="MINOR"/>
            <title value="ChildExtendedTestReplace"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <comment stepKey="basicCommentWithNoData" userInput="Different Input"/>
    </test>

    <test name="ChildExtendedTestReplaceHook" extends="ParentExtendedTest">
        <annotations>
            <severity value="MINOR"/>
            <title value="ChildExtendedTestReplaceHook"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <before>
            <amOnPage url="/slightlyDifferentBeforeUrl" stepKey="beforeAmOnPageKey"/>
        </before>
    </test>

    <test name="ChildExtendedTestMerging" extends="ParentExtendedTest">
        <annotations>
            <severity value="MINOR"/>
            <title value="ChildExtendedTestMerging"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <before>
            <amOnPage url="/firstUrl" stepKey="firstBeforeAmOnPageKey" before="beforeAmOnPageKey"/>
            <amOnPage url="/lastUrl" stepKey="lastBefore" after="beforeAmOnPageKey"/>
        </before>
        <comment stepKey="lastStepKey" userInput="Last Comment"/>
        <comment stepKey="beforeBasicCommentWithNoData" userInput="Before Comment" before="basicCommentWithNoData"/>
        <comment stepKey="afterBasicCommentWithNoData" userInput="After Comment" after="basicCommentWithNoData"/>
    </test>

    <test name="ChildExtendedTestRemoveAction" extends="ParentExtendedTest">
        <annotations>
            <severity value="CRITICAL"/>
            <title value="ChildExtendedTestRemoveAction"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <remove keyForRemoval="basicCommentWithNoData"/>
    </test>

    <test name="ParentExtendedTestNoHooks">
        <annotations>
            <severity value="AVERAGE"/>
            <title value="ParentExtendedTestNoHooks"/>
            <group value="Parent"/>
            <features value="Parent"/>
            <stories value="Parent"/>
        </annotations>
        <comment stepKey="basicCommentWithNoData" userInput="Parent Comment"/>
    </test>

    <test name="ChildExtendedTestAddHooks">
        <annotations>
            <severity value="AVERAGE"/>
            <title value="ChildExtendedTestAddHooks"/>
            <group value="Parent"/>
            <features value="Parent"/>
            <stories value="Parent"/>
        </annotations>
        <before>
            <amOnPage url="/beforeUrl" stepKey="beforeAmOnPageKey"/>
        </before>
        <after>
            <amOnPage url="/afterUrl" stepKey="afterAmOnPageKey"/>
        </after>
    </test>

    <test name="ChildExtendedTestRemoveHookAction" extends="ParentExtendedTest">
        <annotations>
            <severity value="CRITICAL"/>
            <title value="ChildExtendedTestRemoveHookAction"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <before>
            <remove keyForRemoval="beforeAmOnPageKey"/>
        </before>
    </test>
    <test name="ChildExtendedTestNoParent" extends="ThisTestDoesNotExist">
        <annotations>
            <severity value="CRITICAL"/>
            <title value="ChildExtendedTestNoParent"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <before>
            <remove keyForRemoval="beforeAmOnPageKey"/>
        </before>
    </test>
    <test name="SkippedParent">
        <annotations>
            <severity value="CRITICAL"/>
            <title value="PARENTSKIPPED"/>
            <group value="Parent"/>
            <features value="Parent"/>
            <stories value="Parent"/>
            <skip>
                <issueId value="NONE"/>
            </skip>
        </annotations>
        <before>
            <amOnPage url="/beforeUrl" stepKey="beforeAmOnPageKey"/>
        </before>
        <after>
            <amOnPage url="/afterUrl" stepKey="afterAmOnPageKey"/>
        </after>
        <comment userInput="text" stepKey="keepMe"/>
        <comment userInput="text" stepKey="replaceMe"/>
    </test>
    <test name="ExtendingSkippedTest" extends="SkippedParent">
        <annotations>
            <severity value="CRITICAL"/>
            <title value="ChildExtendedTestSkippedParent"/>
            <group value="Child"/>
            <features value="Child"/>
            <stories value="Child"/>
        </annotations>
        <comment userInput="child" stepKey="replaceMe"/>
    </test>

    <test name="ExtendedTestRelatedToSuiteParentTest">
        <annotations>
            <severity value="AVERAGE"/>
            <title value="ExtendedTestRelatedToSuiteParentTest"/>
            <group value="ExtendedTestRelatedToSuite"/>
            <features value="ExtendedTestRelatedToSuiteParentTest"/>
            <stories value="ExtendedTestRelatedToSuiteParentTest"/>
        </annotations>
        <before>
            <amOnPage url="/beforeUrl" stepKey="beforeAmOnPageKey"/>
        </before>
        <after>
            <amOnPage url="/afterUrl" stepKey="afterAmOnPageKey"/>
        </after>
        <comment stepKey="basicCommentWithNoData" userInput="Parent Comment"/>
        <amOnPage url="/url/in/parent" stepKey="amOnPageInParent"/>
    </test>

    <test name="ExtendedChildTestInSuite" extends="ExtendedTestRelatedToSuiteParentTest">
        <annotations>
            <severity value="MINOR"/>
            <title value="ExtendedChildTestInSuite"/>
            <group value="ExtendedTestInSuite"/>
            <features value="ExtendedChildTestInSuite"/>
            <stories value="ExtendedChildTestInSuite"/>
        </annotations>
        <comment stepKey="basicCommentWithNoData" userInput="Different Input"/>
        <remove keyForRemoval="amOnPageInParent"/>
    </test>
    <test name="ExtendedChildTestNotInSuite" extends="ExtendedTestRelatedToSuiteParentTest">
        <annotations>
            <severity value="MINOR"/>
            <title value="ExtendedChildTestNotInSuite"/>
            <features value="ExtendedChildTestNotInSuite"/>
            <stories value="ExtendedChildTestNotInSuite"/>
        </annotations>
        <comment stepKey="basicCommentWithNoData" userInput="Different Input"/>
        <remove keyForRemoval="amOnPageInParent"/>
    </test>
</tests>