Здравствуйте.
Пишу сюда, потому что раздел "Тестирование", кажется, мёртв.
В общем, в нашей системе есть классы, которые генерируют SQL-код по неким переданным параметрам (в виде объектов).
Сейчас тесты выглядят как-то так:
string generatedSql = generator.BuildSelectStatement(queryOptions);
Assert.AreEqual(generatedSql, @"SELECT T.f1, T.f2 FROM table1 T WHERE T.f1=42"); // типа того, только намного длиннее
И тесты получаются очень хрупкие. Во-первых, мешается форматирование — пробельчики и тому подобное.Во-вторых, стоит добавить, например, в генерируемый код комментарий, и приходится добавлять его в тесты.
Какой есть "правильный" способ тестировать такое?