예제 #1
0
        public void ThrowArgumentNullException_WhenICommandParameterIsNull()
        {
            // Arrange
            var matchingEventName = "MockEvent";

            var commandResolutionHandler = new MockCommandResolutionHandler(matchingEventName);

            ICommand command = null;

            // Act & Assert
            Assert.That(
                () => commandResolutionHandler.CanHandleCommand(command),
                Throws.InstanceOf <ArgumentNullException>().With.Message.Contains(nameof(ICommand)));
        }
예제 #2
0
        public void ReturnFalse_WhenICommandParameterEventNamePropertyIsDifferentComparedToEnterCombat(string eventName)
        {
            // Arrange
            var matchingEventName = "MockEvent";

            var commandResolutionHandler = new MockCommandResolutionHandler(matchingEventName);

            var command = new Mock <ICommand>();

            command.SetupGet(c => c.EventName).Returns(eventName);

            // Act
            var actualResult = commandResolutionHandler.CanHandleCommand(command.Object);

            // Assert
            Assert.That(actualResult, Is.False);
        }
예제 #3
0
        public void ReturnTrue_WhenICommandParameterEventNamePropertyIsIdenticalToEnterCombat()
        {
            // Arrange
            var matchingEventName = "MockEvent";

            var commandResolutionHandler = new MockCommandResolutionHandler(matchingEventName);

            var viableEventName = "MockEvent";
            var command         = new Mock <ICommand>();

            command.SetupGet(c => c.EventName).Returns(viableEventName);

            // Act
            var actualResult = commandResolutionHandler.CanHandleCommand(command.Object);

            // Assert
            Assert.That(actualResult, Is.True);
        }