示例#1
0
        public void GermlineWgsParse_WithRequiredArguments_ReturnsSuccessfulCallsetResult(string name, string description, StringWriter standardWriter,
                                                                                          StringWriter errorWriter, TemporaryDirectoryFixture tempDirectory)
        {
            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser(name, description);
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] args =
            {
                "-h"
            };

            // act
            var result = parser.Parse(args, standardWriter, errorWriter);

            // assert
            Assert.True(result.Success);
        }
示例#2
0
        public void Parse_ModeWithMissingRequiredArgument_DisplaysError(string messageToDisplay, string name, string description, StringWriter standardWriter,
                                                                        StringWriter errorWriter)
        {
            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser("WGS", "Run Canvas from WGS data");
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] modeArgs =
            {
                "WGS"
            };

            // act
            parser.Parse(modeArgs, standardWriter, errorWriter);
            string errorOutput = errorWriter.ToString();

            // assert
            Assert.Contains(messageToDisplay, errorOutput);
            Assert.Empty(standardWriter.ToString());
        }
示例#3
0
        public void Parse_NoArguments_DisplaysError(string messageToDisplay, string name, string description, StringWriter standardWriter,
                                                    StringWriter errorWriter)
        {
            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser(name, description);
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] noArgs =
            {
            };

            // act
            var    result      = parser.Parse(noArgs, standardWriter, errorWriter);
            string errorOutput = errorWriter.ToString();

            // assert
            Assert.False(result.Success);
            Assert.Contains(messageToDisplay, errorOutput);
            Assert.Empty(standardWriter.ToString());
        }
示例#4
0
        public void Parse_WithHelpArgument_ReturnsSuccecssAndDisplaysHelp(string messageToDisplay, string name, string description, StringWriter standardWriter,
                                                                          StringWriter errorWriter)
        {
            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser(name, description);
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] args =
            {
                "-h"
            };

            // act
            var    result         = parser.Parse(args, standardWriter, errorWriter);
            string standardOutput = standardWriter.ToString();

            // assert
            Assert.True(result.Success);
            Assert.Contains(messageToDisplay, standardOutput);
            Assert.Empty(errorWriter.ToString());
        }
示例#5
0
        public void Parse_ModeWithVersion_ReturnsSuccecssAndDisplaysVersion(string messageToDisplay, string name, string description,
                                                                            StringWriter standardWriter, StringWriter errorWriter)
        {
            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser("WGS", "Run Canvas from WGS data");
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] modeArgs =
            {
                "WGS", "-v"
            };

            // act
            var    result = parser.Parse(modeArgs, standardWriter, errorWriter);
            string output = standardWriter.ToString().Trim();

            // assert
            Assert.True(result.Success);
            Assert.Equal(Version, output);
            Assert.Empty(errorWriter.ToString());
        }
示例#6
0
        public void GermlineWgsParse_WithRequiredArguments_ReturnsSuccessfulCallsetResult()
        {
            string       name           = "Hello";
            string       description    = "World";
            StringWriter standardWriter = new StringWriter();
            StringWriter errorWriter    = new StringWriter();

            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser(name, description);
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] args =
            {
                "-h"
            };

            // act
            var result = parser.Run(args, standardWriter, errorWriter);

            // assert
            Assert.Equal(0, result);
        }
示例#7
0
        public void Parse_WithHelpArgumentAndUnkownArgument_DisplaysError(string messageToDisplay, string name, string description)
        {
            StringWriter standardWriter = new StringWriter();
            StringWriter errorWriter    = new StringWriter();

            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser(name, description);
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] args =
            {
                "-h", "--unknown-option"
            };

            // act
            var    result      = parser.Run(args, standardWriter, errorWriter);
            string errorOutput = errorWriter.ToString();

            // assert
            Assert.Equal(-1, result);
            Assert.Contains(messageToDisplay, errorOutput);
            Assert.Empty(standardWriter.ToString());
        }
示例#8
0
        public void Parse_ModeWithHelp_ReturnsSuccessAndDisplaysHelp(string messageToDisplay)
        {
            StringWriter standardWriter = new StringWriter();
            StringWriter errorWriter    = new StringWriter();

            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser("WGS", "Run Canvas from WGS data");
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] modeArgs =
            {
                "WGS", "-h"
            };

            // act
            var    result = parser.Run(modeArgs, standardWriter, errorWriter);
            string output = standardWriter.ToString().Trim();

            // assert
            Assert.Equal(0, result);
            Assert.Contains(messageToDisplay, output);
            Assert.Empty(errorWriter.ToString());
        }
示例#9
0
        public void Parse_ModeWithMissingRequiredArgument_DisplaysError()
        {
            string       messageToDisplay = "required";
            StringWriter standardWriter   = new StringWriter();
            StringWriter errorWriter      = new StringWriter();

            // arrange
            GermlineWgsModeParser germlineWgsModeParser = new GermlineWgsModeParser("WGS", "Run Canvas from WGS data");
            MainParser            parser = GetMainParser(germlineWgsModeParser);

            string[] modeArgs =
            {
                "WGS"
            };

            // act
            var    result      = parser.Run(modeArgs, standardWriter, errorWriter);
            string errorOutput = errorWriter.ToString();

            // assert
            Assert.NotEqual(0, result);
            Assert.Contains(messageToDisplay, errorOutput);
            Assert.Empty(standardWriter.ToString());
        }
示例#10
0
 private static MainParser GetMainParser(GermlineWgsModeParser germlineWgsModeParser)
 {
     return(new MainParser(Version, Copyright, germlineWgsModeParser));
 }