public void ShouldNotQueueSms()
        {
            // Arrange.
            var command = new HelpDeskCommunicationCommand(_mockServiceBus.Object);

            // Act.
            command.Handle(_communicationRequest);

            // Assert.
            _mockServiceBus.Verify(mock => mock.PublishMessage(It.IsAny <SmsRequest>()), Times.Never);
        }
        public void ShouldQueueEmail()
        {
            // Arrange.
            var command = new HelpDeskCommunicationCommand(_mockServiceBus.Object);

            // Act.
            command.Handle(_communicationRequest);

            // Assert.
            _mockServiceBus.Verify(mock => mock.PublishMessage(
                                       It.Is <EmailRequest>(emailRequest =>
                                                            emailRequest.MessageType == _communicationRequest.MessageType &&
                                                            emailRequest.ToEmail == TestEmailAddress &&
                                                            emailRequest.Tokens.Count() == 2)),
                                   Times.Once);
        }