0

ここでやりたいことは、ラムダ式クエリが期待どおりの Customers のリストを返すことを確認することだけです。

だから私は:

  1. クエリの実際の結果を Customer 型のリストとして取得 (IEnumerable から)
  2. 顧客タイプの予期されるリストを作成しました
  3. CollectionAssert を使用して、各リストに同じメンバーのコレクションがあることを確認しました
  4. しかし、テストは次の理由で失敗します。

ここに画像の説明を入力

よくわかりません。私が見る限り、同じジェネリック型の 2 つのリストを比較しているだけです。私は何が欠けていますか?これにさまざまなキャストなどを試すのに約1時間費やしたので、助けていただければ幸いです。

ありがとう

PS私は一般的にラムダ、linq、およびユニットテストで遊んでいますが、これは本当に私を悩ませています!

コード

4

1 に答える 1

0

FluentAssertコレクションをアサートするために使用することをお勧めします。ほぼ何にでも使えますが、コレクション用としてはとても良いです。

そうでなければ、この種のアサーションを行うことができます。

Assert.AreEqual(2, actual.Count);
Assert.AreEqual("jim", actual[0].FirstName); //and more 

または、オブジェクトのカスタム等値比較子が必要です。

于 2013-11-04T03:12:08.377 に答える