public void NeedsToBeSent_returns_true_if_the_given_appointment_matches_the_current_time(
int minute, bool expectedResult)
{
var appointment = new Appointment
{
Time = new DateTime(2015, 07, 15, 12, 00, 00),
Timezone = "Pacific Standard Time"
};
// For simplicity lets assume the local timezone is Pacific Standard Time.
var mockTimeConverter = new Mock<ITimeConverter>();
mockTimeConverter.Setup(x => x.ToLocalTime(It.IsAny<DateTime>(), It.IsAny<String>()))
.Returns(new DateTime(2015, 07, 15, 12, 00, 00));
var currentTime = new DateTime(2015, 07, 15, 11, minute, 00);
var result = new AppointmentsNotificationPolicy(appointment, mockTimeConverter.Object)
.NeedsToBeSent(currentTime);
Assert.That(result, Is.EqualTo(expectedResult));
}