小编Los*_*WPF的帖子

使用Moq模拟Prism事件聚合器进行单元测试

我需要一些关于如何在单元测试中使用Moq的建议,以确保我所测试的课程表现得如何.那就是被测试的类发布了一个Event Aggregator(来自Prism)事件,我需要一些方法断言在我的测试中引发了这个事件.

我没有很多工作资源,我发现很难知道如何设置它.

我有 :-

public SomeEvent : CompositePresentationEvent<SomeEvent>
{
   EventPayload
}

public SomeClass
{
     void Allocate(){EventAggregator.Publish<SomeEvent>}
}

public SomeService : IService
{
     SomeService(){ EventAggregator.Subscribe<SomeEvent>(DoSomething)}
     void DoSomething(SomeEvent evt){}
}
Run Code Online (Sandbox Code Playgroud)

我认为,如果我的测试是针对SomeClass的,我需要验证如果我调用SomeClass.Allocate正在发布SomeEvent消息.这是怎么做到的?

我是否还需要验证模拟的SomeService是否正在接收SomeEvent?或者这是一个单独的单元测试属于SomeService单元测试而不是SomeClass?

无论如何,不​​知道如何设置任何这样的任何建议将不胜感激.

nunit unit-testing moq mocking eventaggregator

6
推荐指数
1
解决办法
4117
查看次数

标签 统计

eventaggregator ×1

mocking ×1

moq ×1

nunit ×1

unit-testing ×1