-
Notifications
You must be signed in to change notification settings - Fork 28
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
Upgrade to NUnit 3.12, Add NetCore 3.0 variant #46
base: master
Are you sure you want to change the base?
Conversation
I've fixed the problems due to now incorrect NUnit Assert usages: these assert failures are tracked beyond them throwing so even if one catches an Assert.Fail and suppresses it, the test runner will still consider the whole test failed. Note also that there is a slight anomaly regarding .NET Core 3 testing on machines with 4 or less cpu threads. If there are more tasks ready to run and some block the standard threadpool, it takes 500 milliseconds for the pool to grow, causing timeout at random in some TCK tests (which default to 500ms timeout themselves). |
@marcpiechura @cconstantin Thoughts or feedback here? |
@viktorklang @akarnokd this looks good to me, but I'd also be happy migrating to XUnit since that seems to be the lingua franca these days |
Back in the days XUnit wasn’t able to skip tests based on a condition during the actual run, therefore I’ve chosen nunit. So before you start a big rewrite, I would check if xunit supports those cases now, or you’ll have to implement a different strategy ;-) Some examples are reactive-streams-dotnet/src/tck/Reactive.Streams.TCK/SubscriberWhiteboxVerification.cs Line 458 in f1a95c6
And reactive-streams-dotnet/src/tck/Reactive.Streams.TCK/SubscriberWhiteboxVerification.cs Line 334 in f1a95c6
|
NUnit works now so I'd leave any major framework change to a later version. |
@marcpiechura did not know that! |
Looks like there was a breaking change between NUnit 3.6 and 3.12 (latest as of now) so my project used to verify the TCK stopped running unit tests alltogheter. This PR also adds NETCoreApp3.0 as an output framework. I don't know how that will end up in the NuGet release though.
For one, upgrading to NUnit 3.12 dependency explicitly should resolve the problem. Unfortunately, when this is done, the Reactive.Streams.TCK.Tests start to fail with awkward errors on a known to be correct implementation of
RangePublisherTest
:EmptyLazyPublisherTest
: