小编use*_*960的帖子

使用Moq验证使用不同对象状态的方法调用

最近我Moq在一个C#项目中发现了图书馆(4.5.21)非常有趣的行为.以下是我要测试的课程.

public class Order
{
    public string State { get; set; }
}

public interface IOrderService
{
    Task UpdateOrderAsync(Order order);
}

public class Program
{
    public async Task RunAsync(IOrderService orderService)
    {
        var order = new Order();

        order.State = "new";
        await orderService.UpdateOrderAsync(order);

        order.State = "open";
        await orderService.UpdateOrderAsync(order);
    }
}
Run Code Online (Sandbox Code Playgroud)

以下是我的TestClass:

[TestMethod]
public async Task TestMethod()
{
    var mock = new Mock<IOrderService>();
    await new Program().RunAsync(mock.Object);

    mock.Verify(x => x.UpdateOrderAsync(It.Is<Order>(o => o.State == "new")), Times.Once);
    mock.Verify(x => x.UpdateOrderAsync(It.Is<Order>(o => o.State == "open")), …
Run Code Online (Sandbox Code Playgroud)

c# testing methods moq mocking

8
推荐指数
1
解决办法
602
查看次数

将.cspkg部署到Azure仿真器

在我的构建管道中,我想.cspkg打包并使用csrun实用程序在Azure仿真器中本地启动服务并针对它运行一些E2E测试。是否可以按.cspkg原样运行或仅csx在云项目中有文件夹时才能运行?

谢谢。

azure azure-compute-emulator

5
推荐指数
0
解决办法
195
查看次数

标签 统计

azure ×1

azure-compute-emulator ×1

c# ×1

methods ×1

mocking ×1

moq ×1

testing ×1