-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Disable tests on CoreCLR using new attribute #118
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally LGTM
@@ -16,6 +16,7 @@ | |||
<add key="dotnet5-transport" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-transport/nuget/v3/index.json" /> | |||
<add key="dotnet-core" value="https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json" /> | |||
<add key="dotnet-coreclr" value="https://dotnetfeed.blob.core.windows.net/dotnet-coreclr/index.json" /> | |||
<add key="safern-test" value="https://www.myget.org/F/safern-test/api/v3/index.json" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I presume this will get removed before you merge?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. I’m just waiting for arcade to propagate.
src/libraries/System.Net.Http/tests/FunctionalTests/AssemblyInfo.cs
Outdated
Show resolved
Hide resolved
...em/ComponentModel/Composition/Registration/RegistrationBuilderAttributedOverrideUnitTests.cs
Show resolved
Hide resolved
src/libraries/System.Net.HttpListener/tests/HttpListenerAuthenticationTests.cs
Show resolved
Hide resolved
src/libraries/System.Net.HttpListener/tests/HttpListenerResponseTests.Cookies.cs
Show resolved
Hide resolved
src/libraries/System.Net.Sockets/tests/FunctionalTests/AssemblyInfo.cs
Outdated
Show resolved
Hide resolved
Thanks for working on this. I'm happy to see the mechanisms consolidated. |
src/libraries/System.Utf8String.Experimental/tests/System.Utf8String.Experimental.Tests.csproj
Outdated
Show resolved
Hide resolved
@safern, this is still marked NO MERGE. Is it ready to go, or still waiting on something? Thanks! |
|
||
using Xunit; | ||
|
||
[assembly: SkipOnCoreClr("System.Net.Tests are flaky and/or long running: https://github.com/dotnet/runtime/issues/131")] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the tests are flaky why do you skip them on CoreCLR only?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I remember correctly, they're flaky only on Checked CoreCLR because they have checks based on timeouts. The performance hits of running on a Checked CoreCLR leads to some of the timeout tests failing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not clear from the naming, but this is only skipping these tests in coreclr's stress test modes (including checked builds). We should a) fix the attribute to require that to be expressed such that no parameters means to always skip on coreclr, and b) we should fix the tests to be runnable in these cases, as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SkipOnCoreClrStressTest
sounds like a better naming?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SkipOnCoreClrStressTest sounds like a better naming?
I think there are two options:
- Make the attribute specific to stress testing, in which case a name like you suggest would be fine.
- Actually make the attribute do what it's name says, which is to skip on coreclr. Then if you only wanted to skip on coreclr in a specific situation, you would pass the argument to say so, e.g.
[SkipOnCoreClr]
would always skip the test on coreclr, whereas[SkipOnCoreClr(CoreClrTestMode.Stress)]
would skip it in stress scenarios,[SkipOnCoreClr(CoreClrTestMode.Checked | CoreClrTestMode.GCStress)]
would skip only if using a checked build or running GC stress, etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, makes sense. I'll work later on that.
Replaced by: #261 since I had to re-create my fork. |
This disables corefx tests on coreclr runs using the new
SkipOnCoreClrAttribute
added on: dotnet/arcade#4231I followed the rsp file list to add the attributes and also the labels on the issues referenced to identify the stress mode or the platform.
This still needs an arcade update to consume that PR.
cc: @BruceForstall @stephentoub @jkotas @jkoritzinsky @jaredpar