tSQLt — Как работает AssertEqualsTable?

В tSQLt есть команда AssertEqualsTable, которая проверяет совпадение содержимого двух таблиц.

Я хотел бы понять, как работает логика, использует ли он первый столбец как JOIN между двумя таблицами, чтобы затем проверить, совпадают ли остальные столбцы для этой строки (соединения)?


person variable    schedule 31.05.2018    source источник


Ответы (1)


AssertEqualsTable сравнивает всю строку, то есть все столбцы. Например, если таблица expected имеет одну строку из четырех столбцов («A», «B», «C», «D»), а actual также имеет одну строку («A», «B», «C», «E '), результат, возвращаемый AssertEqualsTable, будет содержать две строки: ожидаемая строка ABCD, которая не найдена, и строка ABCE, возвращенная, но НЕ ожидаемая.

Нет никакой гарантии, что ожидаемая и фактическая таблицы в каждом отдельном тесте, который кто-либо может захотеть написать, будут даже иметь уникальный ключ, поэтому сравнение должно основываться на всей строке.

person datacentricity    schedule 04.06.2018