3

日付を手動で抽出する機能があります。

[TestMethod]
public void TestRemoveTwoDates()
{
    String test = "at 06/2/2012 to 12/10/2012";
    int[][] actual = String_Parser.RemoveTwoDates(test, "to");
    int[][] expected = new int[2][];
    expected[0] = new int[3] { 6, 2, 2012 };
    expected[1] = new int[3] { 12, 10, 2012 };

    CollectionAssert.AreEqual(expected, actual);
}

PS SOをブラウジングすると、配列は変更可能であるため、配列を返すことはお勧めできません。しかし、ループを使用して配列内の各要素をアサートする以外に、これをテストする方法を知りたいです。

4

2 に答える 2

4

配列の内容ではなく参照を使用するハッシュコードを使用できないため、ネストされたループですべての値を繰り返し、値ごとに比較する方法があります(stackoverflow.com/questions/2893297/iterate-のように) multi-dimensional-array-with-nested-foreach-statement )、最初の不一致で false に設定したブール値を使用し、ユニット テストでこのブール値がtrueであることをアサートします。

于 2012-11-02T06:12:36.530 に答える
0

https://fluentassertions.com/introductionのCollection セクションを見てください。

于 2012-11-02T06:40:19.703 に答える