FluentAssertions Сравните два IQueryables - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть два Iqueryables, которые имеют разные значения.Я хочу использовать FluentAssertions для сравнения элементов в Iqueryable для моих юнит-тестов.

У меня есть следующее:

[Fact]
public void TestCompareIQueryables()
{
    // Arrange
    var objects1 = new CustomObject[]
    {
        new CustomObject {
            Code = "Code1",
            Name = "Name1"
        }
    }.AsQueryable();

    var objects2 = new CustomObject []
    {
        new CustomObject {
            Code = "Code2",
            Name = "Name2"
    }
    }.AsQueryable();

    // Assert
    objects1.Should().HaveSameCount(objects2);
    objects1.Should().BeEquivalentTo(objects1);
    objects1.Should().BeEquivalentTo(objects2);
}

Что происходит, когда я запускаю этот факт, так это то, чтопроходит, но я ожидаю, что последний должен (). BeEquivalentTo () потерпит неудачу.

Я что-то упустил, что тест не работает здесь, как ожидалось?Как правильно сравнить каждый элемент с каждым в двух IQueryables?

Буду признателен за любую помощь!

1 Ответ

0 голосов
/ 21 февраля 2019

Исправление в другом вызове от FluentAssertions:

objects1.Should().BeSameAs(objects2);

Это дает ожидаемую ошибку.

...