Юнит-тесты и Tuple

155
21 февраля 2019, 18:10

После того как прогоняю этот тест:

[TestMethod]
public void TestMethod1()
{
    int[] input = new int[5] {6,7,8,9,10};
    List<int> group1 = new List<int>() {10,7,6};
    List<int> group2 = new List<int>() {9,8};
    var result = Tuple.Create(group1, group2);
    var output = Program.dividetoequalgroups(input);
    Assert.AreEqual(result, output);
}

Выдает такую ошибку:

Message: Сбой Assert.AreEqual. Ожидается: <(System.Collections.Generic.List`1[System.Int32], System.Collections.Generic.List`1[System.Int32])>. Фактически: <(System.Collections.Generic.List`1[System.Int32], System.Collections.Generic.List`1[System.Int32])>.

Сам метод проверял несколько раз на такие же значения через консоль, все было верно. В чем может быть проблема?

Answer 1

Решил с помощью разбора кортежа:

[TestMethod]
public void TestMethod1()
{
    int[] input = new int[5] {6,7,8,9,10};
    List<int> group1 = new List<int>() {10,7,6};
    List<int> group2 = new List<int>() {9,8};
    var temp = Program.dividetoequalgroups(input);
    List<int> output1 = temp.Item1;
    List<int> output2 = temp.Item2;
    CollectionAssert.AreEqual(output1, group1);
    CollectionAssert.AreEqual(output2, group2);
}

(P.S Спасибо Андрею NOP)

READ ALSO
WPF: Создание универсального стиля для кнопки

WPF: Создание универсального стиля для кнопки

Есть много кнопок с одинаковым стилем, в которых изменяется только иконка и название и toolTipКак создать универсальный стиль для них?

246
Вернуть BITMAP из unmanaget dll

Вернуть BITMAP из unmanaget dll

Пробовал вернуть HBITMAP из unmanaged dll на c++, но его C# не хочет переваривать, описал его как возвращаемый IntPtr, пишет о невозможности преобразования...

154
Почему выводит не все флаги

Почему выводит не все флаги

Есть готовые enum-ы

186
C# WPF Prism занять один регион другим

C# WPF Prism занять один регион другим

Как в C# WPF Prism занять один регион другим? Пример на Word'e:

179