bbv.LambdaTale
2.9.304
See the version list below for details.
dotnet add package bbv.LambdaTale --version 2.9.304
NuGet\Install-Package bbv.LambdaTale -Version 2.9.304
<PackageReference Include="bbv.LambdaTale" Version="2.9.304" />
<PackageVersion Include="bbv.LambdaTale" Version="2.9.304" />
<PackageReference Include="bbv.LambdaTale" />
paket add bbv.LambdaTale --version 2.9.304
#r "nuget: bbv.LambdaTale, 2.9.304"
#:package bbv.LambdaTale@2.9.304
#addin nuget:?package=bbv.LambdaTale&version=2.9.304
#tool nuget:?package=bbv.LambdaTale&version=2.9.304
LambdaTale
is a xUnit.net extension for describing each step in a test with natural language.
This is a fork of xBehave.net. Adam, thank you very much!
Platform support: .NET 6 and .NET 4.7.2 upwards.
Usage
Install the bbv.LambdaTale
NuGet package and start using LambdaTale in your tests.
LambdaTale can be used in two different ways: Through a string extension method or a static Spec()
method. Both usages are described below.
String Extension Method
An example of using LambdaTale with the x()
extension method is given below.
using System.Threading.Tasks;
using LambdaTale;
namespace Your.Tests;
public class SomeFeature
{
public class OracleService
{
public Task<int> Run() => Task.FromResult(42);
}
[Scenario]
public void SimpleDemo(int answer, OracleService sut)
{
"Given a magic oracle"
.x(() => sut = new OracleService());
"the answer"
.x(async () => answer = await sut.Run());
"is always known"
.x(() => Xunit.Assert.Equal(42, answer));
}
}
Static Spec Method
An example of using LambdaTale with a C# 6.0 using static
directive and the static Spec()
method is given below.
using System.Threading.Tasks;
using LambdaTale;
using static LambdaTale.Specifications;
namespace Your.Tests;
public class SomeFeature
{
public class OracleService
{
public Task<int> Run() => Task.FromResult(42);
}
[Scenario]
public void SimpleDemo(int answer, OracleService sut)
{
Spec("Given a magic oracle", () => sut = new OracleService());
Spec("the answer", async () => answer = await sut.Run());
Spec("is always known", () => Xunit.Assert.Equal(42, answer));
}
}
Gotchas
The ITestOutputHelper
will only write to test steps. Messages written before the first step (e.g. in the constructor, [Background]
, outside step definitions) will be logged as part of the first step, messages written after the last step (e.g. inside Dispose
) will be logged as part of the last step.
Packages
The LambdaTale
package depends on the xunit.core
package. That means you get only the minimum dependencies required to write and execute LambdaTale scenarios.
Versions
LambdaTale follows the versioning scheme of xUnit.net. xUnit.net and LambdaTale do not follow SemVer and may introduce breaking changes in minor (or even patch) versions. Each minor version of LambdaTale is linked to the equivalent minor version of xUnit.net. The LambdaTale patch version is incremented to the next multiple of 100 each time it is linked to a new xUnit.net patch version. For example, LambdaTale 2.5.0 is linked with xUnit.net 2.5.0, and LambdaTale 2.5.100 is linked with xUnit 2.5.1.
A given LambdaTale patch version may introduce new features, fix bugs, or both.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | 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 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 Framework | net472 is compatible. net48 was computed. net481 was computed. |
-
.NETFramework 4.7.2
- xunit.core (>= 2.9.3 && < 2.10.0)
- xunit.extensibility.execution (>= 2.9.3 && < 2.10.0)
-
net6.0
- xunit.core (>= 2.9.3 && < 2.10.0)
- xunit.extensibility.execution (>= 2.9.3 && < 2.10.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on bbv.LambdaTale:
Repository | Stars |
---|---|
FakeItEasy/FakeItEasy
The easy mocking library for .NET
|
Version | Downloads | Last Updated | |
---|---|---|---|
2.9.306 | 2,862 | 8/18/2025 | |
2.9.305 | 7,703 | 6/4/2025 | |
2.9.305-rc1 | 153 | 6/3/2025 | |
2.9.304 | 477 | 6/3/2025 | |
2.9.303 | 506 | 6/3/2025 | |
2.9.303-RC1 | 327 | 6/2/2025 | |
2.9.302 | 8,204 | 3/30/2025 | |
2.9.301 | 7,318 | 2/10/2025 | |
2.9.300 | 3,511 | 1/8/2025 | |
2.9.200 | 17,425 | 9/27/2024 | |
2.9.2 | 7,603 | 8/7/2024 | |
2.9.1 | 3,357 | 7/10/2024 | |
2.9.0 | 469 | 7/9/2024 | |
2.9.0-net462 | 298 | 5/30/2025 | |
2.8.100 | 4,680 | 5/27/2024 | |
2.8.1 | 2,143 | 4/30/2024 | |
2.8.0 | 335 | 4/30/2024 | |
2.7.100 | 2,842 | 4/12/2024 | |
2.7.0 | 5,380 | 2/16/2024 | |
2.6.600 | 5,621 | 1/16/2024 | |
2.6.500 | 1,598 | 1/8/2024 | |
2.6.300 | 14,313 | 12/11/2023 | |
2.6.201 | 680 | 12/4/2023 | |
2.6.200 | 12,705 | 11/28/2023 | |
2.5.600 | 340 | 1/16/2024 | |
2.5.100 | 5,925 | 9/18/2023 | |
2.5.3 | 2,839 | 8/11/2023 | |
2.5.2 | 1,144 | 8/10/2023 | |
2.5.1 | 435 | 8/10/2023 | |
2.5.1-alpha.1 | 309 | 8/9/2023 |