public void GivenASendAction_When2PhoneNumbersAreProvided_ThenCallIsCalledTwice() { const string baseUrl = "http://example.com"; string broadcastPlayUrl = $"{baseUrl}/Broadcast/Play?recordingUrl=recording-url"; const string twilioNumber = "twilio-number"; var clientMock = new Mock <IClient>(); var mockPhoneNumbers = new Mock <IPhoneNumbers>(); mockPhoneNumbers.Setup(p => p.Twilio).Returns("twilio-number"); var mockCustomRequest = new Mock <ICustomRequest>(); mockCustomRequest.Setup(r => r.Url).Returns(baseUrl); var controller = new BroadcastController( clientMock.Object, mockPhoneNumbers.Object, mockCustomRequest.Object ) { Url = Url }; controller.WithCallTo(c => c.Send("phone-one, phone-two", "recording-url")) .ShouldRenderView("Send"); clientMock.Verify(c => c.Call("phone-one", twilioNumber, broadcastPlayUrl)); clientMock.Verify(c => c.Call("phone-two", twilioNumber, broadcastPlayUrl)); }
public void GivenAnIndexAction_ThenRenderTheDefaultView() { var controller = new BroadcastController(); controller.WithCallTo(c => c.Index()) .ShouldRenderDefaultView(); }