私はさまざまな機能を実行する関数クラスを持っています (衝撃的です、私は知っています)。そのような関数の 1 つは、指定された年の祝日のリストを返すことです。各計算には独自のプライベート関数があるため、パブリック関数は実際にはさまざまな休日をリストにコンパイルするだけです。
これでいくつかのテストを実行したいのですが、プライベート メソッドでテストを実行できないことは明らかなので、TestInitialize メソッドのリストを取り出して、それをさまざまなテストに使用します。
問題は、元旦を次のようなもので引き抜いたとしlist.SingleOrDefault(p => p.HolidayName.Equals("New Year's Day"))
ます。意図したテストを実行する前に、それがnullかどうかを確認するのが最善です(私が知る限り、それ自体が2つのアサートです) ...)。
それで、私が推測する2つの質問。1. この状況は、ルール1 assert per unit test
の例外ですか? それとも、null アサーションと週末アサーションを分離する必要がありますか?
2. 私が知る限り、週末ではないことを確認するための 2 つのアサーションがあります。1 つは曜日が土曜日と等しくないかどうかをチェックし、もう 1 つは曜日が日曜日と等しくないかどうかをチェックします。それとも私はここで間違っていますか?