如果我有一个将Person
对象转换为PersonDTO
对象的扩展方法,则
fluentassertions
如何断言转换是正确的我的扩展方法是:
public static PersonDTO ToDto (this Person person)
{
if (person == null) return null;
return new PersonDTO
{
FirstName = person.FirstName,
LastName = person.LastName,
Dob = person.Dob,
Identifier= person.Id
};
}
我的人员对象具有其他未映射的属性。
要获取personDTO对象,我将执行以下类似操作:
var newPerson = new Person{ //set properties here };
var personDto = newPerson.ToDto();
答案 0 :(得分:1)
首先,是的,应该对此代码进行测试。
为了检查转换是否正确,您必须手动构建预期结果,然后断言该函数的结果是否相同:
var person = new Person{ ... };
var expectedPersonDto = new PersonDto{ ... };
person.ToDto().Should().BeEquivalentTo(expectedPersonDto);
有关比较对象图的更多信息,请参见this。