public void Run_should_throw_ArgumentNullException_if_given_null_args() { // arrange var cmd = new MockCommand1(); // act // assert Assert.Throws <ArgumentNullException>(() => cmd.Run(null)); }
public void Run_should_throw_ArgumentNullException_if_given_null_args() { // arrange var cmd = new MockCommand1(); // act // assert Assert.Throws<ArgumentNullException>(() => cmd.Run(null)); }
public void Run_should_throw_InvalidOperationException_if_Log_property_is_null() { // arrange var cmd = new MockCommand1(); var args = new MockCommandArgs(); // act var ex = Assert.Throws <InvalidOperationException>(() => cmd.Run(args)); Assert.AreEqual("ICommand.Log cannot be null.", ex.Message); }
public void Run_should_throw_ArgumentException_if_args_type_doesnt_match_generic_TArgs() { // arrange var cmd = new MockCommand1(); var args = new DatabaseCommandArguments(); // act // assert var ex = Assert.Throws<ArgumentException>(() => cmd.Run(args)); Assert.AreEqual("args type doesn't match generic type\r\nParameter name: args", ex.Message); }
public void Run_should_throw_ArgumentException_if_args_type_doesnt_match_generic_TArgs() { // arrange var cmd = new MockCommand1(); var args = new DatabaseCommandArguments(); // act // assert var ex = Assert.Throws <ArgumentException>(() => cmd.Run(args)); Assert.AreEqual("args type doesn't match generic type\r\nParameter name: args", ex.Message); }
public void GetArgumentsType_should_return_generic_TArgs_type() { // arrange var cmd = new MockCommand1(); // act Type argsType = cmd.GetArgumentsType(); // assert Type expectedType = typeof(MockCommandArgs); Assert.AreEqual(expectedType, argsType); }
public void CreateArguments_should_return_instance_of_generic_TArgs_type() { // arrange var cmd = new MockCommand1(); // act IArguments args = cmd.CreateArguments(); // assert Type expectedType = typeof(MockCommandArgs); Assert.IsTrue(expectedType.IsInstanceOfType(args)); }
public void Run_should_throw_InvalidOperationException_if_args_are_not_valid() { // arrange var cmd = new MockCommand1(); cmd.Log = new MockLog1(); ArgumentSet argSet = ArgumentSet.Parse(new[] { "blah" }); var args = new MockCommandArgs(); args.Parse(argSet); // act var ex = Assert.Throws<InvalidOperationException>(() => cmd.Run(args)); Assert.AreEqual("Argument validation failed. Arguments are invalid.", ex.Message); }
public void CommandHandlerNotAvailable_DoesntExecuteHandleAndDoesntThrowException() { // Arrange var mockHandler = new Mock <ICommandHandler <MockCommand1> >(); var mockServiceProvider = new Mock <IServiceProvider>(); var mockCommand = new MockCommand1(); var commandHandler = new CommandHandler(mockServiceProvider.Object); // Act commandHandler.Handle(mockCommand); // Assert mockHandler.Verify(h => h.Handle(mockCommand), Times.Never); }
public void Run_should_throw_InvalidOperationException_if_args_are_not_valid() { // arrange var cmd = new MockCommand1(); cmd.Log = new MockLog1(); ArgumentSet argSet = ArgumentSet.Parse(new[] { "blah" }); var args = new MockCommandArgs(); args.Parse(argSet); // act var ex = Assert.Throws <InvalidOperationException>(() => cmd.Run(args)); Assert.AreEqual("Argument validation failed. Arguments are invalid.", ex.Message); }
public void WriteCommandHelp_should_include_command_syntax_and_argument_list() { // arrange var command = new MockCommand1(); const string exeName = "test.exe"; // act string argumentSyntax = GetArgumentSyntax(command); string argumentList = GetArgumentList(command); _helpWriter.WriteCommandHelp(command, exeName); // assert string expectedOutput = "Usage: " + exeName + " " + command.CommandName + " " + argumentSyntax + "\r\n" + argumentList; Assert.AreEqual(expectedOutput, _logger.Output); }
public void CommandHandlerAvailable_ExecutesHandleOnce() { // Arrange var mockHandler = new Mock <ICommandHandler <MockCommand1> >(); var command = new MockCommand1(); var mockServiceProvider = new Mock <IServiceProvider>(); mockServiceProvider.Setup(s => s.GetService(typeof(ICommandHandler <>).MakeGenericType(typeof(MockCommand1)))) .Returns(mockHandler.Object); var commandHandler = new CommandHandler(mockServiceProvider.Object); // Act commandHandler.Handle(command); // Assert mockHandler.Verify(m => m.Handle(command), Times.Once); }
public void Run_should_throw_InvalidOperationException_if_Log_property_is_null() { // arrange var cmd = new MockCommand1(); var args = new MockCommandArgs(); // act var ex = Assert.Throws<InvalidOperationException>(() => cmd.Run(args)); Assert.AreEqual("ICommand.Log cannot be null.", ex.Message); }