public void CanOnlyRemindBillablePeople() { var clock = new ClockStub( new DateTimeOffset( new DateTime(2019, 03, 01, 10, 30, 0) ) ); Environment.SetEnvironmentVariable("NON_BILLABLE_PEOPLE", "[email protected],[email protected]"); var getBillablePeople = new GetBillablePeople(_slackGateway, clock); var remindBillablePeople = new RemindBillablePeople(getBillablePeople, _sendReminder); remindBillablePeople.Execute( new RemindBillablePeopleRequest { Message = "Please make sure your timesheet is submitted by 13:30 today." } ); _slackApi.ReceivedRequests.Count.Should().Be(3); _slackApi.ReceivedRequests.Should() .Contain(request => request.Url.ToString() == SlackApiAddress + SlackApiPostMessagePath); Environment.SetEnvironmentVariable("NON_BILLABLE_PEOPLE", null); }
private void HandleSetUp(IGetBillablePeople GetBillablePeople) { var remindBillablePeople = new RemindBillablePeople(GetBillablePeople, _sendReminderSpy); remindBillablePeople.Execute( new RemindBillablePeopleRequest { Message = "TIMESHEETS ARE GOOD YO!" } ); }
private void RemindBillablePeopleJob() { var remindBillablePeople = new RemindBillablePeople(_getBillablePeople, _sendReminder); remindBillablePeople.Execute( new RemindBillablePeopleRequest { Message = Environment.GetEnvironmentVariable("SLACK_REMINDER_MESSAGE") } ); }
public void CanRemindBillablePeopleEndOfTheMonth() { var clock = new ClockStub( new DateTimeOffset( new DateTime(2019, 07, 31, 10, 30, 0) ) ); var getBillablePeople = new GetBillablePeople(_slackGateway, clock); var remindBillablePeople = new RemindBillablePeople(getBillablePeople, _sendReminder); remindBillablePeople.Execute( new RemindBillablePeopleRequest { Message = "Please make sure your timesheet is submitted by 13:30 today." } ); _slackApi.ReceivedRequests.Should() .Contain(request => request.RawUrl.ToString() == "/" + SlackApiUsersPath); _slackApi.ReceivedRequests.Count(request => request.RawUrl.ToString() == "/" + SlackApiPostMessagePath) .Should().Be(4); }
public void CanRemindBillablePeopleOnAFriday() { var clock = new ClockStub( new DateTimeOffset( new DateTime(2019, 03, 01, 10, 30, 0) ) ); var getBillablePeople = new GetBillablePeople(_slackGateway, clock); var remindBillablePeople = new RemindBillablePeople(getBillablePeople, _sendReminder); remindBillablePeople.Execute( new RemindBillablePeopleRequest { Message = "Please make sure your timesheet is submitted by 13:30 today." } ); _slackApi.ReceivedRequests.Count.Should().Be(5); _slackApi.ReceivedRequests.Should() .Contain(request => request.Url.ToString() == SlackApiAddress + SlackApiPostMessagePath); }