[mapguide-commits] r8475 - in trunk/Tools/Maestro: . Maestro Maestro/packages OSGeo.MapGuide.MaestroAPI/CrossConnection OSGeo.MapGuide.MaestroAPI.Tests OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Sat Dec 27 10:37:51 PST 2014


Author: jng
Date: 2014-12-27 10:37:51 -0800 (Sat, 27 Dec 2014)
New Revision: 8475

Added:
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceMigratorTests.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceRebaserTests.cs
Modified:
   trunk/Tools/Maestro/Maestro/Maestro_All.sln
   trunk/Tools/Maestro/Maestro/packages/
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/ConfigurationDocumentTests.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/OSGeo.MapGuide.MaestroAPI.Tests.csproj
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/SchemaTests.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceMigrator.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceRebaser.cs
   trunk/Tools/Maestro/UnitTests.playlist
Log:
Unit test suite expansion

Modified: trunk/Tools/Maestro/Maestro/Maestro_All.sln
===================================================================
--- trunk/Tools/Maestro/Maestro/Maestro_All.sln	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/Maestro/Maestro_All.sln	2014-12-27 18:37:51 UTC (rev 8475)
@@ -123,145 +123,283 @@
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
+		Debug|Mixed Platforms = Debug|Mixed Platforms
 		Release|Any CPU = Release|Any CPU
+		Release|Mixed Platforms = Release|Mixed Platforms
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
 		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.Build.0 = Release|Any CPU
+		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU
+		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{F1E2F468-5030-4DBA-968C-9620284AFAA1}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Release|Any CPU.Build.0 = Release|Any CPU
+		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{59BE5E18-17B6-431D-836E-C0AABA6D69E8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Release|Any CPU.Build.0 = Release|Any CPU
+		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{32BA7DF6-1AFA-441D-9231-5624C5920706}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Release|Any CPU.Build.0 = Release|Any CPU
+		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{C7DCF771-5982-4859-A17F-01126E6F9BA6}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{0FD82B7B-1264-410F-86D1-47E9CCACD68E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Release|Any CPU.Build.0 = Release|Any CPU
+		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{5AD2CDBA-952E-4148-98A1-31D2E0D540D5}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Release|Any CPU.Build.0 = Release|Any CPU
+		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{07588440-5F9F-4C30-AA06-9CF30BA6DDE6}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{0EA33E36-9C33-4D60-B378-B87FADAA0F40}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Release|Any CPU.Build.0 = Release|Any CPU
+		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{CFD19053-2172-41D3-8460-0FD2123A1E88}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Release|Any CPU.Build.0 = Release|Any CPU
+		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{80FA3158-8B5F-48D1-A393-0378AFE48A7E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Release|Any CPU.Build.0 = Release|Any CPU
+		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{6EF1E775-444B-4E5F-87FB-D687C43A68D7}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Release|Any CPU.Build.0 = Release|Any CPU
+		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{351D49A3-2E4A-4EC3-AFC2-D56598F44F51}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Release|Any CPU.Build.0 = Release|Any CPU
+		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{50C12B5C-387C-4007-A1D1-CB181CB474CC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{3DDF6501-0148-474C-8674-7C7DA49C7F02}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Release|Any CPU.Build.0 = Release|Any CPU
+		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{2419F940-BFB7-4F3F-B5DA-1052EB4706E5}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Release|Any CPU.Build.0 = Release|Any CPU
+		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{6EE16FFD-296E-42FF-B994-8902C27AA0F4}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{D24F724A-1CBF-4EB6-A48B-92C08353C4CC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{F4420153-9DF3-4407-AD65-E8ABED2B6E25}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Release|Any CPU.Build.0 = Release|Any CPU
+		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{8787FF3F-552F-46BE-B9D7-548B6162B079}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{E204559D-EE92-4792-96E2-06F45654FAFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{E204559D-EE92-4792-96E2-06F45654FAFC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{E204559D-EE92-4792-96E2-06F45654FAFC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{E204559D-EE92-4792-96E2-06F45654FAFC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{E204559D-EE92-4792-96E2-06F45654FAFC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{E204559D-EE92-4792-96E2-06F45654FAFC}.Release|Any CPU.Build.0 = Release|Any CPU
+		{E204559D-EE92-4792-96E2-06F45654FAFC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{E204559D-EE92-4792-96E2-06F45654FAFC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{3591C5BB-2B87-4FB4-AD87-9C8176DF9835}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Release|Any CPU.Build.0 = Release|Any CPU
+		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Release|Any CPU.Build.0 = Release|Any CPU
+		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{9CC51643-37D6-4B8F-A0EA-E7606AA561EB}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Release|Any CPU.Build.0 = Release|Any CPU
+		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{4F9658DE-D16F-4B40-B830-BB1E0136DBD7}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Debug|Any CPU.ActiveCfg = Debug|x86
 		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Debug|Any CPU.Build.0 = Debug|x86
+		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
+		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Debug|Mixed Platforms.Build.0 = Debug|x86
 		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Release|Any CPU.ActiveCfg = Release|x86
 		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Release|Any CPU.Build.0 = Release|x86
+		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Release|Mixed Platforms.ActiveCfg = Release|x86
+		{F1EDEB83-D09F-46E0-B655-B43D4D9682DD}.Release|Mixed Platforms.Build.0 = Release|x86
 		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{EDDBBE17-E9A9-43FB-99FE-38DD8E10607A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Release|Any CPU.Build.0 = Release|Any CPU
+		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{E0C36475-2B70-4F6D-ACE0-8943167806DC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Release|Any CPU.Build.0 = Release|Any CPU
+		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{AA5EF530-B95C-4C8F-BE9F-52C225613DF9}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{43B01C27-E0D2-439B-83ED-8C814ED1526A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Release|Any CPU.Build.0 = Release|Any CPU
+		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{48C5EB23-45AE-4C4C-8FAB-635428AE8CA1}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{D32BE7DB-D0C3-4805-A057-18312370C57E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{28224492-7383-46BD-AE64-2DA35243175C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{28224492-7383-46BD-AE64-2DA35243175C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{28224492-7383-46BD-AE64-2DA35243175C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{28224492-7383-46BD-AE64-2DA35243175C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{28224492-7383-46BD-AE64-2DA35243175C}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{28224492-7383-46BD-AE64-2DA35243175C}.Release|Any CPU.Build.0 = Release|Any CPU
+		{28224492-7383-46BD-AE64-2DA35243175C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{28224492-7383-46BD-AE64-2DA35243175C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE


Property changes on: trunk/Tools/Maestro/Maestro/packages
___________________________________________________________________
Modified: svn:ignore
   - DockPanelSuite.2.9.0.0
fleesharp.0.9.27-pre
IronPython.2.7.4
IronPython.StdLib.2.7.4
NUnit.2.6.3
SharpZipLib.0.86.0
TreeViewAdv.1.7.0.0
mapguide-api-base-x86.2.5.2.7949
mg-desktop-net40-x86.2.5.2.7949
mg-desktop-viewer-net40-x86.2.5.2.7949
RestSharp.105.0.1
Moq.4.2.1409.1722

   + DockPanelSuite.2.9.0.0
fleesharp.0.9.27-pre
IronPython.2.7.4
IronPython.StdLib.2.7.4
NUnit.2.6.3
SharpZipLib.0.86.0
TreeViewAdv.1.7.0.0
mapguide-api-base-x86.2.5.2.7949
mg-desktop-net40-x86.2.5.2.7949
mg-desktop-viewer-net40-x86.2.5.2.7949
RestSharp.105.0.1
Moq.4.2.1409.1722
NUnit.2.6.2


Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceMigrator.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceMigrator.cs	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceMigrator.cs	2014-12-27 18:37:51 UTC (rev 8475)
@@ -79,8 +79,8 @@
         /// <param name="target">The target.</param>
         public ResourceMigrator(IServerConnection source, IServerConnection target)
         {
-            Check.NotNull(source, "source"); //NOXLATE
-            Check.NotNull(target, "target"); //NOXLATE
+            Check.ArgumentNotNull(source, "source"); //NOXLATE
+            Check.ArgumentNotNull(target, "target"); //NOXLATE
             _source = source;
             _target = target;
             _converter = new ResourceObjectConverter();
@@ -217,8 +217,7 @@
             {
                 string targetId = folderId + ResourceIdentifier.GetName(resId) + "." + ResourceIdentifier.GetResourceTypeAsString(resId); //NOXLATE
                 string message = string.Empty;
-                IResource res = _source.ResourceService.GetResource(resId);
-
+                
                 //Skip if target exists and overwrite is not specified
                 if (!overwrite && _target.ResourceService.ResourceExists(targetId))
                 {
@@ -227,6 +226,7 @@
                 }
                 else
                 {
+                    IResource res = _source.ResourceService.GetResource(resId);
                     //Check if downgrading is required
                     var maxVer = targetCaps.GetMaxSupportedResourceVersion(res.ResourceType);
                     if (res.ResourceVersion > maxVer)
@@ -300,7 +300,6 @@
             {
                 string targetId = folderId + ResourceIdentifier.GetName(resId) + "." + ResourceIdentifier.GetResourceTypeAsString(resId); //NOXLATE
                 string message = string.Empty;
-                IResource res = _source.ResourceService.GetResource(resId);
 
                 //Skip if target exists and overwrite is not specified
                 if (!overwrite && _target.ResourceService.ResourceExists(targetId))
@@ -310,6 +309,7 @@
                 }
                 else
                 {
+                    IResource res = _source.ResourceService.GetResource(resId);
                     //Check if downgrading is required
                     var maxVer = targetCaps.GetMaxSupportedResourceVersion(res.ResourceType);
                     if (res.ResourceVersion > maxVer)

Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceRebaser.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceRebaser.cs	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/CrossConnection/ResourceRebaser.cs	2014-12-27 18:37:51 UTC (rev 8475)
@@ -78,6 +78,7 @@
         /// <param name="res">The res.</param>
         public ResourceRebaser(IResource res)
         {
+            Check.ArgumentNotNull(res, "res");
             _res = res;
         }
 


Property changes on: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests
___________________________________________________________________
Modified: svn:ignore
   - bin
obj

   + bin
obj
*.user


Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/ConfigurationDocumentTests.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/ConfigurationDocumentTests.cs	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/ConfigurationDocumentTests.cs	2014-12-27 18:37:51 UTC (rev 8475)
@@ -1,23 +1,23 @@
-#region Disclaimer / License
-
-// Copyright (C) 2014, Jackie Ng
-// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-//
-
+#region Disclaimer / License
+
+// Copyright (C) 2014, Jackie Ng
+// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+//
+
 #endregion Disclaimer / License
 using NUnit.Framework;
 using OSGeo.MapGuide.MaestroAPI.Schema;

Added: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceMigratorTests.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceMigratorTests.cs	                        (rev 0)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceMigratorTests.cs	2014-12-27 18:37:51 UTC (rev 8475)
@@ -0,0 +1,365 @@
+#region Disclaimer / License
+
+// Copyright (C) 2014, Jackie Ng
+// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+//
+
+#endregion Disclaimer / License
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using OSGeo.MapGuide.MaestroAPI.CrossConnection;
+using NUnit.Framework;
+using Moq;
+using OSGeo.MapGuide.ObjectModels;
+using OSGeo.MapGuide.MaestroAPI.Services;
+using OSGeo.MapGuide.ObjectModels.Common;
+namespace OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests
+{
+    [TestFixture()]
+    public class ResourceMigratorTests
+    {
+        [Test()]
+        public void ResourceMigratorTest()
+        {
+            var source = new Mock<IServerConnection>();
+            var target = new Mock<IServerConnection>();
+
+            Assert.Throws<ArgumentNullException>(() => new ResourceMigrator(null, null));
+            Assert.Throws<ArgumentNullException>(() => new ResourceMigrator(source.Object, null));
+            Assert.Throws<ArgumentNullException>(() => new ResourceMigrator(null, target.Object));
+
+            var mig = new ResourceMigrator(source.Object, target.Object);
+            Assert.NotNull(mig.Source);
+            Assert.NotNull(mig.Target);
+        }
+
+        [Test()]
+        public void CopyResourcesWithOverwriteTest()
+        {
+            var sr = new Mock<IResourceService>();
+            var tr = new Mock<IResourceService>();
+
+            var tc = new Mock<IConnectionCapabilities>();
+            tc.Setup(c => c.GetMaxSupportedResourceVersion(It.IsAny<string>())).Returns(new Version(1, 0, 0));
+
+            var source = new Mock<IServerConnection>();
+            var target = new Mock<IServerConnection>();
+
+            var emptyDataList = new ResourceDataList() { ResourceData = new System.ComponentModel.BindingList<ResourceDataListResourceData>() };
+
+            string [] resources = new string[]
+            {
+                "Library://Test/Data.FeatureSource",
+                "Library://Test/Data1.FeatureSource",
+                "Library://Test/Data2.FeatureSource",
+                "Library://Test/Data3.FeatureSource",
+                "Library://Test/Data4.FeatureSource",
+            };
+
+            var res1 = new Mock<IResource>();
+            var res2 = new Mock<IResource>();
+            var res3 = new Mock<IResource>();
+            var res4 = new Mock<IResource>();
+            var res5 = new Mock<IResource>();
+
+            res1.Setup(r => r.ResourceID).Returns(resources[0]);
+            res2.Setup(r => r.ResourceID).Returns(resources[1]);
+            res3.Setup(r => r.ResourceID).Returns(resources[2]);
+            res4.Setup(r => r.ResourceID).Returns(resources[3]);
+            res5.Setup(r => r.ResourceID).Returns(resources[4]);
+
+            sr.Setup(r => r.EnumerateResourceData(It.IsAny<string>())).Returns(emptyDataList);
+            sr.Setup(r => r.GetResource(resources[0])).Returns(res1.Object);
+            sr.Setup(r => r.GetResource(resources[1])).Returns(res2.Object);
+            sr.Setup(r => r.GetResource(resources[2])).Returns(res3.Object);
+            sr.Setup(r => r.GetResource(resources[3])).Returns(res4.Object);
+            sr.Setup(r => r.GetResource(resources[4])).Returns(res5.Object);
+            //tr.Setup(r => r.ResourceExists(It.IsAny<string>())).Returns(false);
+
+            source.Setup(c => c.ResourceService).Returns(sr.Object);
+            target.Setup(c => c.ResourceService).Returns(tr.Object);
+            target.Setup(c => c.Capabilities).Returns(tc.Object);
+
+            var mig = new ResourceMigrator(source.Object, target.Object);
+            Assert.NotNull(mig.Source);
+            Assert.NotNull(mig.Target);
+
+            int migrated = mig.CopyResources(resources, "Library://Migrated/", true, null);
+            Assert.AreEqual(5, migrated);
+
+            sr.Verify(c => c.GetResource(resources[0]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[1]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[2]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[3]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[4]), Times.Once);
+
+            sr.Verify(c => c.EnumerateResourceData(resources[0]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[1]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[2]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[3]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[4]), Times.Once);
+
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), It.IsAny<string>()), Times.Exactly(5));
+        }
+
+        [Test()]
+        public void CopyResourcesWithoutOverwriteTest()
+        {
+            var sr = new Mock<IResourceService>();
+            var tr = new Mock<IResourceService>();
+
+            var tc = new Mock<IConnectionCapabilities>();
+            tc.Setup(c => c.GetMaxSupportedResourceVersion(It.IsAny<string>())).Returns(new Version(1, 0, 0));
+
+            var source = new Mock<IServerConnection>();
+            var target = new Mock<IServerConnection>();
+
+            var emptyDataList = new ResourceDataList() { ResourceData = new System.ComponentModel.BindingList<ResourceDataListResourceData>() };
+
+            string[] resources = new string[]
+            {
+                "Library://Test/Data.FeatureSource",
+                "Library://Test/Data1.FeatureSource",
+                "Library://Test/Data2.FeatureSource",
+                "Library://Test/Data3.FeatureSource",
+                "Library://Test/Data4.FeatureSource",
+            };
+
+            var res1 = new Mock<IResource>();
+            var res2 = new Mock<IResource>();
+            var res3 = new Mock<IResource>();
+            var res4 = new Mock<IResource>();
+            var res5 = new Mock<IResource>();
+
+            res1.Setup(r => r.ResourceID).Returns(resources[0]);
+            res2.Setup(r => r.ResourceID).Returns(resources[1]);
+            res3.Setup(r => r.ResourceID).Returns(resources[2]);
+            res4.Setup(r => r.ResourceID).Returns(resources[3]);
+            res5.Setup(r => r.ResourceID).Returns(resources[4]);
+
+            sr.Setup(r => r.EnumerateResourceData(It.IsAny<string>())).Returns(emptyDataList);
+            sr.Setup(r => r.GetResource(resources[0])).Returns(res1.Object);
+            sr.Setup(r => r.GetResource(resources[1])).Returns(res2.Object);
+            sr.Setup(r => r.GetResource(resources[2])).Returns(res3.Object);
+            sr.Setup(r => r.GetResource(resources[3])).Returns(res4.Object);
+            sr.Setup(r => r.GetResource(resources[4])).Returns(res5.Object);
+
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data.FeatureSource")).Returns(false);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data1.FeatureSource")).Returns(true);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data2.FeatureSource")).Returns(true);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data3.FeatureSource")).Returns(false);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data4.FeatureSource")).Returns(false);
+
+            source.Setup(c => c.ResourceService).Returns(sr.Object);
+            target.Setup(c => c.ResourceService).Returns(tr.Object);
+            target.Setup(c => c.Capabilities).Returns(tc.Object);
+
+            var mig = new ResourceMigrator(source.Object, target.Object);
+            Assert.NotNull(mig.Source);
+            Assert.NotNull(mig.Target);
+
+            int migrated = mig.CopyResources(resources, "Library://Migrated/", false, null);
+            Assert.AreEqual(3, migrated);
+
+            sr.Verify(c => c.GetResource(resources[0]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[1]), Times.Never);
+            sr.Verify(c => c.GetResource(resources[2]), Times.Never);
+            sr.Verify(c => c.GetResource(resources[3]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[4]), Times.Once);
+
+            sr.Verify(c => c.EnumerateResourceData(resources[0]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[1]), Times.Never);
+            sr.Verify(c => c.EnumerateResourceData(resources[2]), Times.Never);
+            sr.Verify(c => c.EnumerateResourceData(resources[3]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[4]), Times.Once);
+
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data.FeatureSource"), Times.Once);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data1.FeatureSource"), Times.Never);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data2.FeatureSource"), Times.Never);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data3.FeatureSource"), Times.Once);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data4.FeatureSource"), Times.Once);
+        }
+
+        [Test()]
+        public void MoveResourcesWithOverwriteTest()
+        {
+            var sr = new Mock<IResourceService>();
+            var tr = new Mock<IResourceService>();
+
+            var tc = new Mock<IConnectionCapabilities>();
+            tc.Setup(c => c.GetMaxSupportedResourceVersion(It.IsAny<string>())).Returns(new Version(1, 0, 0));
+
+            var source = new Mock<IServerConnection>();
+            var target = new Mock<IServerConnection>();
+
+            var emptyDataList = new ResourceDataList() { ResourceData = new System.ComponentModel.BindingList<ResourceDataListResourceData>() };
+
+            string[] resources = new string[]
+            {
+                "Library://Test/Data.FeatureSource",
+                "Library://Test/Data1.FeatureSource",
+                "Library://Test/Data2.FeatureSource",
+                "Library://Test/Data3.FeatureSource",
+                "Library://Test/Data4.FeatureSource",
+            };
+
+            var res1 = new Mock<IResource>();
+            var res2 = new Mock<IResource>();
+            var res3 = new Mock<IResource>();
+            var res4 = new Mock<IResource>();
+            var res5 = new Mock<IResource>();
+
+            res1.Setup(r => r.ResourceID).Returns(resources[0]);
+            res2.Setup(r => r.ResourceID).Returns(resources[1]);
+            res3.Setup(r => r.ResourceID).Returns(resources[2]);
+            res4.Setup(r => r.ResourceID).Returns(resources[3]);
+            res5.Setup(r => r.ResourceID).Returns(resources[4]);
+
+            sr.Setup(r => r.EnumerateResourceData(It.IsAny<string>())).Returns(emptyDataList);
+            sr.Setup(r => r.GetResource(resources[0])).Returns(res1.Object);
+            sr.Setup(r => r.GetResource(resources[1])).Returns(res2.Object);
+            sr.Setup(r => r.GetResource(resources[2])).Returns(res3.Object);
+            sr.Setup(r => r.GetResource(resources[3])).Returns(res4.Object);
+            sr.Setup(r => r.GetResource(resources[4])).Returns(res5.Object);
+            //tr.Setup(r => r.ResourceExists(It.IsAny<string>())).Returns(false);
+
+            source.Setup(c => c.ResourceService).Returns(sr.Object);
+            target.Setup(c => c.ResourceService).Returns(tr.Object);
+            target.Setup(c => c.Capabilities).Returns(tc.Object);
+
+            var mig = new ResourceMigrator(source.Object, target.Object);
+            Assert.NotNull(mig.Source);
+            Assert.NotNull(mig.Target);
+
+            int migrated = mig.MoveResources(resources, "Library://Migrated/", true, null);
+            Assert.AreEqual(5, migrated);
+
+            sr.Verify(c => c.GetResource(resources[0]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[1]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[2]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[3]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[4]), Times.Once);
+
+            sr.Verify(c => c.EnumerateResourceData(resources[0]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[1]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[2]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[3]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[4]), Times.Once);
+
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), It.IsAny<string>()), Times.Exactly(5));
+
+            sr.Verify(c => c.DeleteResource(resources[0]), Times.Once);
+            sr.Verify(c => c.DeleteResource(resources[1]), Times.Once);
+            sr.Verify(c => c.DeleteResource(resources[2]), Times.Once);
+            sr.Verify(c => c.DeleteResource(resources[3]), Times.Once);
+            sr.Verify(c => c.DeleteResource(resources[4]), Times.Once);
+        }
+
+        [Test()]
+        public void MoveResourcesWithoutOverwriteTest()
+        {
+            var sr = new Mock<IResourceService>();
+            var tr = new Mock<IResourceService>();
+
+            var tc = new Mock<IConnectionCapabilities>();
+            tc.Setup(c => c.GetMaxSupportedResourceVersion(It.IsAny<string>())).Returns(new Version(1, 0, 0));
+
+            var source = new Mock<IServerConnection>();
+            var target = new Mock<IServerConnection>();
+
+            var emptyDataList = new ResourceDataList() { ResourceData = new System.ComponentModel.BindingList<ResourceDataListResourceData>() };
+
+            string[] resources = new string[]
+            {
+                "Library://Test/Data.FeatureSource",
+                "Library://Test/Data1.FeatureSource",
+                "Library://Test/Data2.FeatureSource",
+                "Library://Test/Data3.FeatureSource",
+                "Library://Test/Data4.FeatureSource",
+            };
+
+            var res1 = new Mock<IResource>();
+            var res2 = new Mock<IResource>();
+            var res3 = new Mock<IResource>();
+            var res4 = new Mock<IResource>();
+            var res5 = new Mock<IResource>();
+
+            res1.Setup(r => r.ResourceID).Returns(resources[0]);
+            res2.Setup(r => r.ResourceID).Returns(resources[1]);
+            res3.Setup(r => r.ResourceID).Returns(resources[2]);
+            res4.Setup(r => r.ResourceID).Returns(resources[3]);
+            res5.Setup(r => r.ResourceID).Returns(resources[4]);
+
+            sr.Setup(r => r.EnumerateResourceData(It.IsAny<string>())).Returns(emptyDataList);
+            sr.Setup(r => r.GetResource(resources[0])).Returns(res1.Object);
+            sr.Setup(r => r.GetResource(resources[1])).Returns(res2.Object);
+            sr.Setup(r => r.GetResource(resources[2])).Returns(res3.Object);
+            sr.Setup(r => r.GetResource(resources[3])).Returns(res4.Object);
+            sr.Setup(r => r.GetResource(resources[4])).Returns(res5.Object);
+
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data.FeatureSource")).Returns(false);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data1.FeatureSource")).Returns(true);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data2.FeatureSource")).Returns(true);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data3.FeatureSource")).Returns(false);
+            tr.Setup(r => r.ResourceExists("Library://Migrated/Data4.FeatureSource")).Returns(false);
+
+            source.Setup(c => c.ResourceService).Returns(sr.Object);
+            target.Setup(c => c.ResourceService).Returns(tr.Object);
+            target.Setup(c => c.Capabilities).Returns(tc.Object);
+
+            var mig = new ResourceMigrator(source.Object, target.Object);
+            Assert.NotNull(mig.Source);
+            Assert.NotNull(mig.Target);
+
+            int migrated = mig.MoveResources(resources, "Library://Migrated/", false, null);
+            Assert.AreEqual(3, migrated);
+
+            sr.Verify(c => c.GetResource(resources[0]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[1]), Times.Never);
+            sr.Verify(c => c.GetResource(resources[2]), Times.Never);
+            sr.Verify(c => c.GetResource(resources[3]), Times.Once);
+            sr.Verify(c => c.GetResource(resources[4]), Times.Once);
+
+            sr.Verify(c => c.EnumerateResourceData(resources[0]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[1]), Times.Never);
+            sr.Verify(c => c.EnumerateResourceData(resources[2]), Times.Never);
+            sr.Verify(c => c.EnumerateResourceData(resources[3]), Times.Once);
+            sr.Verify(c => c.EnumerateResourceData(resources[4]), Times.Once);
+
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data.FeatureSource"), Times.Once);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data1.FeatureSource"), Times.Never);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data2.FeatureSource"), Times.Never);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data3.FeatureSource"), Times.Once);
+            tr.Verify(c => c.SaveResourceAs(It.IsAny<IResource>(), "Library://Migrated/Data4.FeatureSource"), Times.Once);
+
+            sr.Verify(c => c.DeleteResource(resources[0]), Times.Once);
+            sr.Verify(c => c.DeleteResource(resources[1]), Times.Never);
+            sr.Verify(c => c.DeleteResource(resources[2]), Times.Never);
+            sr.Verify(c => c.DeleteResource(resources[3]), Times.Once);
+            sr.Verify(c => c.DeleteResource(resources[4]), Times.Once);
+        }
+
+        //[Test()]
+        //public void MigrateResourceTest()
+        //{
+        //    Assert.Fail();
+        //}
+    }
+}

Added: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceRebaserTests.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceRebaserTests.cs	                        (rev 0)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/CrossConnection/ResourceRebaserTests.cs	2014-12-27 18:37:51 UTC (rev 8475)
@@ -0,0 +1,66 @@
+#region Disclaimer / License
+
+// Copyright (C) 2014, Jackie Ng
+// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+//
+
+#endregion Disclaimer / License
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using OSGeo.MapGuide.MaestroAPI.CrossConnection;
+using NUnit.Framework;
+using Moq;
+using OSGeo.MapGuide.ObjectModels;
+using System.IO;
+using OSGeo.MapGuide.ObjectModels.MapDefinition;
+using System.Xml;
+
+namespace OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests
+{
+    [TestFixture()]
+    public class ResourceRebaserTests
+    {
+        [Test()]
+        public void ResourceRebaserTest()
+        {
+            Assert.Throws<ArgumentNullException>(() => new ResourceRebaser(null));
+
+            var res = new Mock<IResource>();
+            var rbaser = new ResourceRebaser(res.Object);
+        }
+
+        [Test()]
+        public void RebaseTest()
+        {
+            var res = (IMapDefinition)ObjectFactory.Deserialize(ResourceTypes.MapDefinition.ToString(), File.OpenRead("UserTestData\\TestTiledMap.xml"));
+            res.ResourceID = "Library://Test.MapDefinition";
+            var rbaser = new ResourceRebaser(res);
+            var rbres = rbaser.Rebase("Library://UnitTests/Layers/", "Library://Rebased/Layers/");
+            var xml = ObjectFactory.SerializeAsString(rbres);
+            var doc = new XmlDocument();
+            doc.LoadXml(xml);
+            var els = doc.GetElementsByTagName("ResourceId");
+            foreach (XmlNode el in els)
+            {
+                Assert.True(el.InnerText.StartsWith("Library://Rebased/Layers/"));
+            }
+        }
+    }
+}

Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/OSGeo.MapGuide.MaestroAPI.Tests.csproj
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/OSGeo.MapGuide.MaestroAPI.Tests.csproj	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/OSGeo.MapGuide.MaestroAPI.Tests.csproj	2014-12-27 18:37:51 UTC (rev 8475)
@@ -57,6 +57,8 @@
     </Compile>
     <Compile Include="CapabilityTests.cs" />
     <Compile Include="ConfigurationDocumentTests.cs" />
+    <Compile Include="CrossConnection\ResourceMigratorTests.cs" />
+    <Compile Include="CrossConnection\ResourceRebaserTests.cs" />
     <Compile Include="FeatureReaderTests.cs" />
     <Compile Include="MiscTests.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />

Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/SchemaTests.cs
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/SchemaTests.cs	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI.Tests/SchemaTests.cs	2014-12-27 18:37:51 UTC (rev 8475)
@@ -1,23 +1,23 @@
-#region Disclaimer / License
-
-// Copyright (C) 2014, Jackie Ng
-// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-//
-
+#region Disclaimer / License
+
+// Copyright (C) 2014, Jackie Ng
+// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+//
+
 #endregion Disclaimer / License
 using NUnit.Framework;
 using OSGeo.MapGuide.MaestroAPI.Schema;

Modified: trunk/Tools/Maestro/UnitTests.playlist
===================================================================
--- trunk/Tools/Maestro/UnitTests.playlist	2014-12-27 17:40:58 UTC (rev 8474)
+++ trunk/Tools/Maestro/UnitTests.playlist	2014-12-27 18:37:51 UTC (rev 8475)
@@ -1 +1 @@
-<Playlist Version="1.0"><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.GeometricPropertyDefinitionTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.IndexOfTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestWebLayoutConversions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestUniqueIssues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.FindPropertyTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities240" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.WriteXmlTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestParse3dWkt" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities220" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestLayerScaleRangeOverlap" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionConversions" /><Add Test="
 OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestLoadProcedureValidation" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestOdbcLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.GeometryTypesToStringTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.AddClassTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestWebLayout" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestOdbcSaveLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.FeatureReaderTests.TestXmlFeatureJoinValues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities120" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.FeatureReaderTests.TestXmlAggregateNullValues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.GetOrdinalTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestArgParser" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.T
 ests.FeatureSchemaTests.CloneTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionNestedGroupDelete" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.RemovePropertyTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerRemove" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.SchemaTests.TestCreate" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionGroupReordering" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsSaveLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestOdbcLoad2" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.RemovePropertyAtTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.GetClassTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.ClassDefinitionTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities250" /><Add
  Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities200" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.RemoveClassTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.DataPropertyDefinitionTests.IsNumericTypeTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.SchemaTests.TestClassNameEncoding" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities110" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestSymbolDefinitionConversions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities210" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.GetIndividualGeometricTypesTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestValidationResultSet" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsLoad3" /><
 Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.DataPropertyDefinitionTests.DataPropertyDefinitionTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionGroupRemove" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities260" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.SpecificGeometryTypesTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestMySqlSchema" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.SchemaTests.TestFeatureSchemaRoundtrip" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities100" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionGroupAdd" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities230" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsLoad2" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestLoadProcedureCon
 versions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestLayerDefinitionConversions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.GetItemTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestCase1896" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerAdd" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.ClearIdentityPropertiesTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.FeatureReaderTests.TestXmlFeatureNullValues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerReordering" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.IndexOfPropertyTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.CloneTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestParseXyzmWkt" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestConnectionString" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.Featu
 reSchemaTests.FeatureSchemaTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerInsert" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterLayerFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMapDefinitionTestWithNameAndCoordSys" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateWatermarkTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.FeatureSourceTests.TestFeatureSourceFileParameters" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimplePointTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateCalculatedPropertyTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreatePoint3DTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterCompoundSymbolFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSymbolLibraryTest" /><Add
  Test="OSGeo.MapGuide.ObjectModel.Tests.ResourceTests.TestResourceTypeDescriptor" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.ResourceTests.TestValidResourceIdentifiers" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMetadataTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterSimpleSymbolFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterWatermarkDefinitionFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSecurityUserTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimpleSymbolTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateAttributeRelationTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.DrawingSourceTests.DrawingSourceDeserializationWithFullContentModel" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateFeatureSourceExtensionTest" /><Add Test="OSGeo.MapGu
 ide.ObjectModels.Tests.ObjectFactoryTests.CreateLoadProcedureTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.ResourceTests.TestCloning" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterWebLayoutFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateFeatureSourceTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.ApplicationDefinitionTests.ApplicationDefinitionDeserializationWithFullContentModel" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreatePrintLayoutTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMapDefinitionTestWithNameAndCoordSysAndExtent" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreatePoint2DTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterResourceTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSecurityGroupTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.Object
 FactoryTests.CreateSimpleLabelTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateFeatureSourceTestWithParameters" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimpleSolidLineTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateLoadProcedureTestWithFileNames" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateEnvelopeTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateDefaultLayerTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateCompoundSymbolTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimpleSolidFillTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterResourceSerializerTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.FeatureSourceTests.FeatureSourceDeserializationWithFullContentModel" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterMap
 DefinitionFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterLoadProcedureFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateDrawingSourceTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMapDefinitionTestWithName" /></Playlist>
\ No newline at end of file
+<Playlist Version="1.0"><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.GeometricPropertyDefinitionTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.IndexOfTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestWebLayoutConversions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestUniqueIssues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.FindPropertyTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities240" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.WriteXmlTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestParse3dWkt" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities220" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestLayerScaleRangeOverlap" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionConversions" /><Add Test="
 OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestLoadProcedureValidation" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestOdbcLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.GeometryTypesToStringTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.AddClassTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestWebLayout" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestOdbcSaveLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.FeatureReaderTests.TestXmlFeatureJoinValues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities120" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.FeatureReaderTests.TestXmlAggregateNullValues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.GetOrdinalTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestArgParser" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.T
 ests.FeatureSchemaTests.CloneTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionNestedGroupDelete" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.RemovePropertyTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerRemove" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.SchemaTests.TestCreate" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionGroupReordering" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsSaveLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestOdbcLoad2" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.RemovePropertyAtTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.GetClassTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.ClassDefinitionTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities250" /><Add
  Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities200" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.RemoveClassTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.DataPropertyDefinitionTests.IsNumericTypeTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.SchemaTests.TestClassNameEncoding" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities110" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestSymbolDefinitionConversions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities210" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.GetIndividualGeometricTypesTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestValidationResultSet" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsLoad" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsLoad3" /><
 Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.DataPropertyDefinitionTests.DataPropertyDefinitionTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionGroupRemove" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities260" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.GeometricPropertyDefinitionTests.SpecificGeometryTypesTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestMySqlSchema" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.SchemaTests.TestFeatureSchemaRoundtrip" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities100" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionGroupAdd" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.CapabilityTests.TestHttpCapabilities230" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ConfigurationDocumentTests.TestWmsLoad2" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestLoadProcedureCon
 versions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestLayerDefinitionConversions" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.FeatureSchemaTests.GetItemTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ValidationTests.TestCase1896" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerAdd" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.ClearIdentityPropertiesTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.FeatureReaderTests.TestXmlFeatureNullValues" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerReordering" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.IndexOfPropertyTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.SchemaTests.CloneTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestParseXyzmWkt" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.MiscTests.TestConnectionString" /><Add Test="OSGeo.MapGuide.MaestroAPI.Schema.Tests.Featu
 reSchemaTests.FeatureSchemaTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.Tests.ResourceTests.TestMapDefinitionLayerInsert" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterLayerFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMapDefinitionTestWithNameAndCoordSys" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateWatermarkTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.FeatureSourceTests.TestFeatureSourceFileParameters" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimplePointTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateCalculatedPropertyTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreatePoint3DTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterCompoundSymbolFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSymbolLibraryTest" /><Add
  Test="OSGeo.MapGuide.ObjectModel.Tests.ResourceTests.TestResourceTypeDescriptor" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.ResourceTests.TestValidResourceIdentifiers" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMetadataTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterSimpleSymbolFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterWatermarkDefinitionFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSecurityUserTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimpleSymbolTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateAttributeRelationTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.DrawingSourceTests.DrawingSourceDeserializationWithFullContentModel" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateFeatureSourceExtensionTest" /><Add Test="OSGeo.MapGu
 ide.ObjectModels.Tests.ObjectFactoryTests.CreateLoadProcedureTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.ResourceTests.TestCloning" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterWebLayoutFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateFeatureSourceTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.ApplicationDefinitionTests.ApplicationDefinitionDeserializationWithFullContentModel" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreatePrintLayoutTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMapDefinitionTestWithNameAndCoordSysAndExtent" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreatePoint2DTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterResourceTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSecurityGroupTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.Object
 FactoryTests.CreateSimpleLabelTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateFeatureSourceTestWithParameters" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimpleSolidLineTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateLoadProcedureTestWithFileNames" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateEnvelopeTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateDefaultLayerTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateCompoundSymbolTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateSimpleSolidFillTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterResourceSerializerTest" /><Add Test="OSGeo.MapGuide.ObjectModel.Tests.FeatureSourceTests.FeatureSourceDeserializationWithFullContentModel" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterMap
 DefinitionFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.RegisterLoadProcedureFactoryMethodTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateDrawingSourceTest" /><Add Test="OSGeo.MapGuide.ObjectModels.Tests.ObjectFactoryTests.CreateMapDefinitionTestWithName" /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceMigratorTests.ResourceMigratorTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceMigratorTests.MoveResourcesWithOverwriteTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceMigratorTests.CopyResourcesWithOverwriteTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceMigratorTests.CopyResourcesWithoutOverwriteTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceMigratorTests.MoveResourcesWithoutOverwriteTest" /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceRebaserTests.RebaseTest"
  /><Add Test="OSGeo.MapGuide.MaestroAPI.CrossConnection.Tests.ResourceRebaserTests.ResourceRebaserTest" /></Playlist>
\ No newline at end of file



More information about the mapguide-commits mailing list