Предположим, у меня много таких классов (Foo1, Foo2 ..)
class Foo
{
public int F{get; set;}
public Bar ConvertToBar ()
{
return new Bar(){ B = this.F*10 };
}
}
Все, что у них общего, - это метод ConvertToBar ().
У меня есть два подхода к единице-проверить этот метод:
Вызвать преобразование в ConvertToBar () и проверить все его свойства (я должен сделать это во всех тестах для каждого класса, как Foo)
Barbar = foo.ConvertToBar ();Assert.AreEqual (Ожидаемое значение, bar.Property);...
Написать вспомогательный метод, который сравнивает два экземпляра Bar и затем использует его следующим образом:
Bar Ожидаемый бар = Новый бар () Assert.True (barCompareMethod (Ожидаемый бар), foo.ConvertToBar ());
Как лучше написать модульный тест для этого метода?