Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions TUnit.Mocks.Assertions/MockAssertionExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,16 @@ namespace TUnit.Mocks.Assertions;
/// </summary>
public static class MockAssertionExtensions
{
/// <summary>
/// Asserts that the mock member was called at least once.
/// </summary>
public static WasCalledAssertion WasCalled(
this IAssertionSource<ICallVerification> source)
{
source.Context.ExpressionBuilder.Append($".WasCalled({nameof(Times.AtLeastOnce)})");
return new WasCalledAssertion(source.Context, Times.AtLeastOnce);
}

/// <summary>
/// Asserts that the mock member was called the specified number of times.
/// </summary>
Expand Down
14 changes: 14 additions & 0 deletions TUnit.Mocks.Tests/AsyncVerificationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,20 @@
.WasCalled(Times.AtLeastOnce);
}

[Test]
public async Task WasCalled_AtLeastOnceByDefault_Passes()
{
var mock = ICalculator.Mock();
mock.Add(Any(), Any()).Returns(42);

ICalculator calc = mock.Object;
_ = calc.Add(1, 2);
_ = calc.Add(3, 4);

await Assert.That(mock.Add(Any(), Any()))

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (macos-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (macos-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (macos-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (macos-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (macos-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (macos-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (windows-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (windows-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (windows-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (windows-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (windows-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (windows-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (ubuntu-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (ubuntu-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (ubuntu-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (ubuntu-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (ubuntu-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'

Check failure on line 97 in TUnit.Mocks.Tests/AsyncVerificationTests.cs

View workflow job for this annotation

GitHub Actions / modularpipeline (ubuntu-latest)

'ValueAssertion<TUnit_Mocks_Tests_ICalculator_Add_M0_MockCall>' does not contain a definition for 'WasCalled' and the best extension method overload 'MockAssertionExtensions.WasCalled(IAssertionSource<ICallVerification>)' requires a receiver of type 'TUnit.Assertions.Core.IAssertionSource<TUnit.Mocks.Verification.ICallVerification>'
.WasCalled();
}

[Test]
public async Task Property_Getter_WasCalled_Via_Assert()
{
Expand Down
Loading