[acceptance-tests] Disable the ironjs-v8 test on arm32/arm64.
authorAlex Rønne Petersen <alexrp@xamarin.com>
Sat, 22 Jul 2017 13:58:54 +0000 (15:58 +0200)
committerAlex Rønne Petersen <alexrp@xamarin.com>
Sat, 22 Jul 2017 13:59:52 +0000 (15:59 +0200)
It times out even with a 24-hour timeout. Eventually we should investigate why,
but disable it for now so the lane can become green.

acceptance-tests/profiler-stress.mk
acceptance-tests/profiler-stress/runner.cs

index b2ff164cadefaf30e592029c694ae9c9b48b834d..dd819d397cc5ef207667118474949f31e7498cbc 100644 (file)
@@ -9,5 +9,5 @@ SYS_REFS = \
 
 check-profiler-stress:
        @$(MAKE) validate-benchmarker RESET_VERSIONS=1
-       cd profiler-stress && $(MCS) -debug -target:exe $(addprefix -r:, $(SYS_REFS)) -out:runner.exe @runner.exe.sources
+       cd profiler-stress && $(MCS) -debug -define:ARCH_$(arch_target) -target:exe $(addprefix -r:, $(SYS_REFS)) -out:runner.exe @runner.exe.sources
        cd profiler-stress && $(RUNTIME) runner.exe
index 69ba9e5ab0a2cda0c8eb332b788c1cb22e77a77e..05a1efb3514561a2f9f7d1bab68ed90695d27198 100644 (file)
@@ -59,7 +59,11 @@ namespace Mono.Profiling.Tests.Stress {
 
                static readonly TimeSpan _timeout = TimeSpan.FromHours (8);
 
-               static readonly Dictionary<string, Action<TestResult>> _processors = new Dictionary<string, Action<TestResult>> () {
+               static readonly Dictionary<string, Predicate<Benchmark>> _filters = new Dictionary<string, Predicate<Benchmark>> {
+                       { "ironjs-v8", FilterArmArchitecture },
+               };
+
+               static readonly Dictionary<string, Action<TestResult>> _processors = new Dictionary<string, Action<TestResult>> {
                        { "msbiology", Process32BitOutOfMemory },
                };
 
@@ -67,6 +71,15 @@ namespace Mono.Profiling.Tests.Stress {
                        return Regex.Replace (text, @"[^\x09\x0A\x0D\x20-\uD7FF\uE000-\uFFFD\u10000-\u10FFFF]", string.Empty);
                }
 
+               static bool FilterArmArchitecture (Benchmark benchmark)
+               {
+#if ARCH_arm || ARCH_arm64
+                       return false;
+#else
+                       return true;
+#endif
+               }
+
                static void Process32BitOutOfMemory (TestResult result)
                {
                        if (Environment.Is64BitProcess)
@@ -79,6 +92,11 @@ namespace Mono.Profiling.Tests.Stress {
                                result.ExitCode = 0;
                }
 
+               static bool IsSupported (Benchmark benchmark)
+               {
+                       return _filters.TryGetValue (benchmark.Name, out var filter) ? filter (benchmark) : true;
+               }
+
                static int Main ()
                {
                        var depDir = Path.Combine ("..", "external", "benchmarker");
@@ -87,7 +105,7 @@ namespace Mono.Profiling.Tests.Stress {
 
                        var benchmarks = Directory.EnumerateFiles (benchDir, "*.benchmark")
                                         .Select (Benchmark.Load)
-                                        .Where (b => !b.OnlyExplicit && b.ClientCommandLine == null)
+                                        .Where (b => !b.OnlyExplicit && b.ClientCommandLine == null && IsSupported (b))
                                         .OrderBy (b => b.Name)
                                         .ToArray ();