public void ThrowArgumentNullException_WhenICombatStatisticsContainerParameterIsNull() { // Arrange var commandResolutionHandler = new OverriddenCanHandleCommandMethodMockCommandResolutionHandler(); var command = new Mock <ICommand>(); ICombatStatisticsContainer combatStatisticsContainer = null; // Act & Assert Assert.That( () => commandResolutionHandler.ResolveCommand(command.Object, combatStatisticsContainer), Throws.InstanceOf <ArgumentNullException>().With.Message.Contains(nameof(ICombatStatisticsContainer))); }
public void InvokeCanHandleCommandMethod_WithCorrectParameter() { // Arrange var commandResolutionHandler = new OverriddenCanHandleCommandMethodMockCommandResolutionHandler(); var command = new Mock <ICommand>(); var combatStatisticsContainer = new Mock <ICombatStatisticsContainer>(); // Act commandResolutionHandler.ResolveCommand(command.Object, combatStatisticsContainer.Object); // Assert Assert.That(commandResolutionHandler.CanHandleCommandMethodICommandParameter, Is.SameAs(command.Object)); }
public void InvokeCanHandleCommandMethod() { // Arrange var commandResolutionHandler = new OverriddenCanHandleCommandMethodMockCommandResolutionHandler(); var command = new Mock <ICommand>(); var combatStatisticsContainer = new Mock <ICombatStatisticsContainer>(); // Act commandResolutionHandler.ResolveCommand(command.Object, combatStatisticsContainer.Object); // Assert Assert.That(commandResolutionHandler.CanHandleCommandMethodIsCalled, Is.True); }
public void ReturnCorrectValue_WhenCanHandlerReturnsFalse_AndNextCommandResolutionHandlerIsNull() { // Arrange var commandResolutionHandler = new OverriddenCanHandleCommandMethodMockCommandResolutionHandler(); var command = new Mock <ICommand>(); var combatStatisticsContainer = new Mock <ICombatStatisticsContainer>(); commandResolutionHandler.CanHandleCommandMethodReturnValue = false; var expectedResult = combatStatisticsContainer.Object; // Act var actualResult = commandResolutionHandler.ResolveCommand(command.Object, combatStatisticsContainer.Object); // Assert Assert.That(actualResult, Is.SameAs(expectedResult)); }
public void InvokeNextCommandResolutionHandler_ResolveCommandMethodWithCorrectParameters_WhenCanHandleMethodReturnsFalse() { // Arrange var commandResolutionHandler = new OverriddenCanHandleCommandMethodMockCommandResolutionHandler(); var command = new Mock <ICommand>(); var combatStatisticsContainer = new Mock <ICombatStatisticsContainer>(); commandResolutionHandler.CanHandleCommandMethodReturnValue = false; var nextCommandResolutionHandler = new Mock <ICommandResolutionHandler>(); commandResolutionHandler.NextCommandResolutionHandler = nextCommandResolutionHandler.Object; // Act commandResolutionHandler.ResolveCommand(command.Object, combatStatisticsContainer.Object); // Assert nextCommandResolutionHandler.Verify(h => h.ResolveCommand(command.Object, combatStatisticsContainer.Object), Times.Once); }