PaxDev.Machine.Fakes.Async
1.0.1
dotnet add package PaxDev.Machine.Fakes.Async --version 1.0.1
NuGet\Install-Package PaxDev.Machine.Fakes.Async -Version 1.0.1
<PackageReference Include="PaxDev.Machine.Fakes.Async" Version="1.0.1" />
<PackageVersion Include="PaxDev.Machine.Fakes.Async" Version="1.0.1" />
<PackageReference Include="PaxDev.Machine.Fakes.Async" />
paket add PaxDev.Machine.Fakes.Async --version 1.0.1
#r "nuget: PaxDev.Machine.Fakes.Async, 1.0.1"
#:package PaxDev.Machine.Fakes.Async@1.0.1
#addin nuget:?package=PaxDev.Machine.Fakes.Async&version=1.0.1
#tool nuget:?package=PaxDev.Machine.Fakes.Async&version=1.0.1
Overview
PaxDev.Machine.Fakes.Async is a library to help reduce boiler plate
code associated with using Machine.Fakes method mocking with Task<T>.
To use simply reference the NuGet package and then write code like the following:
public interface ITestInterface
{
Task<string> MethodWithTwoParameters(string parameter1, int parameter2);
}
public class When_testing_a_method_that_returns_a_task : WithFakes
{
Establish context = () =>
The<ITestInterface>()
.WhenToldTo(d => d.MethodWithTwoParameters(Param<string>.IsAnything, Param<int>.IsAnything))
.ReturnAsync((string s, int i) => DoFunction(s, i));
static string DoFunction(string s, int i) => $"Do something with {s} and {i}";
}
You can, of course, inline the function declaration. Under the hood, the library
will create a CompletedTask with the value of the function / return value.
This has an additional benefit when the Result type is polymorphic. .Net is able
to infer the correct Task<T> from the method signature and cast the Result to the
correct type.
| 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 was computed. 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 was computed. 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 | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard1.3 is compatible. netstandard1.4 was computed. netstandard1.5 was computed. netstandard1.6 was computed. netstandard2.0 was computed. netstandard2.1 was computed. |
| .NET Framework | net46 was computed. 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 | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
| Universal Windows Platform | uap was computed. uap10.0 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 1.3
- Machine.Fakes (>= 2.10.0)
- NETStandard.Library (>= 1.6.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.