Пример #1
0
        public bool IsSupported(iOSTestProject project)
        {
            if (project.MonoNativeInfo == null)
            {
                return(true);
            }
            var min_version = MonoNativeHelper.GetMinimumOSVersion(DevicePlatform, project.MonoNativeInfo.Flavor);

            return(Version.Parse(ProductVersion) >= Version.Parse(min_version));
        }
Пример #2
0
        void AutoConfigureIOS()
        {
            var test_suites             = new string [] { "monotouch-test", "framework-test", "mini", "interdependent-binding-projects" };
            var library_projects        = new string [] { "BundledResources", "EmbeddedResources", "bindings-test", "bindings-test2", "bindings-framework-test" };
            var fsharp_test_suites      = new string [] { "fsharp" };
            var fsharp_library_projects = new string [] { "fsharplibrary" };
            var bcl_suites = new string [] {
                "mscorlib",
                "System.Data",
                "System.Net.Http",
                "System.Web.Services",
                "System.Xml",
                "Mono.Data.Sqlite",
                "System.IO.Compression",
                "System.IO.Compression.FileSystem",
                "System.ServiceModel",
                "System.IdentityModel",
            };
            var bcl_skip_watchos = new string [] {
                "Mono.Data.Tds",
            };

            IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "bcl-test/mscorlib/mscorlib-0.csproj")), false));
            IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "bcl-test/mscorlib/mscorlib-1.csproj")), false));
            foreach (var p in test_suites)
            {
                IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, p + "/" + p + ".csproj")))
                {
                    Name = p
                });
            }
            foreach (var p in fsharp_test_suites)
            {
                IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, p + "/" + p + ".fsproj")))
                {
                    Name = p
                });
            }
            foreach (var p in library_projects)
            {
                IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, p + "/" + p + ".csproj")), false)
                {
                    Name = p
                });
            }
            foreach (var p in fsharp_library_projects)
            {
                IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, p + "/" + p + ".fsproj")), false)
                {
                    Name = p
                });
            }

            foreach (var p in bcl_suites)
            {
                BCLTestInfo bclTestInfo = new BCLTestInfo(this, p);
                IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "bcl-test/" + p + "/" + p + ".csproj")))
                {
                    SkipwatchOSVariation = bcl_skip_watchos.Contains(p),
                    BCLInfo = bclTestInfo,
                    Name    = p
                });
            }

            IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "introspection", "iOS", "introspection-ios.csproj")))
            {
                Name = "introspection"
            });
            IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "linker", "ios", "dont link", "dont link.csproj")))
            {
                Configurations = new string [] { "Debug", "Release" }
            });
            IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "linker", "ios", "link all", "link all.csproj")))
            {
                Configurations = new string [] { "Debug", "Release" }
            });
            IOSTestProjects.Add(new iOSTestProject(Path.GetFullPath(Path.Combine(RootDirectory, "linker", "ios", "link sdk", "link sdk.csproj")))
            {
                Configurations = new string [] { "Debug", "Release" }
            });

            foreach (var flavor in new MonoNativeFlavor[] { MonoNativeFlavor.Compat, MonoNativeFlavor.Unified })
            {
                var monoNativeInfo = new MonoNativeInfo(this, flavor);
                var iosTestProject = new iOSTestProject(monoNativeInfo.ProjectPath, generateVariations: false)
                {
                    MonoNativeInfo = monoNativeInfo,
                    Name           = monoNativeInfo.ProjectName
                };

                IOSTestProjects.Add(iosTestProject);
            }

            // add all the tests that are using the precompiled mono assemblies
            var monoImportTestFactory = new BCLTestImportTargetFactory(this);

            IOSTestProjects.AddRange(monoImportTestFactory.GetiOSBclTargets());

            WatchOSContainerTemplate = Path.GetFullPath(Path.Combine(RootDirectory, "templates/WatchContainer"));
            WatchOSAppTemplate       = Path.GetFullPath(Path.Combine(RootDirectory, "templates/WatchApp"));
            WatchOSExtensionTemplate = Path.GetFullPath(Path.Combine(RootDirectory, "templates/WatchExtension"));

            TodayContainerTemplate = Path.GetFullPath(Path.Combine(RootDirectory, "templates", "TodayContainer"));
            TodayExtensionTemplate = Path.GetFullPath(Path.Combine(RootDirectory, "templates", "TodayExtension"));
        }