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"); }); }
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); }); }
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")); }); }
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); }); }
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); }); }