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