Exemple #1
0
        public void NoOptions_OneRequiredArg_ArgHelp()
        {
            using var console = new CaptureConsoleOutput();
            var args = new[] { "help" };

            Host.CreateDefaultBuilder().RunConsoleAppFrameworkAsync <CommandTests_Single_NoOptions_OneRequiredArg>(args);

            // can not execute #shoganai
            // console.Output.Should().Contain("Hello help");
        }
Exemple #2
0
        public void Commands_UnknownCommand_Help()
        {
            using var console = new CaptureConsoleOutput();
            var args = new string[] { "help", "-foo", "-bar" };

            Host.CreateDefaultBuilder().RunConsoleAppFrameworkAsync <CommandTests_Multiple_Commands>(args);
            console.Output.Should().Contain("Usage:");
            console.Output.Should().Contain("Commands:");
            console.Output.Should().Contain("hello");
            console.Output.Should().Contain("konnichiwa");
        }
Exemple #3
0
        public void NoOptions_OneRequiredArg_Version()
        {
            using var console = new CaptureConsoleOutput();
            var args = new[] { "-version" };

            Host.CreateDefaultBuilder().RunConsoleAppFrameworkAsync <CommandTests_Single_NoOptions_OneRequiredArg>(args);
            console.Output.Should().MatchRegex(@"\d.\d.\d"); // NOTE: When running with unit test runner, it returns a version of the runner.

            // NOTE: Currently, ConsoleAppFramework treats the first argument as special. If the argument is '-help', it is same as '-help' option.
            //console.Output.Should().Contain("Hello -version");
        }
        public void Multi_Insufficient_Arguments()
        {
            using var console = new CaptureConsoleOutput();
            var args        = new[] { "Cysharp" };
            var interceptor = new TestInterceptor();

            Host.CreateDefaultBuilder().RunConsoleAppFrameworkAsync <InterceptorTest_Multi>(args, interceptor);

            interceptor.Outputs.Should().Equal("OnEngineBeginAsync", "OnMethodBeginAsync", "OnMethodEndAsync", "OnEngineCompleteAsync");
            console.Output.Should().Contain("Usage");
        }
Exemple #5
0
        public void OptionAndArg_HelpOptionLike()
        {
            using var console = new CaptureConsoleOutput();
            var args = new string[] { "hello", "-help" };

            Host.CreateDefaultBuilder().RunConsoleAppFrameworkAsync <CommandTests_Multiple_OptionAndArg>(args);
            console.Output.Should().Contain("Usage:");
            console.Output.Should().Contain("Arguments:");

            // NOTE: Currently, ConsoleAppFramework treats the first argument as special. If the argument is '-help', it is same as '-help' option.
            //console.Output.Should().Contain("Hello -help (-128)");
        }
Exemple #6
0
        public void NoOptions_OneRequiredArg_Help()
        {
            using var console = new CaptureConsoleOutput();
            var args = new[] { "-help" };

            Host.CreateDefaultBuilder().RunConsoleAppFrameworkAsync <CommandTests_Single_NoOptions_OneRequiredArg>(args);
            console.Output.Should().Contain("Usage:");
            console.Output.Should().Contain("Arguments:");

            // NOTE: Currently, ConsoleAppFramework treats the first argument as special. If the argument is '-help', it is same as '-help' option.
            //console.Output.Should().Contain("Hello -version");
        }