Xfty.Xunit
1.0.0-beta.12
dotnet add package Xfty.Xunit --version 1.0.0-beta.12
NuGet\Install-Package Xfty.Xunit -Version 1.0.0-beta.12
<PackageReference Include="Xfty.Xunit" Version="1.0.0-beta.12" />
<PackageVersion Include="Xfty.Xunit" Version="1.0.0-beta.12" />
<PackageReference Include="Xfty.Xunit" />
paket add Xfty.Xunit --version 1.0.0-beta.12
#r "nuget: Xfty.Xunit, 1.0.0-beta.12"
#:package Xfty.Xunit@1.0.0-beta.12
#addin nuget:?package=Xfty.Xunit&version=1.0.0-beta.12&prerelease
#tool nuget:?package=Xfty.Xunit&version=1.0.0-beta.12&prerelease
Xfty.Xunit
One xUnit attribute for a Xfty
consumer's own test suite: [IsolatesSharedAncestor], resetting
SharedAncestor's registry before and after a test.
dotnet add package Xfty.Xunit
Usage
using Net.NowhereAtAll.Xfty.Xunit;
[IsolatesSharedAncestor]
public class MyTests
{
[Fact]
public void FirstTest()
{
SharedAncestor.Put("hq", new Account());
// ... nothing here leaks into FirstTest, or out to any later test
}
}
Apply it to a whole test class (every method in it) or to one [Fact]/
[Theory] method directly. Resetting before protects this test from
whatever an earlier, non-isolated test left behind; resetting after
protects every later test from this one. SharedAncestor's registry is
process-static and does not reset between xUnit test methods on its
own the way Apex's statics reset between test methods - the single biggest
"static state" surprise for anyone coming from a per-test-reset runner, and
the reason this package exists.
Full documentation
- Shared ancestors - what
SharedAncestoris for,[IsolatesSharedAncestor]covered directly - Static-state lifetime - why this matters at all in a shared xUnit process
- Everything else
Xftydoes
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Xfty (>= 1.0.0-beta.12)
- xunit.v3.extensibility.core (>= 4.0.0)
-
net10.0
- Xfty (>= 1.0.0-beta.12)
- xunit.v3.extensibility.core (>= 4.0.0)
-
net8.0
- Xfty (>= 1.0.0-beta.12)
- xunit.v3.extensibility.core (>= 4.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-beta.12 | 44 | 9/18/2026 |
| 1.0.0-beta.11 | 69 | 9/10/2026 |
| 1.0.0-beta.10 | 50 | 9/10/2026 |
| 1.0.0-beta.9 | 51 | 9/10/2026 |
| 1.0.0-beta.8 | 58 | 9/10/2026 |
| 1.0.0-beta.7 | 58 | 9/7/2026 |
| 1.0.0-beta.6 | 61 | 9/7/2026 |
| 1.0.0-beta.5 | 63 | 9/6/2026 |
| 1.0.0-beta.3 | 75 | 9/6/2026 |
| 1.0.0-beta.2 | 63 | 9/6/2026 |
| 1.0.0-beta.1 | 69 | 9/6/2026 |