Slide 172
Slide 172 text
こちらに登壇時の映
像をいれるので、文
字を載せないように
して下さい。
DiagnosticsAssert.AreEqual(IEnumerable expected, IEnumerable actual);
レポートされた問題の数( DiagnosticのIEnumerableの個数)
レポートされた問題のファイル内の位置(ファイルパス含む)
アナライザーの ID
メッセージ
の4つの観点を比較している
Assert.Fail failed. Missing 1 diagnostics, extra 1 diagnostics of all 1 diagnostics:
missing path/to/file1.cs: (1,2)-(3,4), CS1001, Identifier expected
extra path/to/file2.cs: (5,6)-(7,8), CS1002, ; expected
出力例
Assert.AreEqual(expectedDiagnostics.Count, actualDiagnostics.Length);
Assert.AreEqual(expectedDiagnostics.First().Id, actualDiagnostics.First().Id);
Assert.AreEqual(expectedDiagnostics.First().GetMessage(), actualDiagnostics.First().GetMessage());
Assert.AreEqual(expectedDiagnostics.First().Location.GetLineSpan(), actualDiagnostics.First().Location.GetLineSpan());