public void Execution_CallingANestedSubCommand_CallExecuteOnNestedSubCommand() { //Arrange var arguments = new[] { "inherited-command" }; var command = new MainCommand(); //Act var sum = command.Execute(arguments); //Assert Assert.Equal(3, sum); }
public void Execution_CallingASubCommandWithDifferentCasing_CallExecuteOnSubCommand() { //Arrange var arguments = new[] { "SUBCOMMAND" }; var command = new MainCommand(); //Act var hashCode = command.Execute(arguments); //Assert Assert.Equal(typeof(SubCommand).GetHashCode(), hashCode); }
public void Execution_CallingWithVersionOption_CallToVersionProvider() { //Arrange var appInfoMock = new Mock <IAppInfoProvider>(); var arguments = new[] { "-v" }; var command = new MainCommand() { AppInfo = appInfoMock.Object }; //Act command.Execute(arguments); //Assert appInfoMock.Verify(a => a.LongVersion, Times.Once()); }
public void Execution_CallingWithHelpOption_CallToHelpTextProvider() { //Arrange var outputMock = new Mock <IOutputProvider>(); var arguments = new[] { "-h" }; var command = new MainCommand() { Output = outputMock.Object }; //Act command.Execute(arguments); //Assert outputMock.Verify(o => o.ShowInformation(It.IsAny <string>()), Times.Once()); }
public void Parsing_ProvidingArgumentsToCommandWithoutArguments_NoArgumentExistsCalled() { //Arrange var outputMock = new Mock <IOutputProvider>(); var errorMessage = new NoArgumentsExistException().Message; var arguments = new[] { "non-existing-command" }; var command = new MainCommand() { Output = outputMock.Object }; //Act command.Execute(arguments); //Assert outputMock.Verify(o => o.ShowError(It.Is <string>(s => s.Equals(errorMessage))), Times.Once()); }
static int Main(string[] args) { var app = new MainCommand(); return(app.Execute(args)); }