Navigate:
~$MOQ0.1%

Moq: Mocking library for .NET using LINQ

Mock .NET objects using lambda expressions and LINQ.

LIVE RANKINGS • 10:20 AM • STEADY
OVERALL
#416
26
DEVELOPER TOOLS
#89
12
30 DAY RANKING TREND
ovr#416
·Devel#89
STARS
6.4K
FORKS
841
7D STARS
+3
7D FORKS
-1
See Repo:
Share:

Learn more about Moq

Moq is a mocking library built for .NET that leverages LINQ expression trees and lambda expressions as its core mechanism for defining mock behavior. The library provides two primary APIs: a traditional Setup/Verify pattern and a LINQ-based Mock.Of approach that allows inline mock configuration. It generates mock implementations at runtime without requiring record/replay workflows or proxy generation frameworks. Moq is commonly used in unit testing to isolate dependencies and verify method interactions.

Moq

1

LINQ-Based Mock Configuration

Define mock behavior using lambda expressions and LINQ syntax directly in test code. Eliminates separate configuration steps by embedding setup and verification inline with test logic.

2

Setup/Verify Pattern

Configure expectations before or after method calls without record/replay workflows. Simplifies test structure by decoupling mock definition from execution order.

3

Runtime Mock Generation

Creates mock implementations at runtime without code generation or separate files. Define mock behavior inline with tests using fluent API, keeping test logic colocated and readable.


using Moq;
using Xunit;

var mockRepository = new Mock<IUserRepository>();
mockRepository.Setup(repo => repo.GetUserById(42))
    .Returns(new User { Id = 42, Name = "John Doe" });

var user = mockRepository.Object.GetUserById(42);
Assert.Equal("John Doe", user.Name);



[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers