コード例 #1
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
        public void ParseWithDifferentAssignmentOperators()
        {
            var parser = new BasicCommandLineTest();

            parser.Parse(new string[] { "--testParam='123'" });
            Assert.AreEqual("123", parser.TestParam);

            parser.Parse(new string[] { "--testParam=\"123\"" });
            Assert.AreEqual("123", parser.TestParam);

            parser.Parse(new string[] { "-testParam '123'" });
            Assert.AreEqual("123", parser.TestParam);

            parser.Parse(new string[] { " -testParam '123'" });
            Assert.AreEqual("123", parser.TestParam);

            parser.Parse(new string[] { " -testInt: 123" });
            Assert.AreEqual(123, parser.Int32Param);

            parser.Parse(new string[] { "-testInt:123" });
            Assert.AreEqual(123, parser.Int32Param);

            parser.Parse(new string[] { "-testInt 123" });
            Assert.AreEqual(123, parser.Int32Param);

            parser.Parse(new string[] { "-testInt=123 " });
            Assert.AreEqual(123, parser.Int32Param);
        }
コード例 #2
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
        public void ParseOneParameterWithValue()
        {
            var parser = new BasicCommandLineTest();

            parser.Parse(new string[] { "--testParam=123" });
            Assert.AreEqual("123", parser.TestParam);
        }
コード例 #3
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
 public void ShouldThrowInvalidProgramExceptionOnInvalidValueForParam()
 {
     var parser = new BasicCommandLineTest();
     Assert.Throws(typeof(InvalidProgramException), delegate
     {
         parser.Parse(new string[] { "--testBool 123" }); // Wrong value for type bool
     });
 }
コード例 #4
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
        public void ShouldBeAbleToAcceptDifferentTypes()
        {
            var parser = new BasicCommandLineTest();

            parser.Parse(new string[] { "--testInt 100" });

            Assert.IsFalse(parser.BooleanParam);
            Assert.AreEqual(100, parser.Int32Param);
        }
コード例 #5
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
        public void ShouldBeAbleToParseMultipleTimes()
        {
            var parser = new BasicCommandLineTest();

            Assert.IsFalse(parser.BooleanParam);

            parser.Parse(new string[] { "--testBool" });
            Assert.IsTrue(parser.BooleanParam);

            parser.Parse(new string[] { "--testBool false" });
            Assert.IsFalse(parser.BooleanParam);
        }
コード例 #6
0
 public void SetupEachTest()
 {
     parser = new BasicCommandLineTest();
 }
コード例 #7
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
        public void TestOneParameterWithoutValue()
        {
            var parser = new BasicCommandLineTest();

            parser.Parse(new string[] { "--testBool" });
            Assert.IsTrue(parser.BooleanParam);
        }
コード例 #8
0
ファイル: GetVersion.cs プロジェクト: gitsly/GetVersion
        public void TestTokenize()
        {
            var parser = new BasicCommandLineTest();

            var result = parser.Tokenize("--heppas -was a 'ninja'");
            Assert.AreEqual(9, result.Count);
            Assert.AreEqual(5, result.Where(r => r.Item2 == Parser.Token.Separator).Count());
            Assert.AreEqual(3, result.Where(r => r.Item2 == Parser.Token.Identifier).Count());
            Assert.AreEqual(1, result.Where(r => r.Item2 == Parser.Token.String).Count());
        }