[mapguide-commits] r7960 - trunk/Tools/Maestro/MaestroAPITestRunner

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Mon Dec 23 00:58:44 PST 2013


Author: jng
Date: 2013-12-23 00:58:44 -0800 (Mon, 23 Dec 2013)
New Revision: 7960

Added:
   trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.LocalNative.xml
Modified:
   trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj
   trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.xml
Log:
#2138: Include the Maestro API Test Runner as part of the SDK build output. This gives us the means to do basic verification of a LocalNative provider built with the ProviderTemplate tool. A SDK-specific test configuration is copied to the SDK build output in release mode, which disables Local connection tests as the SDK does not bundle mg-desktop and FDO dlls and data files.

Modified: trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj	2013-12-20 15:15:19 UTC (rev 7959)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/MaestroAPITestRunner.csproj	2013-12-23 08:58:44 UTC (rev 7960)
@@ -54,8 +54,15 @@
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
     <PlatformTarget>x86</PlatformTarget>
+    <UseVSHostingProcess>false</UseVSHostingProcess>
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="Ciloci.Flee">
+      <HintPath>..\Thirdparty\Flee\lib\Ciloci.Flee.dll</HintPath>
+    </Reference>
+    <Reference Include="NetTopologySuite.Merged">
+      <HintPath>..\Thirdparty\NTS\NetTopologySuite.Merged.dll</HintPath>
+    </Reference>
     <Reference Include="nunit-console-runner, Version=2.5.5.10112, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\Thirdparty\NUnit\bin\net-2.0\lib\nunit-console-runner.dll</HintPath>
@@ -85,6 +92,7 @@
     <ProjectReference Include="..\OSGeo.MapGuide.MaestroAPI.Local\OSGeo.MapGuide.MaestroAPI.Local.csproj">
       <Project>{3ddf6501-0148-474c-8674-7c7da49c7f02}</Project>
       <Name>OSGeo.MapGuide.MaestroAPI.Local</Name>
+      <Private>False</Private>
     </ProjectReference>
     <ProjectReference Include="..\OSGeo.MapGuide.MaestroAPI\OSGeo.MapGuide.MaestroAPI.csproj">
       <Project>{80FA3158-8B5F-48D1-A393-0378AFE48A7E}</Project>
@@ -101,6 +109,7 @@
     <Content Include="ConnectionProviders.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>
+    <Content Include="TestMaestroAPI.LocalNative.xml" />
     <Content Include="TestMaestroAPI.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>
@@ -131,11 +140,25 @@
   </Target>
   -->
   <PropertyGroup>
-    <PostBuildEvent>IF EXIST "$(ProjectDir)Setup" XCOPY /Y /I "$(ProjectDir)Setup\*.*" "$(ProjectDir)$(OutDir)"
+    <PostBuildEvent>echo Performing post-build for Test Runner in $(ConfigurationName)
+IF "$(ConfigurationName)" == "Release" (
+IF NOT EXIST "$(SolutionDir)..\SDK\Test" MKDIR "$(SolutionDir)..\SDK\Test"
+echo Copy binaries to SDK output dir
+echo XCOPY /S /Y /I "$(TargetDir)*.*" "$(SolutionDir)..\SDK\Test"
+XCOPY /S /Y /I "$(TargetDir)*.*" "$(SolutionDir)..\SDK\Test"
+echo Copy SDK test configuration
+COPY /Y "$(ProjectDir)TestMaestroAPI.LocalNative.xml" "$(SolutionDir)..\SDK\Test\TestMaestroAPI.xml"
+) ELSE (
+echo Copy CS-Map Dictionaries
 IF NOT EXIST "$(OutDir)Dictionaries" XCOPY /S /Y /I "$(SolutionDir)..\Maestro.AddIn.Local\Dictionaries\*.*" "$(ProjectDir)$(OutDir)Dictionaries"
+echo Copy FDO dlls
 IF NOT EXIST "$(OutDir)FDO" XCOPY /S /Y /I "$(SolutionDir)..\Maestro.AddIn.Local\FDO\*.*" "$(ProjectDir)$(OutDir)FDO"
+echo Copy MapGuide XML schemas
 IF NOT EXIST "$(OutDir)Schemas" XCOPY /S /Y /I "$(SolutionDir)..\OSGeo.MapGuide.MaestroAPI\Schemas\*.*" "$(ProjectDir)$(OutDir)Schemas"
+echo Copy mg-desktop string bundle
 IF NOT EXIST "$(OutDir)Resources" XCOPY /S /Y /I "$(SolutionDir)..\Maestro.AddIn.Local\Resources\*.res" "$(ProjectDir)$(OutDir)Resources"
-COPY /Y "$(SolutionDir)..\Maestro.AddIn.Local\*.dll" "$(ProjectDir)$(OutDir)"</PostBuildEvent>
+echo Copy Maestro API Local connection dlls
+COPY /Y "$(SolutionDir)..\OSGeo.MapGuide.MaestroAPI.Local\bin\$(ConfigurationName)\OSGeo.MapGuide.MaestroAPI.Local.*" "$(ProjectDir)$(OutDir)"
+COPY /Y "$(SolutionDir)..\Maestro.AddIn.Local\*.dll" "$(ProjectDir)$(OutDir)" )</PostBuildEvent>
   </PropertyGroup>
 </Project>
\ No newline at end of file

Added: trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.LocalNative.xml
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.LocalNative.xml	                        (rev 0)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.LocalNative.xml	2013-12-23 08:58:44 UTC (rev 7960)
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!--
+Maestro API test configuration file
+
+Configured for exercising the LocalNative provider created by the ProviderTemplate tool and everything else in the Maestro API
+except for Local Connection and GeoREST support
+-->
+<TestConfiguration>
+  <TestSettings>
+    <!-- 
+    The path to webconfig.ini required by the LocalNative provider to run its specific tests. Should come from the same 
+    MapGuide installation where you have sourced the .net assemblies used to build your own LocalNative provider with the 
+    ProviderTemplate tool in the Maestro SDK
+    -->
+    <LocalNativeConfigFile>C:\Program Files\OSGeo\MapGuide\Web\www\webconfig.ini</LocalNativeConfigFile>
+    <!--
+    The MapGuide user account for running the LocalNative provider tests under
+    -->
+    <LocalNativeUsername>Administrator</LocalNativeUsername>
+    <!--
+    The password for the MapGuide user account for running the LocalNative provider tests under
+    -->
+    <LocalNativePassword>admin</LocalNativePassword>
+    <!--
+    The path to the Platform.ini required by the Local connection provider to run its specific tests.
+    -->
+    <LocalConfigFile>Platform.ini</LocalConfigFile>
+    <!--
+    The mapagent URL required for running the HTTP provider tests
+    -->
+    <HttpUrl>http://localhost/mapguide/mapagent/mapagent.fcgi</HttpUrl>
+    <!--
+    The MapGuide user account for running the HTTP provider tests under
+    -->
+    <HttpUsername>Administrator</HttpUsername>
+    <!--
+    The password for the MapGuide user account for running the HTTP provider tests under
+    -->
+    <HttpPassword>admin</HttpPassword>
+    <!--
+    The URL for the GeoREST endpoint for running the HTTP provider tests with GeoREST support
+    -->
+    <GeoRestUrl>http://localhost:99/</GeoRestUrl>
+    <!--
+    The path to the GeoREST test configuration file, needed by this GeoREST test suite
+    -->
+    <GeoRestConfig>UserTestData\GeoRestConfig.xml</GeoRestConfig>
+  </TestSettings>
+  <TestControl>
+    <!-- Core API -->
+    <IgnoreConfigurationTests>false</IgnoreConfigurationTests>
+    <IgnoreCapabilityTests>false</IgnoreCapabilityTests>
+    <IgnoreExpressionTests>false</IgnoreExpressionTests>
+    <IgnoreFeatureReaderTests>false</IgnoreFeatureReaderTests>
+    <IgnoreObjectTests>false</IgnoreObjectTests>
+    <IgnoreResourceTests>false</IgnoreResourceTests>
+    <IgnoreSchemaTests>false</IgnoreSchemaTests>
+    <IgnoreSerializationTests>false</IgnoreSerializationTests>
+    <IgnoreValidationTests>false</IgnoreValidationTests>
+    <IgnoreMiscTests>false</IgnoreMiscTests>
+    <!-- Functionality that uses the HTTP connection provider -->
+    <IgnoreHttpConnectionTests>false</IgnoreHttpConnectionTests>
+    <IgnoreHttpSiteTests>false</IgnoreHttpSiteTests>
+    <IgnoreHttpRuntimeMapTests>false</IgnoreHttpRuntimeMapTests>
+    <!-- Local Connection tests are disabled because the SDK Test Runner does not bundle mg-desktop and supporting libraries/datafiles -->
+    <IgnoreLocalRuntimeMapTests>true</IgnoreLocalRuntimeMapTests>
+    <IgnoreLocalFeatureTests>true</IgnoreLocalFeatureTests>
+    <!-- Functionality that uses the Local connection provider -->
+    <IgnoreLocalNativeRuntimeMapTests>false</IgnoreLocalNativeRuntimeMapTests>
+    <IgnoreLocalNativePerformanceTests>false</IgnoreLocalNativePerformanceTests>
+    <IgnoreLocalNativeFeatureTests>false</IgnoreLocalNativeFeatureTests>
+    <!-- GeoREST disabled because not every MapGuide installation has it installed -->
+    <IgnoreGeoRestTests>true</IgnoreGeoRestTests>
+  </TestControl>
+</TestConfiguration>
\ No newline at end of file

Modified: trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.xml
===================================================================
--- trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.xml	2013-12-20 15:15:19 UTC (rev 7959)
+++ trunk/Tools/Maestro/MaestroAPITestRunner/TestMaestroAPI.xml	2013-12-23 08:58:44 UTC (rev 7960)
@@ -1,35 +1,78 @@
 <?xml version="1.0" encoding="utf-8" ?>
+<!--
+Maestro API test configuration file
+
+Configured for exercising everything in the Maestro API except for LocalNative connection providers and GeoREST
+-->
 <TestConfiguration>
   <TestSettings>
-    <LocalNativeConfigFile>MGOS22\webconfig.ini</LocalNativeConfigFile>
+    <!-- 
+    The path to webconfig.ini required by the LocalNative provider to run its specific tests. Should come from the same 
+    MapGuide installation where you have sourced the .net assemblies used to build your own LocalNative provider with the 
+    ProviderTemplate tool in the Maestro SDK
+    -->
+    <LocalNativeConfigFile>C:\Program Files\OSGeo\MapGuide\Web\www\webconfig.ini</LocalNativeConfigFile>
+    <!--
+    The MapGuide user account for running the LocalNative provider tests under
+    -->
     <LocalNativeUsername>Administrator</LocalNativeUsername>
+    <!--
+    The password for the MapGuide user account for running the LocalNative provider tests under
+    -->
     <LocalNativePassword>admin</LocalNativePassword>
+    <!--
+    The path to the Platform.ini required by the Local connection provider to run its specific tests.
+    -->
     <LocalConfigFile>Platform.ini</LocalConfigFile>
+    <!--
+    The mapagent URL required for running the HTTP provider tests
+    -->
     <HttpUrl>http://localhost/mapguide/mapagent/mapagent.fcgi</HttpUrl>
+    <!--
+    The MapGuide user account for running the HTTP provider tests under
+    -->
     <HttpUsername>Administrator</HttpUsername>
+    <!--
+    The password for the MapGuide user account for running the HTTP provider tests under
+    -->
     <HttpPassword>admin</HttpPassword>
+    <!--
+    The URL for the GeoREST endpoint for running the HTTP provider tests with GeoREST support
+    -->
     <GeoRestUrl>http://localhost:99/</GeoRestUrl>
+    <!--
+    The path to the GeoREST test configuration file, needed by this GeoREST test suite
+    -->
     <GeoRestConfig>UserTestData\GeoRestConfig.xml</GeoRestConfig>
   </TestSettings>
   <TestControl>
+    <!-- Core API -->
     <IgnoreConfigurationTests>false</IgnoreConfigurationTests>
     <IgnoreCapabilityTests>false</IgnoreCapabilityTests>
     <IgnoreExpressionTests>false</IgnoreExpressionTests>
     <IgnoreFeatureReaderTests>false</IgnoreFeatureReaderTests>
+    <IgnoreObjectTests>false</IgnoreObjectTests>
+    <IgnoreResourceTests>false</IgnoreResourceTests>
+    <IgnoreSchemaTests>false</IgnoreSchemaTests>
+    <IgnoreSerializationTests>false</IgnoreSerializationTests>
+    <IgnoreValidationTests>false</IgnoreValidationTests>
+    <IgnoreMiscTests>false</IgnoreMiscTests>
+    <!-- Functionality that uses the HTTP connection provider -->
     <IgnoreHttpConnectionTests>false</IgnoreHttpConnectionTests>
     <IgnoreHttpSiteTests>false</IgnoreHttpSiteTests>
-    <IgnoreObjectTests>false</IgnoreObjectTests>
-    <IgnoreResourceTests>false</IgnoreResourceTests>
     <IgnoreHttpRuntimeMapTests>false</IgnoreHttpRuntimeMapTests>
+    <!-- Functionality that uses the Local connection provider -->
     <IgnoreLocalRuntimeMapTests>false</IgnoreLocalRuntimeMapTests>
+    <IgnoreLocalFeatureTests>false</IgnoreLocalFeatureTests>
+    <!-- 
+    Local Native connection provider tests are disabled as the standard test profile does not cover
+    this functionality. The Test Runner configuration in the Maestro SDK enables such tests, while
+    disabling the Local Connection ones (because it doesn't include mg-desktop and supporting libs/datafiles)
+    -->
     <IgnoreLocalNativeRuntimeMapTests>true</IgnoreLocalNativeRuntimeMapTests>
     <IgnoreLocalNativePerformanceTests>true</IgnoreLocalNativePerformanceTests>
     <IgnoreLocalNativeFeatureTests>true</IgnoreLocalNativeFeatureTests>
+    <!-- GeoREST disabled because not every MapGuide installation has it installed -->
     <IgnoreGeoRestTests>true</IgnoreGeoRestTests>
-    <IgnoreLocalFeatureTests>false</IgnoreLocalFeatureTests>
-    <IgnoreSchemaTests>false</IgnoreSchemaTests>
-    <IgnoreSerializationTests>false</IgnoreSerializationTests>
-    <IgnoreValidationTests>false</IgnoreValidationTests>
-    <IgnoreMiscTests>false</IgnoreMiscTests>
   </TestControl>
 </TestConfiguration>
\ No newline at end of file



More information about the mapguide-commits mailing list