<?xml version="1.0" encoding="ISO-8859-1"?>
<!--

    Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<!DOCTYPE project [
        <!ENTITY commonSetup SYSTEM "./../../../config/properties.xml">
        <!ENTITY commonBuild SYSTEM "./../../../config/common.xml">
        <!ENTITY eeCommonBuild SYSTEM "./../../../config/ee-common.xml">
        <!ENTITY run SYSTEM "./../../../config/run.xml">
        <!ENTITY testproperties SYSTEM "./build.properties">
        ]>

<project name="webcontainer_unittest" default="all" basedir=".">

    &commonSetup;
    &commonBuild;
    &eeCommonBuild;
    &testproperties;
    &run;

    <path id="class.path">
        <pathelement location="${env.APS_HOME}/lib/reportbuilder.jar"/>
        <pathelement location="build"/>
        <fileset dir="${env.S1AS_HOME}/modules"/>
    </path>
    <pathconvert refid="class.path" property="test"/>

    <target name="clean" depends="init-common">
        <antcall target="clean-common"/>
        <delete dir="build"/>
    </target>

    <target name="build">
        <mkdir dir="build"/>
        <javac srcdir="src/main/java" destdir="build" debug="true"
               classpath="${test}"
               includes="**/*.java"/>
    </target>

    <target name="all" depends="init-common,build,create-cluster,create-local-instance,restart,run,stop-local-instance,delete-local-instance,delete-cluster"/>

    <target name="run" depends="init-common">
        <run-test classname="org.glassfish.devtests.web.asadmindeletestarget.WebTest" classpath="${test}">
            <arguments>
                <arg value="${cluster.name}"/>
            </arguments>
        </run-test>
    </target>

    <target name="restart" depends="init-common">
      <antcall target="restart-server-instance-common"/>
      <antcall target="start-local-instance"/>
      <sleep seconds="5"/>
    </target>

    <target name="create-cluster" depends="init-common">
        <antcall target="create-cluster-common"/>
    </target>

    <target name="create-local-instance" depends="init-common">
        <antcall target="create-local-instance-common"/>
    </target>

    <target name="delete-local-instance" depends="init-common">
        <antcall target="delete-local-instance-common"/>
    </target>

    <target name="start-local-instance" depends="init-common">
        <antcall target="start-local-instance-common"/>
    </target>

    <target name="stop-local-instance" depends="init-common">
        <antcall target="stop-local-instance-common"/>
    </target>

    <target name="delete-cluster" depends="init-common">
        <antcall target="delete-cluster-common"/>
    </target>

    <target name="usage">
        <antcall target="usage-common"/>
    </target>
</project>
