Verify.Moq

April 9, 2026 ยท View on GitHub

Discussions Build status NuGet Status

Adds Verify support for verifying Moq types.

See Milestones for release notes.

Sponsors

Entity Framework Extensions

Entity Framework Extensions is a major sponsor and is proud to contribute to the development this project.

Entity Framework Extensions

Developed using JetBrains IDEs

JetBrains logo.

NuGet

Usage

[ModuleInitializer]
public static void Init() =>
    VerifyMoq.Initialize();

snippet source | anchor

Given an interface:

public interface ITarget
{
    string Method(int a, int b);
}

snippet source | anchor

The Mock and its invocations can then be verified:

[Test]
public Task Test()
{
    var mock = new Mock<ITarget>();

    mock.Setup(_ => _.Method(It.IsAny<int>(), It.IsAny<int>()))
        .Returns("response");

    var target = mock.Object;
    target.Method(1, 2);
    return Verify(mock);
}

snippet source | anchor

Results in:

[
  {
    Method: ITarget.Method(int a, int b),
    Arguments: {
      Arguments: {
        a: 1,
        b: 2
      }
    },
    ReturnValue: response
  }
]

snippet source | anchor

Scrubbing Arguments

Arguments can be scrubbed by name:

[Test]
public Task ScrubArguments()
{
    var mock = new Mock<ITarget>();

    mock.Setup(_ => _.Method(It.IsAny<int>(), It.IsAny<int>()))
        .Returns("response");

    var target = mock.Object;
    target.Method(1, 2);
    return Verify(mock)
        .ScrubMember("a");
}

snippet source | anchor

Results in:

[
  {
    Method: ITarget.Method(int a, int b),
    Arguments: {
      Arguments: {
        a: {Scrubbed},
        b: 2
      }
    },
    ReturnValue: response
  }
]

snippet source | anchor