Я бы посоветовал вам высказать свои Session
s для создания тестовых данных, описанных @Jon Skeet. Используя mocks, вы изолируете тестируемый код только от свойства TotalHours
, а не от свойства и реализации Session
.
Используя moq , вы можете сделать следующее, чтобы настроить тестовые данные, вызвать TotalHours
и утверждать, что результатом является ожидаемое вами значение:
var data = new List<ISession>
{
Mock.Of<ISession>(s => s.Start == DateTime.Parse("12:00 AM") && s.End == DateTime.Parse("12:10 AM")),
Mock.Of<ISession>(s => s.Start == DateTime.Parse("1:00 AM") && s.End == DateTime.Parse("1:15 AM")),
Mock.Of<ISession>(s => s.Start == DateTime.Parse("2:00 AM") && s.End == DateTime.Parse("2:30 AM"))
};