Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/workflow/ci/disabling-tests.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ The two types have very different mechanisms for disabling.
You need to determine under which configuration you wish to disable the test:
- For all configurations
- For just one processor architecture (x86, x64, arm32, arm64)
- For just one runtime (coreclr, mono) or mono runtime variant (monointerpreter, llvmaot, llvmfullaot)
- For just one runtime (coreclr, mono) or runtime variant (monointerpreter, llvmaot, llvmfullaot, coreclrinterpreter)
- For just one operating system (Windows, Linux, macOS, Android, iOS)
- For a particular run type:
- GCStress
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ jobs:
isExtraPlatforms: ${{ parameters.isExtraPlatformsBuild }}
testGroup: innerloop
nameSuffix: LibraryTestsCoreCLR${{ parameters.nameSuffix }}
runtimeVariant: coreclrinterpreter
buildArgs: -s clr+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:BrowserHost=$(_hostedOs) $(_wasmRunSmokeTestsOnlyArg) $(chromeInstallArg) $(firefoxInstallArg) $(v8InstallArg) /maxcpucount:1 ${{ parameters.extraBuildArgs }}
timeoutInMinutes: 240
# if !alwaysRun, then:
Expand Down
1 change: 1 addition & 0 deletions eng/pipelines/runtime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@ extends:
jobParameters:
nameSuffix: AllSubsets_CoreCLR
buildArgs: -s clr+libs+libs.tests+packs -c $(_BuildConfig) -lc Release /p:TestAssemblies=false /p:TestWasmBuildTests=true /p:ArchiveTests=true /p:InstallWorkloadForTesting=false
runtimeVariant: coreclrinterpreter
timeoutInMinutes: 120
postBuildSteps:
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests.yml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ public static partial class PlatformDetection
public static bool IsNetCore => Environment.Version.Major >= 5 || RuntimeInformation.FrameworkDescription.StartsWith(".NET Core", StringComparison.OrdinalIgnoreCase);
public static bool IsMonoRuntime => Type.GetType("Mono.RuntimeStructs") != null;
public static bool IsNotMonoRuntime => !IsMonoRuntime;
public static bool IsInterpreter => IsMonoInterpreter || IsCoreClrInterpreter;
public static bool IsNotInterpreter => !IsInterpreter;
public static bool IsMonoInterpreter => GetIsRunningOnMonoInterpreter();
public static bool IsNotMonoInterpreter => !IsMonoInterpreter;
public static bool IsMonoAOT => Environment.GetEnvironmentVariable("MONO_AOT_MODE") == "aot";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ public void JitInfoIsPopulated()
long afterCompiledILBytes = System.Runtime.JitInfo.GetCompiledILBytes();
long afterCompiledMethodCount = System.Runtime.JitInfo.GetCompiledMethodCount();

if (PlatformDetection.IsMonoInterpreter || PlatformDetection.IsMonoAOT || PlatformDetection.IsReadyToRunCompiled)
if (PlatformDetection.IsMonoInterpreter || PlatformDetection.IsCoreClrInterpreter || PlatformDetection.IsMonoAOT || PlatformDetection.IsReadyToRunCompiled)
Comment thread
pavelsavara marked this conversation as resolved.
Outdated
Comment thread
pavelsavara marked this conversation as resolved.
Outdated
{
// JitInfo metrics may be 0 in AOT scenarios
Assert.True(beforeCompilationTime >= TimeSpan.Zero, $"Compilation time not greater or equal to 0! ({beforeCompilationTime})");
Expand All @@ -65,7 +65,7 @@ public void JitInfoIsPopulated()
Assert.True(beforeCompiledMethodCount > 0, $"Compiled method count not greater than 0! ({beforeCompiledMethodCount})");
}

if (PlatformDetection.IsMonoInterpreter)
if (PlatformDetection.IsMonoInterpreter || PlatformDetection.IsCoreClrInterpreter)
Comment thread
pavelsavara marked this conversation as resolved.
Outdated
Comment thread
pavelsavara marked this conversation as resolved.
Outdated
{
// Before and after will most likely be the same with the interpreter
Assert.True(afterCompilationTime >= beforeCompilationTime, $"CompilationTime: after not greater than before! (after: {afterCompilationTime}, before: {beforeCompilationTime})");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@
using System;
using Xunit;

[assembly: ActiveIssue("Interpreter with debug runtime can be very slow", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoInterpreter), nameof(PlatformDetection.IsDebugRuntime))]
[assembly: ActiveIssue("Interpreter with debug runtime can be very slow", typeof(PlatformDetection), nameof(PlatformDetection.IsInterpreter), nameof(PlatformDetection.IsDebugRuntime))]
Original file line number Diff line number Diff line change
Expand Up @@ -1649,7 +1649,7 @@ public static void TestPartialJsonReaderSlicesSpecialNumbers(TestCaseType type,
[InlineData(512)]
public static void TestDepth(int depth)
{
if (PlatformDetection.IsMonoInterpreter && depth >= 256)
if (PlatformDetection.IsInterpreter && depth >= 256)
{
throw new SkipTestException("Takes very long to run on interpreter.");
}
Expand Down
2 changes: 2 additions & 0 deletions src/tests/Common/CoreCLRTestLibrary/PlatformDetection.cs
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ public static bool IsNonZeroLowerBoundArraySupported
public static bool IsMonoMINIFULLAOT => _variant == "minifullaot";
public static bool IsMonoFULLAOT => IsMonoLLVMFULLAOT || IsMonoMINIFULLAOT;
public static bool IsMonoInterpreter => _variant == "monointerpreter";
public static bool IsCoreClrInterpreter => _variant == "coreclrinterpreter";
Comment thread
pavelsavara marked this conversation as resolved.
Outdated
public static bool IsInterpreter => IsMonoInterpreter || IsCoreClrInterpreter;

// These platforms have not had their infrastructure updated to support native test assets.
public static bool PlatformDoesNotSupportNativeTestAssets =>
Expand Down
Loading