[mapguide-commits] r8527 - in trunk/MgDev: . UnitTest UnitTest/WebTier/DotNet UnitTest/WebTier/Java UnitTest/WebTier/Php

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Mon Feb 2 03:59:46 PST 2015


Author: jng
Date: 2015-02-02 03:59:46 -0800 (Mon, 02 Feb 2015)
New Revision: 8527

Added:
   trunk/MgDev/test_readme.txt
Modified:
   trunk/MgDev/UnitTest/WebTier/DotNet/prebuild.bat
   trunk/MgDev/UnitTest/WebTier/Java/build.xml
   trunk/MgDev/UnitTest/WebTier/Php/Utils.php
   trunk/MgDev/UnitTest/prepare.php
   trunk/MgDev/build.bat
   trunk/MgDev/run_tests.bat
   trunk/MgDev/setenvironment.bat
   trunk/MgDev/setenvironment64.bat
Log:
#2533:
 - Update build.bat to also deploy the test suite as a re-deployable package.
 - Rewrite run_tests.bat to enable our test suite to run against an installed/pre-configured instance of MapGuide
 - Fix existing test setup scripts to allow this type of test execution.

Modified: trunk/MgDev/UnitTest/WebTier/DotNet/prebuild.bat
===================================================================
--- trunk/MgDev/UnitTest/WebTier/DotNet/prebuild.bat	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/UnitTest/WebTier/DotNet/prebuild.bat	2015-02-02 11:59:46 UTC (rev 8527)
@@ -1,7 +1,9 @@
 @echo off
 SET SLN_DIR=%~dp0
 SET CFG=%1
+SET CFG=%CFG:"=%
 SET PLAT=%2
+SET PLAT=%PLAT:"=%
 echo Solution Dir: %SLN_DIR%
 echo Configuration: %CFG%
 echo Platform: %PLAT%
@@ -22,15 +24,15 @@
 goto done
 
 :copy
-if %PLAT%=="x64" (
+if "%PLAT%"=="x64" (
     echo Copying x64 binaries from %SLN_DIR%..\..\..\Web\bin\%CFG%64
-    copy /Y %SLN_DIR%..\..\..\Web\bin\%CFG%64\*.* "%SLN_DIR%Libs\"
-    echo Copying x64 SqliteDotNet.dll
-    copy /Y %SLN_DIR%..\..\..\Oem\SQLite\bin\%CFG%64\SqliteDotNet.dll "%SLN_DIR%Libs\"
+    copy /Y "%SLN_DIR%..\..\..\Web\bin\%CFG%64\*.*" "%SLN_DIR%Libs\"
+    echo Copying x64 SqliteDotNet.dll from %SLN_DIR%..\..\..\Oem\SQLite\bin\%CFG%64\SqliteDotNet.dll
+    copy /Y "%SLN_DIR%..\..\..\Oem\SQLite\bin\%CFG%64\SqliteDotNet.dll" "%SLN_DIR%Libs\"
 ) else (
     echo Copying x86 binaries from %SLN_DIR%..\..\..\Web\bin\%CFG%
-    copy /Y %SLN_DIR%..\..\..\Web\bin\%CFG%\*.* "%SLN_DIR%Libs\"
+    copy /Y "%SLN_DIR%..\..\..\Web\bin\%CFG%\*.*" "%SLN_DIR%Libs\"
     echo Copying x86 SqliteDotNet.dll
-    copy /Y %SLN_DIR%..\..\..\Oem\SQLite\bin\%CFG%\SqliteDotNet.dll "%SLN_DIR%Libs\"
+    copy /Y "%SLN_DIR%..\..\..\Oem\SQLite\bin\%CFG%\SqliteDotNet.dll" "%SLN_DIR%Libs\"
 )
 :done
\ No newline at end of file

Modified: trunk/MgDev/UnitTest/WebTier/Java/build.xml
===================================================================
--- trunk/MgDev/UnitTest/WebTier/Java/build.xml	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/UnitTest/WebTier/Java/build.xml	2015-02-02 11:59:46 UTC (rev 8527)
@@ -109,18 +109,22 @@
         <attribute name="Class-Path" value="MapGuideApiEx.jar sqlite4java.jar" />
       </manifest>
     </jar>
-    <copy todir="${dist}">
+    <copy todir="${dist}" verbose="true">
       <fileset dir="${classpath}">
         <include name="**/*" />
       </fileset>
     </copy>
-    <copy todir="${dist}">
+    <copy todir="${dist}" verbose="true">
       <fileset dir="${extlib}">
         <include name="**/*.dll" />
         <include name="**/*.so" />
       </fileset>
     </copy>
-    <copy file="${mapguide.res.src}" tofile="${mapguide.res}" />
+    <copy file="${mapguide.res.src}" tofile="${mapguide.res}" verbose="true" />
+    <copy file="${mapguide.config.src}" tofile="${mapguide.config}" verbose="true" overwrite="true" />
+  </target>
+  <target name="updatewebconfig">
+    <echo message="Updating ${mapguide.config} with default values" />
     <!-- write webconfig.ini -->
     <inifile dest="${mapguide.config}">
       <set section="GeneralProperties" property="DefaultMessageLocale" value="en" />
@@ -151,7 +155,7 @@
       <set section="OgcProperties" property="CITEWmsEnabled" value="0" />
     </inifile>
   </target>
-  <target name="checkwin" depends="dist">
+  <target name="checkwin_external" depends="dist">
     <echo message="Run Java tests for Windows" />
     <!-- Remove any log files and dumped binary files from previous run -->
     <delete>
@@ -170,7 +174,26 @@
       <env key="MENTOR_DICTIONARY_PATH" value="${mapguide.dictpath}" />
     </java>
   </target>
-  <target name="checkunix" depends="dist">
+  <target name="checkwin" depends="dist,updatewebconfig">
+    <echo message="Run Java tests for Windows" />
+    <!-- Remove any log files and dumped binary files from previous run -->
+    <delete>
+      <fileset dir="${dist}" includes="**/*.bin"/>
+      <fileset dir="${dist}" includes="**/*.log"/>
+    </delete>
+    <!--
+    <exec executable="java" dir="${dist}">
+      <arg line="-jar MgUnitTest.jar ${mapguide.config} ${unittest.logpath}" />
+      <env key="MENTOR_DICTIONARY_PATH" value="${mapguide.dictpath}" />
+    </exec>
+    -->
+    <java jar="${dist}/MgUnitTest.jar" fork="true" dir="${dist}">
+      <arg value="${mapguide.config}" />
+      <arg value="${unittest.logpath}" />
+      <env key="MENTOR_DICTIONARY_PATH" value="${mapguide.dictpath}" />
+    </java>
+  </target>
+  <target name="checkunix" depends="dist,updatewebconfig">
     <echo message="Run Java tests for Unix" />
     <!-- Remove any log files and dumped binary files from previous run -->
     <delete>

Modified: trunk/MgDev/UnitTest/WebTier/Php/Utils.php
===================================================================
--- trunk/MgDev/UnitTest/WebTier/Php/Utils.php	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/UnitTest/WebTier/Php/Utils.php	2015-02-02 11:59:46 UTC (rev 8527)
@@ -21,13 +21,6 @@
 
 require_once("SQLiteEngine.php");
 
-if (!defined('WEBCONFIGINI')) {
-    if (array_key_exists("WEBCONFIGINI", $_SERVER)) {
-        define("WEBCONFIGINI", $_SERVER["WEBCONFIGINI"]);
-    } else {
-        define('WEBCONFIGINI', "../../../Web/src/webconfig.ini");
-    }
-}
 class Utils
 {
     public static function SetCommonParams($paramSet, $db)

Modified: trunk/MgDev/UnitTest/prepare.php
===================================================================
--- trunk/MgDev/UnitTest/prepare.php	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/UnitTest/prepare.php	2015-02-02 11:59:46 UTC (rev 8527)
@@ -3,7 +3,13 @@
 require_once dirname(__FILE__)."/../Web/src/PhpApi/constants.php";
 
 $file = dirname(__FILE__)."/webconfig.ini";
+if (array_key_exists("MG_WEBCONFIG_INI", $_SERVER))
+    $file = $_SERVER["MG_WEBCONFIG_INI"];
+
 $mgp = dirname(__FILE__)."/TestData/Samples/Sheboygan/Sheboygan.mgp";
+if (array_key_exists("MG_SHEBOYGAN_MGP", $_SERVER))
+    $mgp = $_SERVER["MG_SHEBOYGAN_MGP"];
+
 if (!file_exists($mgp)) {
     echo "Sheboygan.mgp not found. Please put this file in this directory before running this script\n";
     exit(255);

Modified: trunk/MgDev/build.bat
===================================================================
--- trunk/MgDev/build.bat	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/build.bat	2015-02-02 11:59:46 UTC (rev 8527)
@@ -72,6 +72,7 @@
 SET MG_OUTPUT_SERVER=%MG_OUTPUT%\Server
 SET MG_OUTPUT_WEB=%MG_OUTPUT%\Web
 SET MG_OUTPUT_CSMAP=%MG_OUTPUT%\CS-Map
+SET MG_OUTPUT_TEST=%MG_OUTPUT%\Test
 goto next_param
 
 :get_action
@@ -88,6 +89,7 @@
 if "%2"=="server" goto next_param
 if "%2"=="web" goto next_param
 if "%2"=="doc" goto next_param
+if "%2"=="test" goto next_param
 if "%2"=="all" goto next_param
 if "%2"=="allnodoc" goto next_param
 SET ERRORMSG=Unrecognised component: %2
@@ -240,6 +242,7 @@
 if "%TYPECOMPONENT%"=="server" goto install_server
 if "%TYPECOMPONENT%"=="web" goto install_web
 if "%TYPECOMPONENT%"=="doc" goto install_doc
+if "%TYPECOMPONENT%"=="test" goto install_test
 SET ERRORMSG=Unrecognised component: %TYPECOMPONENT%
 goto custom_error
 
@@ -362,6 +365,15 @@
     popd
 )
 copy /Y "%MG_DEV%\UnitTest\TestData\Samples\Sheboygan\Sheboygan.mgp" "%MG_OUTPUT%"
+if "%TYPECOMPONENT%"=="doc" goto quit
+:install_test
+echo [install]: Test Suite
+%XCOPY% "%MG_UNIT_TEST%" "%MG_OUTPUT_TEST%\UnitTest"
+if not exist "%MG_OUTPUT_TEST%\Oem\SQLite\bin\%TYPEBUILD%" mkdir "%MG_OUTPUT_TEST%\Oem\SQLite\bin\%TYPEBUILD%"
+copy /Y "%MG_BUILD_SQLITE_DOTNET_API%" "%MG_OUTPUT_TEST%\Oem\SQLite\bin\%TYPEBUILD%"
+copy /Y test_readme.txt "%MG_OUTPUT_TEST%"
+copy /Y run_tests.bat "%MG_OUTPUT_TEST%"
+copy /Y run_tests.sh "%MG_OUTPUT_TEST%"
 goto quit
 
 :error
@@ -394,4 +406,3 @@
 echo                                doc
 echo ************************************************************************
 :quit
-SET TYPEACTION=
\ No newline at end of file

Modified: trunk/MgDev/run_tests.bat
===================================================================
--- trunk/MgDev/run_tests.bat	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/run_tests.bat	2015-02-02 11:59:46 UTC (rev 8527)
@@ -1,178 +1,380 @@
 @echo off
-SET PLAT=x86
-SET CONFIG=Release
-SET CONF=Release
-SET TEST_COMPONENT=
-IF NOT "%1"=="" SET PLAT=%1
-IF "%PLAT%"=="x64" SET CONF=Release64
-REM Time to wait for mgserver.exe to startup in seconds
+REM 
+REM run_tests.bat
+REM 
+REM This batch file helps to execute the MapGuide test suite against a given
+REM installation of MapGuide
+REM
+SET PLATFORM=x86
+SET PHP_WEB_SERVER=0
+SET SERVER_ADDR=localhost
+SET SERVER_PORT=8008
+SET TEST_SUITE=server
+SET WEB_ROOT=%CD%\Release\Web\www
+SET PHP_EXT_DIR=%CD%\Release\Web\Php\ext
+SET SERVER_PATH=%CD%\Server\bin
+SET CS_MAP_PATH=%WEB_ROOT%\..\..\CS-Map\Dictionaries
+SET MAPAGENT=http://localhost:8008/mapguide/mapagent/mapagent.fcgi
+SET CURRENT_DIR=%CD%
+SET OLDPATH=%PATH%
+SET SERVER_TEST_SCOPE=all
+SET TEST_DATA_SRC=%CD%\UnitTest\TestData
 SET MGSERVER_WAIT=15
-REM Vars to inject into $_SERVER in PHP CLI
-SET SERVER_ADDR=localhost
-SET WEBCONFIGINI=%CD%\UnitTest\webconfig.ini
-SET SERVER_PORT=8018
-SET PATH=%CD%\%CONF%\Web\Php;%PATH%;
-REM SET WEBCONFIGINI=C:\Program Files\OSGeo\MapGuide\Web\www\webconfig.ini
-REM SET SERVER_PORT=80
-SET PHP_TEST_CWD=%CD%\Web\src\mapagent
-REM SET PHP_EXT_DIR=C:\Program Files\OSGeo\MapGuide\Web\Php\ext
-SET PHP_EXT_DIR=%CD%\%CONF%\Web\Php\ext
 
-SET START_MGSERVER=1
-SET START_WEBSERVER=1
-SET PREPARE_PHP_WEBSERVER=1
-SET RUN_SERVER_TESTS=1
-SET RUN_PHP_TESTS=1
-SET RUN_DOTNET_TESTS=1
-SET RUN_JAVA_TESTS=1
+SET PATH=C:\Windows\Microsoft.NET\Framework\v4.0.30319;%PATH%
 
-SET RETURN_CODE=0
+:study_params
+if (%1)==()            goto pre_flight_check
 
-echo *************** TEST SUMMARY ******************
-echo Platform: %PLAT%
-echo Configuration: %CONF%
-echo Run PHP Tests: %RUN_PHP_TESTS%
-echo Run .net Tests: %RUN_DOTNET_TESTS%
-echo Run Java Tests: %RUN_JAVA_TESTS%
-echo ***********************************************
-:test_server
-if "%RUN_SERVER_TESTS%" == "1" (
-    echo [test]: MapGuide Server
-    SET TEST_COMPONENT=MapGuide Server Tests
-    pushd Server\bin\%CONF%
-    rem Before we run, nuke the Repositories/ directory to ensure a clean slate
-    rd /S /Q Repositories
-    mgserver.exe test all UnitTestResults.xml
-    if %ERRORLEVEL% neq 0 echo [test]: MapGuide Server tests had one or more failures. Check UnitTestResults.xml for more information
-    rem Nuke again for future tests
-    rd /S /Q Repositories
-    popd
+if "%1"=="-help"       goto help_show
+if "%1"=="-h"          goto help_show
+
+if "%1"=="-iw"         goto get_phpwebserver
+
+if "%1"=="-ws"         goto get_webservername
+
+if "%1"=="-wp"         goto get_webserverport
+
+if "%1"=="-p"          goto get_platform
+if "%1"=="-platform"   goto get_platform
+
+if "%1"=="-t"          goto get_test
+if "%1"=="-test"       goto get_test
+
+if "%1"=="-m"          goto get_mapagent
+if "%1"=="-mapagent"   goto get_mapagent
+
+if "%1"=="-w"          goto get_webroot
+if "%1"=="-webroot"    goto get_webroot
+
+if "%1"=="-s"          goto get_serverpath
+if "%1"=="-serverpath" goto get_serverpath
+
+goto custom_error
+
+:next_param
+shift
+shift
+goto study_params
+
+:get_platform
+SET PLATFORM=%2
+if "%2" == "x86" goto next_param
+if "%2" == "x64" goto next_param
+SET ERRORMSG=Unrecognised value: %2
+goto custom_error
+
+:get_phpwebserver
+SET PHP_WEB_SERVER=%2
+if "%2" == "1" goto next_param
+if "%2" == "0" goto next_param
+SET ERRORMSG=Unrecognised value: %2
+goto custom_error
+
+:get_webservername
+SET SERVER_ADDR=%2
+SET SERVER_ADDR=%SERVER_ADDR:"=%
+goto next_param
+
+:get_webserverport
+SET SERVER_PORT=%2
+goto next_param
+
+:get_test
+SET TEST_SUITE=%2
+if "%2"=="server" goto next_param
+if "%2"=="php" goto next_param
+if "%2"=="dotnet" goto next_param
+if "%2"=="java" goto next_param
+if "%2"=="all" goto next_param
+SET ERRORMSG=Unrecognised action: %2
+goto custom_error
+
+:get_mapagent
+SET MAPAGENT=%2
+SET MAPAGENT=%MAPAGENT:"=%
+goto next_param
+
+:get_webroot
+SET WEB_ROOT=%2
+SET WEB_ROOT=%WEB_ROOT:"=%
+SET CS_MAP_PATH=%WEB_ROOT%\..\..\CS-Map\Dictionaries
+SET PHP_EXT_DIR=%WEB_ROOT%\..\Php\ext
+goto next_param
+
+:get_serverpath
+SET SERVER_PATH=%2
+SET SERVER_PATH=%SERVER_PATH:"=%
+goto next_param
+
+:pre_flight_check
+echo ******** Test Run Summary **********************
+echo Platform:           %PLATFORM%
+echo Use PHP Web Server: %PHP_WEB_SERVER%
+echo Test Suite to run:  %TEST_SUITE%
+echo Map Agent URL:      %MAPAGENT%
+echo Server Path:        %SERVER_PATH%
+echo Web Root Path:      %WEB_ROOT%
+echo CS-Map Path:        %CS_MAP_PATH%
+echo Web Server Name:    %SERVER_ADDR%
+echo Web Server Port:    %SERVER_PORT%
+echo ********* Paths to check ***********************
+echo PHP executable      %WEB_ROOT%\..\Php\php.exe
+echo .net Assemblies     %WEB_ROOT%\mapviewernet\bin
+echo Java jars           %WEB_ROOT%\WEB-INF\lib
+echo ************************************************
+SET PATH=%WEB_ROOT%\..\Php;%PATH%
+:check_dotnet
+echo [check]: .net
+if not exist "%WEB_ROOT%\mapviewernet\bin\*.dll" goto no_dotnet
+goto check_java
+:no_dotnet
+if "%TEST_SUITE%" == "dotnet" (
+    SET ERRORMSG=Could not find .net MapGuide assemblies and unmanaged dlls in this MapGuide installation
+    goto error_check
 )
-:build_tests
-if "%RUN_DOTNET_TESTS%" == "1" (
-    echo [build]: DotNet test runner
-    SET TEST_COMPONENT=Build DotNet test runner
-    if exist UnitTest\WebTier\DotNet_x64 rd /S /Q UnitTest\WebTier\DotNet_x64
-    if exist UnitTest\WebTier\DotNet_x86 rd /S /Q UnitTest\WebTier\DotNet_x86
-    pushd UnitTest\WebTier\DotNet
-    if exist Libs rd /S /Q Libs
-    msbuild /p:Configuration=%CONFIG%;Platform=%PLAT% /fl /flp:logfile=build.log DotNet.sln
-    if "%ERRORLEVEL%" == "1" (
-        set RETURN_CODE=%ERRORLEVEL%
-        goto error
-    )
-    popd
+if "%TEST_SUITE%" == "all" (
+    SET ERRORMSG=Could not find .net MapGuide assemblies and unmanaged dlls in this MapGuide installation
+    goto error_check
 )
-:start_mgserver
-if "%START_MGSERVER%" == "1" (
-    echo [test]: Starting MapGuide Server. Waiting %MGSERVER_WAIT%s
-    pushd Server\bin\%CONF%
-    rem Before we run, nuke the Repositories/ directory to ensure a clean slate
-    rd /S /Q Repositories
+:check_java
+echo [check]: Java
+if not exist "%WEB_ROOT%\WEB-INF\lib\*.jar" goto no_java
+goto check_php
+:no_java
+if "%TEST_SUITE%" == "java" (
+    SET ERRORMSG=Could not find required jars and unmanaged dlls in this MapGuide installation
+    goto error_check
+)
+if "%TEST_SUITE%" == "all" (
+    SET ERRORMSG=Could not find required jars and unmanaged dlls in this MapGuide installation
+    goto error_check
+)
+:check_php
+echo [check]: PHP
+if not exist "%WEB_ROOT%\..\Php\php.exe" goto no_php
+goto check_server
+:no_php
+if "%TEST_SUITE%" == "php" (
+    SET ERRORMSG=Could not find required PHP executable in this MapGuide installation
+    goto error_check
+)
+if "%TEST_SUITE%" == "all" (
+    SET ERRORMSG=Could not find required PHP executable in this MapGuide installation
+    goto error_check
+)
+:check_server
+if "%TEST_SUITE%" == "server" goto prepare_server_files
+if "%TEST_SUITE%" == "all" goto prepare_server_files
+if "%TEST_SUITE%" == "php" goto test_php
+if "%TEST_SUITE%" == "dotnet" goto test_dotnet
+if "%TEST_SUITE%" == "java" goto test_java
+goto test_php
+:prepare_server_files
+echo [prepare]: Test Data Files for Server Test Suite
+if not exist "%SERVER_PATH%\..\UnitTestFiles" mkdir "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\CoordinateSystems\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\DrawingService\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\FeatureService\SDF\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\FeatureService\SHP\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\FeatureService\SQLite\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\KmlService\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\MapLayer\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\MappingService\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\MdfModel\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\PrintLayout\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\ResourceService\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\ResourceService\Shuttle.zip" "%SERVER_PATH%\..\UnitTestFiles\World.mgp"
+copy /Y "%TEST_DATA_SRC%\ServerAdmin\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\SiteService\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\Symbology\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\TileService\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\Unicode\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\WebLayout\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\Wfs\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+copy /Y "%TEST_DATA_SRC%\Wms\*.*" "%SERVER_PATH%\..\UnitTestFiles"
+:test_server
+echo [test]: MapGuide Server
+pushd "%SERVER_PATH%"
+mgserver test %SERVER_TEST_SCOPE% UnitTestResults.xml
+move /Y UnitTestResults.xml "%CURRENT_DIR%"
+popd
+if "%TEST_SUITE%" == "server" goto quit
+if "%TEST_SUITE%" == "all" goto test_php
+:test_php
+echo [test]: PHP Binding
+pushd "%CURRENT_DIR%\UnitTest\TestData"
+if exist Unicode\UnicodeTest.db del /F Unicode\UnicodeTest.db
+if exist WmsTest\WmsTest.db del /F WmsTest\WmsTest.db
+if exist WebLayout\WebLayoutTest.db del /F WebLayout\WebLayoutTest.db
+if exist WfsTest\WfsTest.db del /F WfsTest\WfsTest.db
+if exist MapLayer\MapLayerTest.db del /F MapLayer\MapLayerTest.db
+if exist ServerAdmin\ServerAdminTest.db del /F ServerAdmin\ServerAdminTest.db
+if exist MappingService\MappingServiceTest.db del /F MappingService\MappingServiceTest.db
+if exist SiteService\SiteServiceTest.db del /F SiteService\SiteServiceTest.db
+if exist FeatureService\FeatureServiceTest.db del /F FeatureService\FeatureServiceTest.db
+if exist DrawingService\DrawingServiceTest.db del /F DrawingService\DrawingServiceTest.db
+if exist ResourceService\ResourceServiceTest.db del /F ResourceService\ResourceServiceTest.db
+popd
+if exist "%SERVER_PATH%" (
+    REM start mgserver for test
+    pushd "%SERVER_PATH%"
     start mgserver run
     REM An elegant hack to pause this script allowing mgserver to start up
     echo Waiting %MGSERVER_WAIT%s for mgserver.exe to start up
     ping -n %MGSERVER_WAIT% 127.0.0.1 > NUL
     popd
 )
-:prepare_webconfig
-if "%PREPARE_PHP_WEBSERVER%" == "1" (
-    pushd UnitTest
-    SET TEST_COMPONENT=Prepare webtier test suites
-    php -n -d display_errors=Off -d extension_dir="%PHP_EXT_DIR%" -d extension=php_mbstring.dll -d extension=php_curl.dll -d extension=php_MapGuideApi.dll -d extension=php_SQLitePhpApi.dll prepare.php
-    if %ERRORLEVEL% neq 0 (
-        set RETURN_CODE=%ERRORLEVEL%
-        goto error
-    )
-    popd
+REM Ensure constants.php exists
+if not exist "%CURRENT_DIR%\Web\src\PhpApi" mkdir "%CURRENT_DIR%\Web\src\PhpApi"
+copy /Y "%WEB_ROOT%\mapadmin\constants.php" "%CURRENT_DIR%\Web\src\PhpApi"
+REM Ensure we have the Sheboygan.mgp loaded first
+pushd "%CURRENT_DIR%\UnitTest"
+if exist "%WEB_ROOT%\webconfig.ini" SET MG_WEBCONFIG_INI=%WEB_ROOT%\webconfig.ini
+php -n -d display_errors=Off -d extension_dir="%PHP_EXT_DIR%" -d extension=php_mbstring.dll -d extension=php_curl.dll -d extension=php_MapGuideApi.dll prepare.php
+popd
+REM Now run the test suite
+pushd "%CURRENT_DIR%\UnitTest\WebTier\Php"
+php.exe -n -d display_errors=On -d extension_dir="%PHP_EXT_DIR%" -d extension=php_mbstring.dll -d extension=php_curl.dll -d extension=php_MapGuideApi.dll -d extension=php_pdo_sqlite.dll RunTests.php -config "%WEB_ROOT%\webconfig.ini"
+popd
+if exist "%SERVER_PATH%" (
+    echo [test]: Terminating mgserver.exe
+    REM We're naturally assuming the only mgserver.exe that is running is the one this script started
+    taskkill /im mgserver.exe
 )
-:start_php_webserver
-if "%START_WEBSERVER%" == "1" (
-    echo [test]: Starting PHP web server. Waiting %MGSERVER_WAIT%s
-    start php -n -d display_errors=Off -d upload_max_filesize=20M -d extension_dir="%PHP_EXT_DIR%" -d extension=php_mbstring.dll -d extension=php_curl.dll -d extension=php_MapGuideApi.dll -S %SERVER_ADDR%:%SERVER_PORT% -t %CD%\UnitTest\WebTier\MapAgent\MapAgentForms %CD%\UnitTest\WebTier\Php\MapAgentShim\index.php
+if "%TEST_SUITE%" == "php" goto quit
+:test_dotnet
+echo [test]: .net Binding
+echo [build]: DotNet test runner
+SET TEST_COMPONENT=Build DotNet test runner
+if exist "%CURRENT_DIR%\UnitTest\WebTier\DotNet_x64" rd /S /Q "%CURRENT_DIR%\UnitTest\WebTier\DotNet_x64"
+if exist "%CURRENT_DIR%\UnitTest\WebTier\DotNet_x86" rd /S /Q "%CURRENT_DIR%\UnitTest\WebTier\DotNet_x86"
+pushd "%CURRENT_DIR%\UnitTest\WebTier\DotNet"
+if exist Libs rd /S /Q Libs
+if not exist "%CURRENT_DIR%\Web\bin\release" mkdir "%CURRENT_DIR%\Web\bin\release"
+if not exist "%CURRENT_DIR%\Web\bin\release64" mkdir "%CURRENT_DIR%\Web\bin\release64"
+if "%PLATFORM%" == "x86" copy /y "%WEB_ROOT%\mapviewernet\bin\*.dll" "%CURRENT_DIR%\Web\bin\release"
+if "%PLATFORM%" == "x64" copy /y "%WEB_ROOT%\mapviewernet\bin\*.dll" "%CURRENT_DIR%\Web\bin\release64"
+if not exist "%CURRENT_DIR%\Common\MapGuideCommon\Resources" mkdir "%CURRENT_DIR%\Common\MapGuideCommon\Resources"
+copy /y "%WEB_ROOT%\mapagent\Resources\mapguide_en.res" "%CURRENT_DIR%\Common\MapGuideCommon\Resources"
+msbuild /p:Configuration=Release;Platform=%PLATFORM% /fl /flp:logfile=build.log DotNet.sln
+if "%ERRORLEVEL%" == "1" (
+    set RETURN_CODE=%ERRORLEVEL%
+    goto error_msbuild
+)
+popd
+pushd "%CURRENT_DIR%\UnitTest\TestData"
+if exist Unicode\UnicodeTest.db del /F Unicode\UnicodeTest.db
+if exist WmsTest\WmsTest.db del /F WmsTest\WmsTest.db
+if exist WebLayout\WebLayoutTest.db del /F WebLayout\WebLayoutTest.db
+if exist WfsTest\WfsTest.db del /F WfsTest\WfsTest.db
+if exist MapLayer\MapLayerTest.db del /F MapLayer\MapLayerTest.db
+if exist ServerAdmin\ServerAdminTest.db del /F ServerAdmin\ServerAdminTest.db
+if exist MappingService\MappingServiceTest.db del /F MappingService\MappingServiceTest.db
+if exist SiteService\SiteServiceTest.db del /F SiteService\SiteServiceTest.db
+if exist FeatureService\FeatureServiceTest.db del /F FeatureService\FeatureServiceTest.db
+if exist DrawingService\DrawingServiceTest.db del /F DrawingService\DrawingServiceTest.db
+if exist ResourceService\ResourceServiceTest.db del /F ResourceService\ResourceServiceTest.db
+popd
+if exist "%SERVER_PATH%" (
+    REM start mgserver for test
+    pushd "%SERVER_PATH%"
+    start mgserver run
+    REM An elegant hack to pause this script allowing mgserver to start up
+    echo Waiting %MGSERVER_WAIT%s for mgserver.exe to start up
     ping -n %MGSERVER_WAIT% 127.0.0.1 > NUL
-)
-:test_php
-if "%RUN_PHP_TESTS%" == "1" (
-    echo [test]: PHP tests
-    REM Clear out old dbs before running
-    pushd UnitTest\TestData
-    if exist Unicode\UnicodeTest.db del /F Unicode\UnicodeTest.db
-    if exist WmsTest\WmsTest.db del /F WmsTest\WmsTest.db
-    if exist WebLayout\WebLayoutTest.db del /F WebLayout\WebLayoutTest.db
-    if exist WfsTest\WfsTest.db del /F WfsTest\WfsTest.db
-    if exist MapLayer\MapLayerTest.db del /F MapLayer\MapLayerTest.db
-    if exist ServerAdmin\ServerAdminTest.db del /F ServerAdmin\ServerAdminTest.db
-    if exist MappingService\MappingServiceTest.db del /F MappingService\MappingServiceTest.db
-    if exist SiteService\SiteServiceTest.db del /F SiteService\SiteServiceTest.db
-    if exist FeatureService\FeatureServiceTest.db del /F FeatureService\FeatureServiceTest.db
-    if exist DrawingService\DrawingServiceTest.db del /F DrawingService\DrawingServiceTest.db
-    if exist ResourceService\ResourceServiceTest.db del /F ResourceService\ResourceServiceTest.db
     popd
-    pushd UnitTest\WebTier\Php
-    php.exe -n -d display_errors=Off -d extension_dir="%PHP_EXT_DIR%" -d extension=php_mbstring.dll -d extension=php_curl.dll -d extension=php_MapGuideApi.dll -d extension=php_pdo_sqlite.dll RunTests.php
-    popd
 )
-:test_dotnet
-if "%RUN_DOTNET_TESTS%" == "1" (
-    echo [test]: .net tests
-    REM Clear out old dbs before running
-    pushd UnitTest\TestData
-    if exist Unicode\UnicodeTest.db del /F Unicode\UnicodeTest.db
-    if exist WmsTest\WmsTest.db del /F WmsTest\WmsTest.db
-    if exist WebLayout\WebLayoutTest.db del /F WebLayout\WebLayoutTest.db
-    if exist WfsTest\WfsTest.db del /F WfsTest\WfsTest.db
-    if exist MapLayer\MapLayerTest.db del /F MapLayer\MapLayerTest.db
-    if exist ServerAdmin\ServerAdminTest.db del /F ServerAdmin\ServerAdminTest.db
-    if exist MappingService\MappingServiceTest.db del /F MappingService\MappingServiceTest.db
-    if exist SiteService\SiteServiceTest.db del /F SiteService\SiteServiceTest.db
-    if exist FeatureService\FeatureServiceTest.db del /F FeatureService\FeatureServiceTest.db
-    if exist DrawingService\DrawingServiceTest.db del /F DrawingService\DrawingServiceTest.db
-    if exist ResourceService\ResourceServiceTest.db del /F ResourceService\ResourceServiceTest.db
-    popd
-    pushd UnitTest\WebTier\DotNet_%PLAT%
-    MgTestRunner.exe "%WEBCONFIGINI%" "../../../Oem/CsMap/Dictionaries"
-    if %ERRORLEVEL% neq 0 echo [test]: .net test runner had one or more test failures. Check log files for more information
-    popd
+pushd "%CURRENT_DIR%\UnitTest\WebTier\DotNet_%PLATFORM%"
+MgTestRunner.exe "%WEB_ROOT%\webconfig.ini" "%CS_MAP_PATH%"
+if %ERRORLEVEL% neq 0 echo [test]: .net test runner had one or more test failures. Check log files for more information
+popd
+if exist "%SERVER_PATH%" (
+    echo [test]: Terminating mgserver.exe
+    REM We're naturally assuming the only mgserver.exe that is running is the one this script started
+    taskkill /im mgserver.exe
 )
+if "%TEST_SUITE%" == "dotnet" goto quit
 :test_java
-if "%RUN_JAVA_TESTS%" == "1" (
-    echo [test]: Java tests
-    REM Clear out old dbs before running
-    pushd UnitTest\TestData
-    if exist Unicode\UnicodeTest.db del /F Unicode\UnicodeTest.db
-    if exist WmsTest\WmsTest.db del /F WmsTest\WmsTest.db
-    if exist WebLayout\WebLayoutTest.db del /F WebLayout\WebLayoutTest.db
-    if exist WfsTest\WfsTest.db del /F WfsTest\WfsTest.db
-    if exist MapLayer\MapLayerTest.db del /F MapLayer\MapLayerTest.db
-    if exist ServerAdmin\ServerAdminTest.db del /F ServerAdmin\ServerAdminTest.db
-    if exist MappingService\MappingServiceTest.db del /F MappingService\MappingServiceTest.db
-    if exist SiteService\SiteServiceTest.db del /F SiteService\SiteServiceTest.db
-    if exist FeatureService\FeatureServiceTest.db del /F FeatureService\FeatureServiceTest.db
-    if exist DrawingService\DrawingServiceTest.db del /F DrawingService\DrawingServiceTest.db
-    if exist ResourceService\ResourceServiceTest.db del /F ResourceService\ResourceServiceTest.db
+echo [test]: Java Binding
+pushd "%CURRENT_DIR%\UnitTest\TestData"
+if exist Unicode\UnicodeTest.db del /F Unicode\UnicodeTest.db
+if exist WmsTest\WmsTest.db del /F WmsTest\WmsTest.db
+if exist WebLayout\WebLayoutTest.db del /F WebLayout\WebLayoutTest.db
+if exist WfsTest\WfsTest.db del /F WfsTest\WfsTest.db
+if exist MapLayer\MapLayerTest.db del /F MapLayer\MapLayerTest.db
+if exist ServerAdmin\ServerAdminTest.db del /F ServerAdmin\ServerAdminTest.db
+if exist MappingService\MappingServiceTest.db del /F MappingService\MappingServiceTest.db
+if exist SiteService\SiteServiceTest.db del /F SiteService\SiteServiceTest.db
+if exist FeatureService\FeatureServiceTest.db del /F FeatureService\FeatureServiceTest.db
+if exist DrawingService\DrawingServiceTest.db del /F DrawingService\DrawingServiceTest.db
+if exist ResourceService\ResourceServiceTest.db del /F ResourceService\ResourceServiceTest.db
+popd
+if exist "%SERVER_PATH%" (
+    REM start mgserver for test
+    pushd "%SERVER_PATH%"
+    start mgserver run
+    REM An elegant hack to pause this script allowing mgserver to start up
+    echo Waiting %MGSERVER_WAIT%s for mgserver.exe to start up
+    ping -n %MGSERVER_WAIT% 127.0.0.1 > NUL
     popd
-    pushd UnitTest\WebTier\Java
-    call ant checkwin
-    if %ERRORLEVEL% neq 0 echo [test]: Java test runner had one or more test failures. Check log files for more information
-    popd
 )
-:stop_mgserver
-if "%START_MGSERVER%" == "1" (
+if not exist "%CURRENT_DIR%\Web\src" mkdir "%CURRENT_DIR%\Web\src"
+xcopy /E /Y /I /Q /H "%WEB_ROOT%\WEB-INF" "%CURRENT_DIR%\Web\src\WEB-INF"
+pushd "%CURRENT_DIR%\UnitTest\WebTier\Java"
+call ant checkwin_external -Dmapguide.dictpath="%CS_MAP_PATH%" -Dbinsrc.web="%WEB_ROOT%\..\Tomcat\bin" -Dmapguide.config.src="%WEB_ROOT%\webconfig.ini"
+if %ERRORLEVEL% neq 0 echo [test]: Java test runner had one or more test failures. Check log files for more information
+popd
+if exist "%SERVER_PATH%" (
     echo [test]: Terminating mgserver.exe
     REM We're naturally assuming the only mgserver.exe that is running is the one this script started
     taskkill /im mgserver.exe
 )
-:stop_php_webserver
-if "%START_WEBSERVER%" == "1" (
-    echo [test]: Terminating php.exe
-    REM We're naturally assuming the only php.exe that is running is the one this script started
-    taskkill /im php.exe
-)
-goto done
-:error
+if "%TEST_SUITE%" == "all" goto quit
+if "%TEST_SUITE%" == "java" goto quit
+
+:error_msbuild
 echo [error]: An error occured with %TEST_COMPONENT% (exit code: %RETURN_CODE%)
 goto quit
-:done
 
-:quit
\ No newline at end of file
+:error_check
+echo [ERROR]: %ERRORMSG%
+SET ERRORMSG=
+SET PATH=%OLDPATH%
+popd
+exit /B 1
+
+:custom_error
+echo [ERROR]: %ERRORMSG%
+SET ERRORMSG=
+echo Please use the format:
+:help_show
+echo ************************************************************************
+echo run_tests.bat [-h]
+echo               [-p=Platform]
+echo               [-t=TestSuite]
+echo               [-m=MapAgent]
+echo               [-w=WebRoot]
+echo               [-s=ServerPath]
+echo               [-ws=WebServerName]
+echo               [-wp=WebServerPort]
+echo               [-iw=UsePHPWebServer]
+echo
+echo UsePHPWebServer: -iw=1 (default),0
+echo Platform: -p[latform]=x86 (default)
+echo                       x64
+echo TestSuite: -t[est]=server (default)
+echo                    php
+echo                    dotnet
+echo                    java
+echo                    all
+echo MapAgent:  -m[apagent]=your mapagent url
+echo WebRoot:   -w[ebroot]=path to your web root www
+echo ServerPath: -s[erverpath]=path to your server bin directory
+echo WebServerName: -ws=your web server name
+echo WebServerPort: -wp=your web server port
+echo ************************************************************************
+:quit
+SET PATH=%OLDPATH%
+SET TYPEACTION=
+popd
\ No newline at end of file

Modified: trunk/MgDev/setenvironment.bat
===================================================================
--- trunk/MgDev/setenvironment.bat	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/setenvironment.bat	2015-02-02 11:59:46 UTC (rev 8527)
@@ -64,6 +64,7 @@
 rem === Intermediate build vars ===
 SET MG_BUILD_DBXML_EXE_PATH=%MG_OEM%\%MG_OEM_DBXML%\bin\%CONFIGURATION%
 SET MG_BUILD_SQLITE_PHP_API=%MG_OEM%\SQLite\bin\%TYPEBUILD%\php_SQLitePhpApi.dll
+SET MG_BUILD_SQLITE_DOTNET_API=%MG_OEM%\SQLite\bin\%TYPEBUILD%\SQLiteDotNet.dll
 SET MG_BUILD_MAPAGENT_PATH=%MG_WEB_SRC%\mapagent
 SET MG_BUILD_MAPAGENT=%MG_BUILD_MAPAGENT_PATH%\mod_mgmapagent.so
 
@@ -71,6 +72,7 @@
 SET MG_OUTPUT_SERVER=%MG_OUTPUT%\Server
 SET MG_OUTPUT_WEB=%MG_OUTPUT%\Web
 SET MG_OUTPUT_CSMAP=%MG_OUTPUT%\CS-Map
+SET MG_OUTPUT_TEST=%MG_OUTPUT%\Test
 SET MG_BUILD_COMPONENT=
 
 SET MG_DEFAULT_INSTALLDIR=C:\Program Files\MapGuideOpenSource2.0
@@ -83,11 +85,11 @@
 rem running
 rem ==================================================
 
-IF "%JAVA_HOME%" == "" SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_31
+IF "%JAVA_HOME%" == "" SET JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_71
 IF "%DOXYGEN%" == "" SET DOXYGEN=%MG_DEV%\BuildTools\doxygen
 IF "%GNUWIN32%" == "" SET GNUWIN32=C:\Program Files (x86)\GnuWin32\bin
 IF "%SEVENZ%" == "" SET SEVENZ=%MG_DEV%\BuildTools\WebTools\7-Zip
-IF "%ANT_HOME%" == "" SET ANT_HOME=C:\apache-ant-1.8.3
+IF "%ANT_HOME%" == "" SET ANT_HOME=C:\apache-ant
 
 SET PATH=%PATH%;%DOXYGEN%;%GNUWIN32%;%SEVENZ%;%ANT_HOME%\bin
 rem ==================================================

Modified: trunk/MgDev/setenvironment64.bat
===================================================================
--- trunk/MgDev/setenvironment64.bat	2015-01-31 16:47:06 UTC (rev 8526)
+++ trunk/MgDev/setenvironment64.bat	2015-02-02 11:59:46 UTC (rev 8527)
@@ -68,6 +68,7 @@
 rem === Intermediate build vars ===
 SET MG_BUILD_DBXML_EXE_PATH=%MG_OEM%\%MG_OEM_DBXML%\bin64\%CONFIGURATION%
 SET MG_BUILD_SQLITE_PHP_API=%MG_OEM%\SQLite\bin\%TYPEBUILD%\php_SQLitePhpApi.dll
+SET MG_BUILD_SQLITE_DOTNET_API=%MG_OEM%\SQLite\bin\%TYPEBUILD%\SQLiteDotNet.dll
 SET MG_BUILD_MAPAGENT_PATH=%MG_WEB_SRC%\mapagent64
 SET MG_BUILD_MAPAGENT=%MG_BUILD_MAPAGENT_PATH%\mod_mgmapagent.so
 
@@ -75,6 +76,7 @@
 SET MG_OUTPUT_SERVER=%MG_OUTPUT%\Server
 SET MG_OUTPUT_WEB=%MG_OUTPUT%\Web
 SET MG_OUTPUT_CSMAP=%MG_OUTPUT%\CS-Map
+SET MG_OUTPUT_TEST=%MG_OUTPUT%\Test
 SET MG_BUILD_COMPONENT=
 
 SET MG_DEFAULT_INSTALLDIR=C:\Program Files\MapGuideOpenSource2.0
@@ -88,11 +90,11 @@
 rem running
 rem ==================================================
 
-IF "%JAVA_HOME%" == "" SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_31
+IF "%JAVA_HOME%" == "" SET JAVA_HOME=C:\Program Files\Java\jdk1.7.0_71
 IF "%DOXYGEN%" == "" SET DOXYGEN=C:\Program Files\doxygen\bin
 IF "%GNUWIN32%" == "" SET GNUWIN32=C:\Program Files (x86)\GnuWin32\bin
 IF "%SEVENZ%" == "" SET SEVENZ=%MG_DEV%\BuildTools\WebTools\7-Zip
-IF "%ANT_HOME%" == "" SET ANT_HOME=C:\apache-ant-1.8.3
+IF "%ANT_HOME%" == "" SET ANT_HOME=C:\apache-ant
 
 SET PATH=%PATH%;%DOXYGEN%;%GNUWIN32%;%SEVENZ%;%ANT_HOME%\bin
 rem ==================================================

Added: trunk/MgDev/test_readme.txt
===================================================================
--- trunk/MgDev/test_readme.txt	                        (rev 0)
+++ trunk/MgDev/test_readme.txt	2015-02-02 11:59:46 UTC (rev 8527)
@@ -0,0 +1,86 @@
+MapGuide Test Suite Overview
+============================
+
+The MapGuide Test Suite contains the test data and applications that can be used to validate and verify a given installation of MapGuide
+
+The test data in this suite is required for the MapGuide Server tests to run properly
+
+Usage
+=====
+
+To run the test suite on Windows, run the command as follows:
+
+run_tests.bat [-p=Platform]
+              [-t=TestSuite]
+              [-m=MapAgent]
+              [-w=WebRoot]
+              [-s=ServerPath]
+              [-ws=WebServerName]
+              [-wp=WebServerPort]
+              [-iw]
+
+To run the test suite on Linux, run the command as follows:
+
+run_tests.sh [-p=Platform]
+             [-t=TestSuite]
+             [-m=MapAgent]
+             [-w=WebRoot]
+             [-s=ServerPath]
+
+Where the parameters are:
+
+Use Integrated PHP Web Server: -iw
+
+Platform: -p[latform]=x86 (default)
+                      x64
+
+TestSuite: -t[est]=server (default)
+                   php
+                   phpagent
+                   dotnet
+                   java
+                   all
+                   
+MapAgent:  -m[apagent]=<your mapagent url>
+
+WebRoot:   -w[ebroot]=<path to your web root www>
+
+ServerPath: -s[erverpath]=<path to your server bin directory>
+
+WebServerName: -ws=Host name of web server
+
+WebServerPort: -wp=Port number of web server
+
+Requirements
+============
+ - An installed/pre-configured copy of MapGuide Open Source, this could be installed by the Windows installer, or configured via the InstantSetup utility
+ - Java SDK (if running the Java test suite). It must be the same bitness as your MapGuide Server. If you have a 32-bit MapGuide installed, you must use a 32-bit JDK
+ - Apache Ant (if running the Java test suite)
+ - .net Framework 4.5 (if running the .net test suite)
+
+General Notes (Windows):
+========================
+
+If your MapGuide Server is running as a service, it has to be stopped when running any test suite, as they will start the mgserver executable before
+running their tests, and tear it down when finished.
+
+You must have the following environment variables set:
+ - JAVA_HOME points to an installation of the Java SDK of the same bitness as the installation of MapGuide you are testing against
+ - PATH contains the path to your installation of Apache Ant
+
+You must have a copy of the Sheboygan dataset in the UnitTest/TestData/Samples/Sheboygan directory. You can either download a copy and put it in this
+directory, or if you have 7-zip in the PATH environment variable, you can run the build.bat file in this direcotry to build Sheboygan.mgp from the existing
+data files.
+
+If running on an installation of MapGuide installed with the Windows installer, you will need elevated privileges to run this batch file in order
+to run the server test suite as part of preparation the batch file will have to copy all the required test data to a location under Program Files, an
+area that needs elevated privileges to write files to.
+
+Depending on your installation configuration you may not be able to run certain test suites. For example, if you did not enable Java for your MapGuide
+installation, don't expect the Java test suite to run or pass. As a general rule, the following test suites can be run under the given conditions:
+
+ * server: always (provided you have elevated privileges for a non-InstantSetup installation)
+ * php: always (provided you supply the correct WebRoot path)
+ * dotnet: You must supply the correct WebRoot path and mapviewernet\bin is assumed to exist under this path and contains the required .net assemblies and dlls
+ * java: You must supply the correct WebRoot path and WEB-INF\lib is assumed to exist under this path and contains the required JAR files
+ * all: All of the above conditions must be satisfied
\ No newline at end of file



More information about the mapguide-commits mailing list