<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
   <extension
         point="org.eclipse.ui.editors">
      <editor
            class="org.eclipse.ease.lang.unittest.ui.editor.TestSuiteEditor"
            contributorClass="org.eclipse.ease.lang.unittest.ui.editor.TestSuiteEditorActionBarContributor"
            default="true"
            extensions="suite"
            filenames="*.suite"
            icon="icons/eobj16/testsuite.png"
            id="org.eclipse.ease.editor.suiteEditor"
            name="Test Suite Editor">
         <contentTypeBinding
               contentTypeId="org.eclipse.ease.lang.unittest.ui.content.testsuite">
         </contentTypeBinding>
      </editor>
   </extension>
   <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            base-type="org.eclipse.core.runtime.xml"
            file-extensions="suite"
            id="org.eclipse.ease.lang.unittest.ui.content.testsuite"
            name="Test Suite Configuration"
            priority="normal">
      </content-type>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="false"
            locationURI="toolbar:org.eclipse.ease.editor.suiteEditor">
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.runTestSuite"
               icon="icons/elcl16/run_suite.png"
               style="push">
         </command>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.debugTestSuite"
               icon="icons/elcl16/debug_suite.png"
               style="push">
         </command>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.ease.editor.suiteEditor.variables">
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.addFolderForVariables"
               icon="platform:/plugin/org.eclipse.ui.ide/icons/full/etool16/newfolder_wiz.png"
               label="Add Folder"
               style="push">
            <visibleWhen
                  checkEnabled="true">
               <with
                     variable="activeMenuSelection">
                  <or>
                     <count
                           value="0">
                     </count>
                     <count
                           value="1">
                     </count>
                  </or>
               </with>
            </visibleWhen>
         </command>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.addVariable"
               icon="icons/etool16/new_variable.png"
               label="Add Variable"
               style="push">
            <visibleWhen
                  checkEnabled="true">
               <with
                     variable="activeMenuSelection">
                  <or>
                     <count
                           value="0">
                     </count>
                     <count
                           value="1">
                     </count>
                  </or>
               </with>
            </visibleWhen>
         </command>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.remove"
               icon="platform:/plugin/org.eclipse.ui/icons/full/obj16/delete_obj.png"
               label="Remove"
               style="push">
            <visibleWhen
                  checkEnabled="true">
               <with
                     variable="activeMenuSelection">
                  <count
                        value="+">
                  </count>
               </with>
            </visibleWhen>
         </command>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="toolbar:org.eclipse.ease.views.unittest">
         <command
               commandId="org.eclipse.ui.navigate.collapseAll"
               style="push">
         </command>
         <command
               commandId="org.eclipse.ui.navigate.expandAll"
               style="push">
         </command>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.toggleTestFilter"
               icon="icons/elcl16/toggle_failures.png"
               style="toggle">
         </command>
         <separator
               name="org.eclipse.ease.lang.unittest.ui.separator1"
               visible="true">
         </separator>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.runAllTests"
               icon="icons/elcl16/run_all_tests.png"
               style="push"
               tooltip="Run this Test Suite">
         </command>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.runFailedTests"
               icon="icons/elcl16/run_failed_tests.png"
               style="push"
               tooltip="Run tests with failures/errors">
         </command>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.terminateTestSuite"
               icon="platform:/plugin/org.eclipse.ui/icons/full/elcl16/stop.png"
               style="push"
               tooltip="Stops the running testbench.">
         </command>
         <separator
               name="org.eclipse.ease.lang.unittest.ui.separator2"
               visible="true">
         </separator>
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.createReport"
               icon="icons/elcl16/create_report.png"
               style="push"
               tooltip="Create a test report">
         </command>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.ease.views.unittest">
         <command
               commandId="org.eclipse.ease.lang.unittest.ui.commands.runSelectedTests"
               icon="icons/elcl16/run_all_tests.png"
               label="Run"
               style="push">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="selection">
                  <iterate
                        ifEmpty="false"
                        operator="and">
                     <or>
                        <instanceof
                              value="org.eclipse.ease.lang.unittest.runtime.ITestFile">
                        </instanceof>
                        <instanceof
                              value="org.eclipse.ease.lang.unittest.runtime.ITestSuite">
                        </instanceof>
                     </or>
                  </iterate>
               </with>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.ease.lang.unittest.ui.handlers.RunAllTests"
            commandId="org.eclipse.ease.lang.unittest.ui.commands.runAllTests">
         <enabledWhen>
            <with
                  variable="org.eclipse.ease.lang.unittest.ui.testsuite">
               <and>
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.ease.lang.unittest.ui.testsuite.exists">
                  </test>
                  <not>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.ease.lang.unittest.ui.testsuite.status"
                           value="RUNNING">
                     </test>
                  </not>
               </and>
            </with>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.ease.lang.unittest.ui.handlers.RunFailedTests"
            commandId="org.eclipse.ease.lang.unittest.ui.commands.runFailedTests">
         <enabledWhen>
            <with
                  variable="org.eclipse.ease.lang.unittest.ui.testsuite">
               <and>
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.ease.lang.unittest.ui.testsuite.exists">
                  </test>
                  <or>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.ease.lang.unittest.ui.testsuite.status"
                           value="FAILURE">
                     </test>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.ease.lang.unittest.ui.testsuite.status"
                           value="ERROR">
                     </test>
                  </or>
               </and>
            </with>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.ease.lang.unittest.ui.handlers.RunSelectedTests"
            commandId="org.eclipse.ease.lang.unittest.ui.commands.runSelectedTests">
         <enabledWhen>
            <with
                  variable="org.eclipse.ease.lang.unittest.ui.testsuite">
               <and>
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.ease.lang.unittest.ui.testsuite.exists">
                  </test>
                  <not>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.ease.lang.unittest.ui.testsuite.status"
                           value="RUNNING">
                     </test>
                  </not>
               </and>
            </with>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.ease.lang.unittest.ui.handlers.TerminateTestSuite"
            commandId="org.eclipse.ease.lang.unittest.ui.commands.terminateTestSuite">
         <enabledWhen>
            <with
                  variable="org.eclipse.ease.lang.unittest.ui.testsuite">
               <and>
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.ease.lang.unittest.ui.testsuite.exists">
                  </test>
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.ease.lang.unittest.ui.testsuite.status"
                        value="RUNNING">
                  </test>
               </and>
            </with>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.ease.lang.unittest.ui.handlers.CreateReport"
            commandId="org.eclipse.ease.lang.unittest.ui.commands.createReport">
         <enabledWhen>
            <with
                  variable="org.eclipse.ease.lang.unittest.ui.testsuite">
               <and>
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.ease.lang.unittest.ui.testsuite.exists">
                  </test>
                  <not>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.ease.lang.unittest.ui.testsuite.status"
                           value="RUNNING">
                     </test>
                  </not>
               </and>
            </with>
         </enabledWhen>
      </handler>
   </extension>
   <extension
         point="org.eclipse.ui.commands">
      <category
            id="org.eclipse.ease.lang.unittest.ui.category.unittest"
            name="Unit Test">
      </category>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            defaultHandler="org.eclipse.ease.lang.unittest.ui.handlers.RunTestSuiteFromEditor"
            description="Run this Test Suite"
            id="org.eclipse.ease.lang.unittest.ui.commands.runTestSuite"
            name="Run Test Suite">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            defaultHandler="org.eclipse.ease.lang.unittest.ui.handlers.DebugTestSuiteFromEditor"
            description="Debug this Test Suite"
            id="org.eclipse.ease.lang.unittest.ui.commands.debugTestSuite"
            name="Debug Test Suite">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            description="Run all tests"
            id="org.eclipse.ease.lang.unittest.ui.commands.runAllTests"
            name="Run All Tests">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            defaultHandler="org.eclipse.ease.lang.unittest.ui.handlers.AddFolderForVariablesHandler"
            description="Add a new folder"
            id="org.eclipse.ease.lang.unittest.ui.commands.addFolderForVariables"
            name="Add Folder">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            defaultHandler="org.eclipse.ease.lang.unittest.ui.handlers.AddVariableHandler"
            description="Add a new variable"
            id="org.eclipse.ease.lang.unittest.ui.commands.addVariable"
            name="Add Variable">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            defaultHandler="org.eclipse.ease.lang.unittest.ui.handlers.RemoveVariableOrFolderHandler"
            description="Removes the selected element"
            id="org.eclipse.ease.lang.unittest.ui.commands.remove"
            name="Remove">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            description="Stop the running Test Suite"
            id="org.eclipse.ease.lang.unittest.ui.commands.terminateTestSuite"
            name="Stop Test Suite">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            defaultHandler="org.eclipse.ease.lang.unittest.ui.handlers.ToggleTestFilter"
            description="Enable/disable filtering of valid tests"
            id="org.eclipse.ease.lang.unittest.ui.commands.toggleTestFilter"
            name="Toggle Valid Tests Filter">
         <state
               class="org.eclipse.jface.commands.ToggleState"
               id="STYLE">
         </state>
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            description="Run failed tests"
            id="org.eclipse.ease.lang.unittest.ui.commands.runFailedTests"
            name="Run Failed Tests">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            id="org.eclipse.ease.lang.unittest.ui.commands.createReport"
            name="Create Report">
      </command>
      <command
            categoryId="org.eclipse.ease.lang.unittest.ui.category.unittest"
            description="Run selected tests"
            id="org.eclipse.ease.lang.unittest.ui.commands.runSelectedTests"
            name="Run Selected Tests">
      </command>
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <view
            category="org.eclipse.ease.ui.views.category.scripting"
            class="org.eclipse.ease.lang.unittest.ui.views.UnitTestView"
            icon="icons/eview16/unit_test.png"
            id="org.eclipse.ease.views.unittest"
            name="Script Unittest"
            restorable="true">
      </view>
   </extension>
   <extension
         point="org.eclipse.ease.language">
      <launchExtension
            class="org.eclipse.ease.lang.unittest.ui.views.UIAttachment"
            engineID="org.eclipse.ease.lang.unittest.engine">
      </launchExtension>
   </extension>
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="org.eclipse.ease.ui.perspectives.ScriptingPerspective">
         <view
               id="org.eclipse.ease.views.unittest"
               minimized="false"
               relationship="stack"
               relative="org.eclipse.ui.navigator.ProjectExplorer"
               visible="false">
         </view>
         <newWizardShortcut
               id="org.eclipse.ease.lang.unittest.ui.wizard.newTestSuiteWizard">
         </newWizardShortcut>
      </perspectiveExtension>
   </extension>
   <extension
         point="org.eclipse.ui.newWizards">
      <wizard
            category="org.eclipse.ease.newWizard.category"
            class="org.eclipse.ease.lang.unittest.ui.wizards.TestSuiteWizard"
            icon="icons/eobj16/testsuite.png"
            id="org.eclipse.ease.lang.unittest.ui.wizard.newTestSuiteWizard"
            name="Script Testsuite">
      </wizard>
   </extension>
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            class="org.eclipse.ease.lang.unittest.ui.decorators.TestStatusDecorator"
            id="org.eclipse.ease.lang.unittest.ui.testDecorator"
            label="Script Unittest Status"
            lightweight="true"
            state="true">
         <enablement>
            <objectClass
                  name="org.eclipse.ease.lang.unittest.runtime.ITestContainer">
            </objectClass>
         </enablement>
      </decorator>
   </extension>
   <extension
         point="org.eclipse.ui.services">
      <sourceProvider
            provider="org.eclipse.ease.lang.unittest.ui.sourceprovider.TestSuiteSource">
         <variable
               name="org.eclipse.ease.lang.unittest.ui.testsuite"
               priorityLevel="workbench">
         </variable>
      </sourceProvider>
   </extension>
   <extension
         point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
            class="org.eclipse.ease.lang.unittest.ui.sourceprovider.TestSuiteStatus"
            id="org.eclipse.ease.lang.unittest.ui.propertyTester"
            namespace="org.eclipse.ease.lang.unittest.ui.testsuite"
            properties="status,exists"
            type="org.eclipse.ease.lang.unittest.runtime.ITestSuite">
      </propertyTester>
   </extension>



   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <!-- @generated TestDefinition -->
      <factory
            uri="http://eclipse.org/ease/unittest/testsuite/1.0"
            class="org.eclipse.ease.lang.unittest.definition.provider.DefinitionItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource"/>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
      <commonWizard
            type="new"
            wizardId="org.eclipse.ease.lang.unittest.ui.wizard.newTestSuiteWizard">
         <enablement></enablement>
      </commonWizard>
   </extension>

</plugin>
