Testably.Abstractions.Testing
5.1.1
Prefix Reserved
dotnet add package Testably.Abstractions.Testing --version 5.1.1
NuGet\Install-Package Testably.Abstractions.Testing -Version 5.1.1
<PackageReference Include="Testably.Abstractions.Testing" Version="5.1.1" />
<PackageVersion Include="Testably.Abstractions.Testing" Version="5.1.1" />
<PackageReference Include="Testably.Abstractions.Testing" />
paket add Testably.Abstractions.Testing --version 5.1.1
#r "nuget: Testably.Abstractions.Testing, 5.1.1"
#:package Testably.Abstractions.Testing@5.1.1
#addin nuget:?package=Testably.Abstractions.Testing&version=5.1.1
#tool nuget:?package=Testably.Abstractions.Testing&version=5.1.1
This library contains the testing helpers for Testably.Abstractions.
MockFileSystem
Initialization
Shows how to initialize the file system:
fileSystem.InitializeIn("current-directory")
.WithASubdirectory()
.WithSubdirectory("foo").Initialized(s => s
.WithAFile())
.WithFile("bar.txt");
Initialize the file system in "current-directory" with
- a randomly named directory
- a directory named "foo" which contains a randomly named file
- a file named "bar.txt"
In order to use multiple drives on Windows (or network shares) you have to first register them:
fileSystem.WithDrive(@"D:", drive => drive.SetTotalSize(1024));
The optional configuration allows limiting the maximum available space on the drive.
Events
All changes in the file system trigger certain events. All events can be
- intercepted, before they occur (and e.g. an exception thrown to prevent the event from completing) on the
Interceptproperty:MockFileSystem fileSystem = new(); fileSystem.Intercept.Creating(FileSystemTypes.File, _ => throw new Exception("my custom exception")); - notified, after they occured to allow a test to react to changes on the
MockFileSystem.Notifyproperty: These methods return an awaitable object that- Removes the notification on dispose
- Provides a blocking mechanism until the notification happens
MockFileSystem fileSystem = new(); fileSystem.Notify .OnCreated(FileSystemTypes.File, _ => { // Do something }) .ExecuteWhileWaiting(() => { // This will trigger the callback fileSystem.File.Create("some-file.txt"); }) .Wait();
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. 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 is compatible. 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 is compatible. |
| .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
- DotNet.Glob (>= 3.1.3)
- System.Linq.Async (>= 7.0.0)
- System.Threading.Channels (>= 10.0.2)
- Testably.Abstractions.Interface (>= 10.0.0)
-
.NETStandard 2.1
- DotNet.Glob (>= 3.1.3)
- System.Linq.Async (>= 7.0.0)
- System.Threading.Channels (>= 10.0.2)
- Testably.Abstractions.Interface (>= 10.0.0)
-
net10.0
- DotNet.Glob (>= 3.1.3)
- Testably.Abstractions.Interface (>= 10.0.0)
-
net6.0
- DotNet.Glob (>= 3.1.3)
- System.Linq.Async (>= 7.0.0)
- System.Threading.Channels (= 6.0.0)
- Testably.Abstractions.Interface (>= 10.0.0)
-
net8.0
- DotNet.Glob (>= 3.1.3)
- System.Linq.Async (>= 7.0.0)
- System.Threading.Channels (= 8.0.0)
- Testably.Abstractions.Interface (>= 10.0.0)
-
net9.0
- DotNet.Glob (>= 3.1.3)
- System.Linq.Async (>= 7.0.0)
- System.Threading.Channels (>= 10.0.2)
- Testably.Abstractions.Interface (>= 10.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Testably.Abstractions.Testing:
| Package | Downloads |
|---|---|
|
Testably.Abstractions.FluentAssertions
FluentAssertions extension methods for `Testably.Abstractions`. |
|
|
AnakinRaW.CommonUtilities.Testing
Provides common utilities for testing projects. |
GitHub repositories (2)
Showing the top 2 popular GitHub repositories that depend on Testably.Abstractions.Testing:
| Repository | Stars |
|---|---|
|
Monitor221hz/Pandora-Behaviour-Engine-Plus
Patcher for behavior, character, and skeleton project files for Skyrim Special Edition.
|
|
|
TeamWheelWizard/WheelWizard
WheelWizard, Retro Rewind Launcher
|
| Version | Downloads | Last Updated |
|---|---|---|
| 5.1.1 | 80 | 2/15/2026 |
| 5.1.0 | 2,480 | 2/2/2026 |
| 5.0.3 | 1,982 | 1/21/2026 |
| 5.0.2 | 6,654 | 1/10/2026 |
| 5.0.1 | 10,178 | 12/1/2025 |
| 5.0.0 | 5,879 | 11/12/2025 |
| 4.3.9 | 10,836 | 9/19/2025 |
| 4.3.8 | 1,204 | 9/16/2025 |
| 4.3.7 | 1,097 | 9/12/2025 |
| 4.3.6 | 2,170 | 9/11/2025 |
| 4.3.5 | 394 | 9/10/2025 |
| 4.3.4 | 467 | 9/9/2025 |
| 4.3.3 | 694 | 9/6/2025 |
| 4.3.2 | 5,687 | 8/15/2025 |
| 4.3.1 | 495 | 8/11/2025 |
| 4.3.0 | 310 | 8/10/2025 |
| 4.2.1 | 1,474 | 7/18/2025 |
| 4.2.0 | 785 | 7/13/2025 |
| 4.1.0 | 261 | 7/11/2025 |
| 4.0.1 | 18,623 | 3/13/2025 |