예제 #1
0
        public void Unified_Static_RegistrarTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 11))
            {
                return;
            }

            RunMMPTest(tmpDir => {
                // First in 64-bit
                TI.UnifiedTestConfig test = new TI.UnifiedTestConfig(tmpDir)
                {
                    CSProjConfig = "<MonoBundlingExtraArgs>--registrar=static</MonoBundlingExtraArgs><XamMacArch>x86_64</XamMacArch>"
                };
                // Mobile
                TI.TestUnifiedExecutable(test);
                // XM45
                test.XM45 = true;
                TI.TestUnifiedExecutable(test);

                // Now 32-bit
                test.CSProjConfig = "<MonoBundlingExtraArgs>--registrar=static</MonoBundlingExtraArgs><XamMacArch>i386</XamMacArch>";
                // Mobile
                TI.TestUnifiedExecutable(test);
                // XM45
                test.XM45 = true;
                TI.TestUnifiedExecutable(test);
            });
        }
예제 #2
0
		public void DirectoryContainsSpaces (bool full, string arch)
		{
			if (!PlatformHelpers.CheckSystemVersion (10, 11))
				return;

			MMPTests.RunMMPTest (tmpDir => {
				TI.UnifiedTestConfig test = new TI.UnifiedTestConfig (tmpDir) {
					CSProjConfig = $"<MonoBundlingExtraArgs>--registrar=static</MonoBundlingExtraArgs><XamMacArch>{arch}</XamMacArch>",
					XM45 = full
				};
			}, "test withSpace");
		}
예제 #3
0
        public void FinderExtension_SmokeTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 10))
            {
                return;
            }

            MMPTests.RunMMPTest(tmpDir =>
            {
                string testPath = Path.Combine(TI.FindSourceDirectory(), @"Finder/FinderExtensionTest.csproj");
                TI.BuildProject(testPath, isUnified: true);
            });
        }
예제 #4
0
        public void ShareExtension_SmokeTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 10))
            {
                return;
            }

            MMPTests.RunMMPTest(tmpDir =>
            {
                TI.CopyDirectory(Path.Combine(TI.FindSourceDirectory(), @"Share"), tmpDir);
                TI.BuildProject(Path.Combine(tmpDir, "Share/ShareExtensionTest.csproj"), isUnified: true);
            });
        }
예제 #5
0
        public void ShareExtension_SmokeTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 10))
            {
                return;
            }

            RunMMPTest(tmpDir =>
            {
                string testPath = Path.Combine(TI.FindSourceDirectory(), @"Share/ShareExtensionTest.csproj");
                TI.BuildProject(testPath, true, false);
            });
        }
예제 #6
0
        public void FinderExtension_SmokeTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 10))
            {
                return;
            }

            MMPTests.RunMMPTest(tmpDir =>
            {
                TI.CopyDirectory(Path.Combine(TI.FindSourceDirectory(), @"Finder"), tmpDir);
                TI.BuildProject(Path.Combine(tmpDir, "Finder/FinderExtensionTest.csproj"));
            });
        }
예제 #7
0
		public void SmokeTest (bool full, string arch)
		{
			if (!PlatformHelpers.CheckSystemVersion (10, 11))
				return;

			MMPTests.RunMMPTest (tmpDir => {
				// First in 64-bit
				TI.UnifiedTestConfig test = new TI.UnifiedTestConfig (tmpDir) {
					CSProjConfig = $"<MonoBundlingExtraArgs>--registrar=static</MonoBundlingExtraArgs><XamMacArch>{arch}</XamMacArch>",
					XM45 = full
				};
				var output = TI.TestUnifiedExecutable (test).RunOutput;

				Assert.IsTrue (!output.Contains ("Could not register the assembly"), "Could not register the assembly errors found:\n" + output);
			});
		}
예제 #8
0
        public void TodayExtension_SmokeTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 10))
            {
                return;
            }

            MMPTests.RunMMPTest(tmpDir =>
            {
                TI.CopyDirectory(Path.Combine(TI.FindSourceDirectory(), @"Today"), tmpDir);
                string project = Path.Combine(tmpDir, "Today/TodayExtensionTest.csproj");
                string main    = Path.Combine(tmpDir, "Today/TodayViewController.cs");
                TI.CopyFileWithSubstitutions(project, project, s => s.Replace("%ITEMGROUP%", ""));
                TI.CopyFileWithSubstitutions(main, main, s => s.Replace("%TESTCODE%", ""));
                TI.BuildProject(project, isUnified: true);
            });
        }
예제 #9
0
        public void Unified_Static_RegistrarTest()
        {
            if (!PlatformHelpers.CheckSystemVersion(10, 11))
            {
                return;
            }

            RunMMPTest(tmpDir => {
                TI.UnifiedTestConfig test = new TI.UnifiedTestConfig(tmpDir)
                {
                    CSProjConfig = "<MonoBundlingExtraArgs>--registrar=static</MonoBundlingExtraArgs>"
                };
                // Mobile
                TI.TestUnifiedExecutable(test);
                // XM45
                test.XM45 = true;
                TI.TestUnifiedExecutable(test);
            });
        }
예제 #10
0
        public void MM0135()
        {
            var oldXcode = Xamarin.Tests.Configuration.xcode94_root;

            if (!Directory.Exists(oldXcode))
            {
                Assert.Ignore("This test requires Xcode 9.4 (or updated to a newer one that still warns MM0135).");
            }

            if (PlatformHelpers.CheckSystemVersion(10, 15))
            {
                Assert.Ignore("This test requires Xcode 9.4, which doesn't work on macOS 10.15+");
            }

            MMPTests.RunMMPTest(tmpDir => {
                TI.UnifiedTestConfig test = new TI.UnifiedTestConfig(tmpDir);
                var output = TI.TestUnifiedExecutable(test, environment: new string[] { "MD_APPLE_SDK_ROOT", Path.GetDirectoryName(Path.GetDirectoryName(oldXcode)) });
                output.Messages.AssertWarningPattern(135, $"Did not link system framework");
            });
        }