回答編集履歴

2

補足追加

2017/06/16 13:52

投稿

Tokeiya3
Tokeiya3

スコア260

test CHANGED
@@ -74,6 +74,6 @@
74
74
 
75
75
  概ねこのような形になるかと。
76
76
 
77
- 戻り値をTaskにする必要があります。
77
+ voidしにすると、Test runnerが非同期状態のテストを待機不可能になるため、戻り値をTaskにする必要があります。
78
78
 
79
79
 

1

追記

2017/06/16 13:52

投稿

Tokeiya3
Tokeiya3

スコア260

test CHANGED
@@ -31,3 +31,49 @@
31
31
 
32
32
 
33
33
  TaskのResultを取得していないのが問題なのではないでしょうか?
34
+
35
+
36
+
37
+
38
+
39
+ ----
40
+
41
+ 追記
42
+
43
+ asyncなテストを構築したいのなら、
44
+
45
+ ```csharp
46
+
47
+ [TestMethod]
48
+
49
+ public async Task PrivateAsyncTest()
50
+
51
+ {
52
+
53
+ PrivateObject po=new PrivateObject(new PrivateAccess());
54
+
55
+
56
+
57
+ var actual = await (po.Invoke("PrivateComplexAsyncTask") as Task<int>);
58
+
59
+
60
+
61
+ Assert.AreEqual(246, actual);
62
+
63
+
64
+
65
+ }
66
+
67
+
68
+
69
+
70
+
71
+ ```
72
+
73
+
74
+
75
+ 概ねこのような形になるかと。
76
+
77
+ 戻り値をTaskにする必要があります。
78
+
79
+