| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Copyright (c) 2009, 2019 IBM Corporation and others. |
| This program and the accompanying materials |
| are made available under the terms of the Eclipse Public License 2.0 |
| which accompanies this distribution, and is available at |
| https://www.eclipse.org/legal/epl-2.0/ |
| |
| SPDX-License-Identifier: EPL-2.0 |
| |
| Contributors: |
| IBM Corporation - initial API and implementation |
| --> |
| |
| <project |
| name="testsuite" |
| default="run" |
| basedir="."> |
| |
| <!-- |
| The following properties should be passed into this script |
| so we'll fail fast if not. |
| ${eclipse-home} |
| ${buildDirectory} |
| ${buildLabel} |
| --> |
| |
| <fail |
| message="Error: missing property. eclipse-home must be provided" |
| unless="eclipse-home" /> |
| <fail |
| message="Error: missing property. buildDirectory must be provided" |
| unless="buildDirectory" /> |
| <fail |
| message="Error: missing property. buildLabel must be provided" |
| unless="buildLabel" /> |
| |
| <!-- should be little need to change what's above --> |
| |
| <property |
| name="plugin-name" |
| value="org.eclipse.jst.ws.cxf.tests"/> |
| <property |
| name="classname" |
| value="org.eclipse.jst.ws.cxf.tests.AllTestsSuite"/> |
| <property |
| name="testType" |
| value="ui-test"/> |
| |
| <!-- should be little need to change what's below --> |
| <echo |
| message="basedir: ${basedir}"/> |
| <echo |
| message="eclipse-home: ${eclipse-home}"/> |
| <echo |
| message="buildDirectory: ${buildDirectory}"/> |
| <echo |
| message="plugin-name: ${plugin-name}"/> |
| <echo |
| message="classname: ${classname}"/> |
| <echo |
| message="testType ${testType}"/> |
| <property |
| name="library-file" |
| value="${eclipse-home}/plugins/org.eclipse.test_3.1.0/library.xml"/> |
| <property |
| name="workspace" |
| value="${eclipse-home}/junitworkspaces/${plugin-name}"/> |
| <echo |
| message="workspace: ${workspace}" /> |
| <!-- |
| This init target holds all initialization code that needs to be done |
| for all tests that are to be run. Initialization for individual |
| tests should be done within the body of the suite target. |
| --> |
| <target |
| name="init"> |
| <tstamp/> |
| <delete> |
| <fileset |
| dir="${eclipse-home}" |
| includes="${plugin-name}.*xml"/> |
| </delete> |
| <!-- make directory, in case path doesn't exist yet --> |
| <mkdir |
| dir="${workspace}"/> |
| <!-- but delete to make sure fresh contents--> |
| <delete |
| dir="${workspace}" |
| quiet="true"/> |
| </target> |
| |
| <!-- This target defines the tests that need to be run. --> |
| <target |
| name="suite"> |
| <ant |
| target="${testType}" |
| antfile="${library-file}" |
| dir="${eclipse-home}"> |
| <property |
| name="data-dir" |
| value="${workspace}"/> |
| <property |
| name="plugin-name" |
| value="${plugin-name}"/> |
| <property |
| name="classname" |
| value="${classname}"/> |
| <property |
| name="plugin-path" |
| value="${eclipse-home}/plugins/${plugin-name}"/> |
| </ant> |
| <copy |
| failonerror="false" |
| file="${workspace}/.metadata/.log" |
| tofile="${buildDirectory}/${buildLabel}/testResults/consolelogs/${plugin-name}.consolelog.txt"/> |
| </target> |
| |
| <!-- This target holds code to cleanup the testing environment after --> |
| <!-- |
| after all of the tests have been run. You can use this target to |
| --> |
| <!-- delete temporary files that have been created. --> |
| <target |
| name="cleanup"> |
| <!-- |
| usually no need to delete workspace until next run, and |
| leaving it allows inspection |
| --> |
| <!-- <delete dir="${workspace}" quiet="true" /> --> |
| </target> |
| <!-- |
| This target runs the test suite. Any actions that need to happen |
| --> |
| <!-- after all the tests have been run should go here. --> |
| <target |
| name="run" |
| depends="init,suite,cleanup"> |
| <ant |
| target="collect" |
| antfile="${library-file}" |
| dir="${eclipse-home}"> |
| <property |
| name="includes" |
| value="${plugin-name}.*xml"/> |
| <property |
| name="output-file" |
| value="${plugin-name}.xml"/> |
| </ant> |
| </target> |
| </project> |