public void NativeExtensionEmbedding(bool XM45)
        {
            MMPTests.RunMMPTest(tmpDir => {
                TI.CopyDirectory(Path.Combine(TI.FindSourceDirectory(), @"NativeExtension"), tmpDir);

                var xcodeProjectFolder   = Path.Combine(tmpDir, "NativeExtension");
                string [] xcodeBuildArgs = new [] { "-configuration", "Debug", "-target", "NativeTodayExtension", "-arch", "x86_64" };
                var env = new System.Collections.Generic.Dictionary <string, string> {
                    { "DEVELOPER_DIR", Configuration.XcodeLocation }
                };
                Assert.AreEqual(0, ExecutionHelper.Execute("/usr/bin/xcodebuild", xcodeBuildArgs.Concat(new [] { "clean" }).ToArray(), out var _, workingDirectory: xcodeProjectFolder, environment_variables: env, stdout_callback: Console.WriteLine, stderr_callback: Console.Error.WriteLine));
                Assert.AreEqual(0, ExecutionHelper.Execute("/usr/bin/xcodebuild", xcodeBuildArgs.Concat(new [] { "build" }).ToArray(), out var _, workingDirectory: xcodeProjectFolder, environment_variables: env, stdout_callback: Console.WriteLine, stderr_callback: Console.Error.WriteLine));

                var items = @"
<ItemGroup>
	<AdditionalAppExtensions Include=""$(MSBuildProjectDirectory)/NativeExtension"">
		<Name>NativeTodayExtension</Name>
		<BuildOutput>build/Debug</BuildOutput>
	</AdditionalAppExtensions>
</ItemGroup>";

                var config = new TI.UnifiedTestConfig(tmpDir)
                {
                    XM45 = XM45, ItemGroup = items
                };
                string csprojTarget = TI.GenerateUnifiedExecutableProject(config);
                TI.BuildProject(csprojTarget);

                Assert.That(File.Exists(Path.Combine(tmpDir, "bin", "Debug", (XM45 ? "XM45Example.app" : "UnifiedExample.app"), "Contents", "PlugIns", "NativeTodayExtension.appex", "Contents", "MacOS", "NativeTodayExtension")), "NativeTodayExtension");
            });
        }
Example #2
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);
            });
        }
Example #3
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"));
            });
        }
        // [Test] https://github.com/xamarin/xamarin-macios/issues/4110
        public void ExtensionProjectPackageReferencs_Build()
        {
            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%", PackageReference));
                TI.CopyFileWithSubstitutions(main, main, s => s.Replace("%TESTCODE%", TestCode));

                TI.NugetRestore(project);
                string output = TI.BuildProject(Path.Combine(tmpDir, "Today/TodayExtensionTest.csproj"), isUnified: true);
                Assert.IsTrue(!output.Contains("MM2013"));
            });
        }
Example #5
0
        public void ExtensionProjectPackageReferencs_Build()
        {
            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%", PackageReference));
                TI.CopyFileWithSubstitutions(main, main, s => s.Replace("%TESTCODE%", TestCode));

                TI.NugetRestore(project);
                var buildResult = TI.BuildProject(Path.Combine(tmpDir, "Today/TodayExtensionTest.csproj"));
                buildResult.Messages.AssertNoMessage(2013);
            });
        }
Example #6
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);
            });
        }