LoFuUnit.AutoFakeItEasy
4.0.0-preview.1
dotnet add package LoFuUnit.AutoFakeItEasy --version 4.0.0-preview.1
NuGet\Install-Package LoFuUnit.AutoFakeItEasy -Version 4.0.0-preview.1
<PackageReference Include="LoFuUnit.AutoFakeItEasy" Version="4.0.0-preview.1" />
paket add LoFuUnit.AutoFakeItEasy --version 4.0.0-preview.1
#r "nuget: LoFuUnit.AutoFakeItEasy, 4.0.0-preview.1"
// Install LoFuUnit.AutoFakeItEasy as a Cake Addin #addin nuget:?package=LoFuUnit.AutoFakeItEasy&version=4.0.0-preview.1&prerelease // Install LoFuUnit.AutoFakeItEasy as a Cake Tool #tool nuget:?package=LoFuUnit.AutoFakeItEasy&version=4.0.0-preview.1&prerelease
LoFuUnit.AutoFakeItEasy
Use LoFuUnit and FakeItEasy to automatically Mock
/ Fake
/ Stub
dependencies.
LoFuUnit.AutoFakeItEasy and related packages makes it convenient for developers to write tests with collaboration & communication in mind.
Mocks 🦆
An example of a test with LoFuUnit.AutoFakeItEasy
, LoFuUnit.NUnit and FluentAssertions:
using System;
using FakeItEasy;
using FluentAssertions;
using LoFuUnit.AutoFakeItEasy;
using LoFuUnit.NUnit;
using NUnit.Framework;
namespace LoFuUnitDocs
{
public class MoodTests : LoFuTest<MoodIdentifier>
{
string _mood;
[LoFu, Test]
public void Identify_mood_on_mondays()
{
void given_the_current_day_is_monday()
{
var monday = new DateTime(2011, 2, 14);
A.CallTo(() =>
Use<ISystemClock>().CurrentTime)
.Returns(monday);
}
void when_identifying_my_mood() =>
_mood = Subject.IdentifyMood();
void should_be_pretty_bad() =>
_mood.Should().Be("Pretty bad");
}
}
}
Output:
Identify mood on mondays
given the current day is monday
when identifying my mood
should be pretty bad
The LoFuTest<TSubject>
base class provides auto-mocking capabilities. The generic type parameter defines what kind of subject under test to create.
The Use<TDependency>
method creates a mock that the subject is dependent upon, and it can later be accessed via the The<TDependency>
method.
Use these methods to configure the behavior and verify the interaction with the mocks.
The Subject
property returns an auto-mocked instance of the subject under test.
More documentation is available at https://github.com/hlaueriksson/LoFuUnit
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. |
.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
- AutoFixture.AutoFakeItEasy (>= 5.0.0-preview0011)
- LoFuUnit (>= 4.0.0-preview.1)
- LoFuUnit.Auto (>= 4.0.0-preview.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
- Bump AutoFixture.AutoFakeItEasy to 5.0.0-preview0011
- The<TDependency>() can now be used get auto-mocked dependencies after the Subject has been created
- Including FakeItEasy Fake<> dependencies
- One<T> creates one fake
- Some<T> creates some fakes
- Packages added as transitive dependencies:
- FakeItEasy.Analyzer.CSharp
- Namespaces globally included if ImplicitUsings are enabled:
- FakeItEasy
- LoFuUnit.AutoFakeItEasy