Skip to content

Commit 5840ad0

Browse files
committed
Added support for multiple messenger types to tests
1 parent cf515e6 commit 5840ad0

File tree

3 files changed

+128
-81
lines changed

3 files changed

+128
-81
lines changed

UnitTests/UnitTests.Shared/Mvvm/Test_Messenger.Request.cs

Lines changed: 33 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@ public partial class Test_Messenger
1515
{
1616
[TestCategory("Mvvm")]
1717
[TestMethod]
18-
public void Test_Messenger_RequestMessage_Ok()
18+
[DataRow(typeof(Messenger))]
19+
public void Test_Messenger_RequestMessage_Ok(Type type)
1920
{
20-
var messenger = new Messenger();
21+
var messenger = (IMessenger)Activator.CreateInstance(type);
2122
var recipient = new object();
2223
object test = null;
2324

@@ -42,20 +43,22 @@ void Receive(object recipient, NumberRequestMessage m)
4243

4344
[TestCategory("Mvvm")]
4445
[TestMethod]
46+
[DataRow(typeof(Messenger))]
4547
[ExpectedException(typeof(InvalidOperationException))]
46-
public void Test_Messenger_RequestMessage_Fail_NoReply()
48+
public void Test_Messenger_RequestMessage_Fail_NoReply(Type type)
4749
{
48-
var messenger = new Messenger();
50+
var messenger = (IMessenger)Activator.CreateInstance(type);
4951

5052
int result = messenger.Send<NumberRequestMessage>();
5153
}
5254

5355
[TestCategory("Mvvm")]
5456
[TestMethod]
57+
[DataRow(typeof(Messenger))]
5558
[ExpectedException(typeof(InvalidOperationException))]
56-
public void Test_Messenger_RequestMessage_Fail_MultipleReplies()
59+
public void Test_Messenger_RequestMessage_Fail_MultipleReplies(Type type)
5760
{
58-
var messenger = new Messenger();
61+
var messenger = (IMessenger)Activator.CreateInstance(type);
5962
var recipient = new object();
6063

6164
void Receive(object recipient, NumberRequestMessage m)
@@ -75,9 +78,10 @@ public class NumberRequestMessage : RequestMessage<int>
7578

7679
[TestCategory("Mvvm")]
7780
[TestMethod]
78-
public async Task Test_Messenger_AsyncRequestMessage_Ok_Sync()
81+
[DataRow(typeof(Messenger))]
82+
public async Task Test_Messenger_AsyncRequestMessage_Ok_Sync(Type type)
7983
{
80-
var messenger = new Messenger();
84+
var messenger = (IMessenger)Activator.CreateInstance(type);
8185
var recipient = new object();
8286

8387
void Receive(object recipient, AsyncNumberRequestMessage m)
@@ -98,9 +102,10 @@ void Receive(object recipient, AsyncNumberRequestMessage m)
98102

99103
[TestCategory("Mvvm")]
100104
[TestMethod]
101-
public async Task Test_Messenger_AsyncRequestMessage_Ok_Async()
105+
[DataRow(typeof(Messenger))]
106+
public async Task Test_Messenger_AsyncRequestMessage_Ok_Async(Type type)
102107
{
103-
var messenger = new Messenger();
108+
var messenger = (IMessenger)Activator.CreateInstance(type);
104109
var recipient = new object();
105110

106111
async Task<int> GetNumberAsync()
@@ -128,20 +133,22 @@ void Receive(object recipient, AsyncNumberRequestMessage m)
128133

129134
[TestCategory("Mvvm")]
130135
[TestMethod]
136+
[DataRow(typeof(Messenger))]
131137
[ExpectedException(typeof(InvalidOperationException))]
132-
public async Task Test_Messenger_AsyncRequestMessage_Fail_NoReply()
138+
public async Task Test_Messenger_AsyncRequestMessage_Fail_NoReply(Type type)
133139
{
134-
var messenger = new Messenger();
140+
var messenger = (IMessenger)Activator.CreateInstance(type);
135141

136142
int result = await messenger.Send<AsyncNumberRequestMessage>();
137143
}
138144

139145
[TestCategory("Mvvm")]
140146
[TestMethod]
147+
[DataRow(typeof(Messenger))]
141148
[ExpectedException(typeof(InvalidOperationException))]
142-
public async Task Test_Messenger_AsyncRequestMessage_Fail_MultipleReplies()
149+
public async Task Test_Messenger_AsyncRequestMessage_Fail_MultipleReplies(Type type)
143150
{
144-
var messenger = new Messenger();
151+
var messenger = (IMessenger)Activator.CreateInstance(type);
145152
var recipient = new object();
146153

147154
void Receive(object recipient, AsyncNumberRequestMessage m)
@@ -161,9 +168,10 @@ public class AsyncNumberRequestMessage : AsyncRequestMessage<int>
161168

162169
[TestCategory("Mvvm")]
163170
[TestMethod]
164-
public void Test_Messenger_CollectionRequestMessage_Ok_NoReplies()
171+
[DataRow(typeof(Messenger))]
172+
public void Test_Messenger_CollectionRequestMessage_Ok_NoReplies(Type type)
165173
{
166-
var messenger = new Messenger();
174+
var messenger = (IMessenger)Activator.CreateInstance(type);
167175
var recipient = new object();
168176

169177
void Receive(object recipient, NumbersCollectionRequestMessage m)
@@ -179,9 +187,10 @@ void Receive(object recipient, NumbersCollectionRequestMessage m)
179187

180188
[TestCategory("Mvvm")]
181189
[TestMethod]
182-
public void Test_Messenger_CollectionRequestMessage_Ok_MultipleReplies()
190+
[DataRow(typeof(Messenger))]
191+
public void Test_Messenger_CollectionRequestMessage_Ok_MultipleReplies(Type type)
183192
{
184-
var messenger = new Messenger();
193+
var messenger = (IMessenger)Activator.CreateInstance(type);
185194
object
186195
recipient1 = new object(),
187196
recipient2 = new object(),
@@ -232,9 +241,10 @@ public class NumbersCollectionRequestMessage : CollectionRequestMessage<int>
232241

233242
[TestCategory("Mvvm")]
234243
[TestMethod]
235-
public async Task Test_Messenger_AsyncCollectionRequestMessage_Ok_NoReplies()
244+
[DataRow(typeof(Messenger))]
245+
public async Task Test_Messenger_AsyncCollectionRequestMessage_Ok_NoReplies(Type type)
236246
{
237-
var messenger = new Messenger();
247+
var messenger = (IMessenger)Activator.CreateInstance(type);
238248
var recipient = new object();
239249

240250
void Receive(object recipient, AsyncNumbersCollectionRequestMessage m)
@@ -250,9 +260,10 @@ void Receive(object recipient, AsyncNumbersCollectionRequestMessage m)
250260

251261
[TestCategory("Mvvm")]
252262
[TestMethod]
253-
public async Task Test_Messenger_AsyncCollectionRequestMessage_Ok_MultipleReplies()
263+
[DataRow(typeof(Messenger))]
264+
public async Task Test_Messenger_AsyncCollectionRequestMessage_Ok_MultipleReplies(Type type)
254265
{
255-
var messenger = new Messenger();
266+
var messenger = (IMessenger)Activator.CreateInstance(type);
256267
object
257268
recipient1 = new object(),
258269
recipient2 = new object(),

0 commit comments

Comments
 (0)