コード例 #1
0
ファイル: TripParser.cs プロジェクト: orfgen/ParseTrip
        public void LFIsWhitespaceTest()
        {
            string line   = "(parse-whitespace \"\n\" 0)";
            string result = HighLevel.Evaluate(line, TraceLevel.Error, env);

            Assert.AreEqual("(1 \"Whitespace\" (1 \"LF\" \"\n\"))", result);
        }
コード例 #2
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestMultOneArgument()
        {
            string expr   = "(* 2)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("2", result);
        }
コード例 #3
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestDivThreeArguments()
        {
            string expr   = "(/ 8 2 2)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("2", result);
        }
コード例 #4
0
ファイル: SimpleParsers.cs プロジェクト: orfgen/ParseTrip
        public void TestParseStringSingleChar()
        {
            string line   = "(parse-string \"String\" \"o\" \"Hello\" 4)";
            string result = HighLevel.Evaluate(line, TraceLevel.Error, env);

            Assert.AreEqual("(5 \"String\" \"o\")", result);
        }
コード例 #5
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestPlusMultilevel()
        {
            string expr   = "(+ 1 (+ 1 1))";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("3", result);
        }
コード例 #6
0
        public void TestInc()
        {
            string line   = "(inc 3)";
            string result = HighLevel.Evaluate(line);

            Assert.AreEqual("4", result);
        }
コード例 #7
0
ファイル: SimpleParsers.cs プロジェクト: orfgen/ParseTrip
        public void TestParseStringRange()
        {
            string line   = "(parse-string-range \"String\" \"A\" \"Z\" \"HEllo\" 0)";
            string result = HighLevel.Evaluate(line, TraceLevel.Error, env);

            Assert.AreEqual("(2 \"String\" \"HE\")", result);
        }
コード例 #8
0
        public void TestUnwrapListTwoStrings()
        {
            string result = HighLevel.Evaluate("(list-unwrap (list \"Value1\" \"Value2\"))", TraceLevel.Error, env);

            Console.WriteLine(result);
            Assert.AreEqual("(\"Value1\" \"Value2\")", result);
        }
コード例 #9
0
        public void TestUnwrapEmptyList()
        {
            string result = HighLevel.Evaluate("(list-unwrap (NIL))", TraceLevel.Error, env);

            Console.WriteLine(result);
            Assert.AreEqual("NIL", result);
        }
コード例 #10
0
ファイル: DictBuiltinTests.cs プロジェクト: orfgen/Trip
        public void CreateDictTest()
        {
            string input  = "(dict)";
            string result = HighLevel.Evaluate(input);

            Assert.AreEqual("(dict)", result);
        }
コード例 #11
0
        public void TestUnwrapString()
        {
            string result = HighLevel.Evaluate("(list-unwrap \"Value\")", TraceLevel.Error, env);

            Console.WriteLine(result);
            Assert.AreEqual("\"Value\"", result);
        }
コード例 #12
0
ファイル: DictBuiltinTests.cs プロジェクト: orfgen/Trip
        public void GetKeysTest()
        {
            string input  = "(keys-dict (add-dict (dict) \"Key\" \"Value\"))";
            string result = HighLevel.Evaluate(input);

            Assert.AreEqual("(\"Key\" . NIL)", result);
        }
コード例 #13
0
ファイル: DictBuiltinTests.cs プロジェクト: orfgen/Trip
        public void ReadDictTest()
        {
            string input  = "(read-dict (add-dict (dict) \"Key\" \"Value\") \"Key\")";
            string result = HighLevel.Evaluate(input);

            Assert.AreEqual("\"Value\"", result);
        }
コード例 #14
0
ファイル: DictBuiltinTests.cs プロジェクト: orfgen/Trip
        public void AddDictTest()
        {
            string input  = "(add-dict (dict) \"Key\" \"Value\")";
            string result = HighLevel.Evaluate(input);

            Assert.AreEqual("(dict (\"Key\":\"Value\"))", result);
        }
コード例 #15
0
ファイル: CompareBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestSimpleEqualsTrue()
        {
            string expr   = "(= 2 2)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("True", result);
        }
コード例 #16
0
        public void TestSquashSingleChild()
        {
            string result = HighLevel.Evaluate("(squash \"Y\" (quote (1 \"X\" (1 \"Y\" \"text\")) ))", TraceLevel.Error, env);

            Console.WriteLine(result);
            Assert.AreEqual("(1 \"X\" NIL)", result);
        }
コード例 #17
0
ファイル: LoopTests.cs プロジェクト: orfgen/Trip
        public void TestSimpleLoop()
        {
            string line   = "(loop print (list 1 2 3) )";
            string result = HighLevel.Evaluate(line);

            Assert.AreEqual("NIL", result);
        }
コード例 #18
0
        public void TestSquashFirstChildHit()
        {
            string result = HighLevel.Evaluate("(squash \"Y\" (quote (10 \"X\" ((5 \"Y\" \"ytext\") (10 \"Z\" \"ztext\"))) ))", TraceLevel.Error, env);

            Console.WriteLine(result);
            Assert.AreEqual("(10 \"X\" (10 \"Z\" \"ztext\"))", result);
        }
コード例 #19
0
        public void TestDec()
        {
            string line   = "(dec 3)";
            string result = HighLevel.Evaluate(line);

            Assert.AreEqual("2", result);
        }
コード例 #20
0
ファイル: PrintBuiltinTests.cs プロジェクト: orfgen/Trip
        public void SimplePrintTest()
        {
            string input  = "(print \"Hello\")";
            string result = HighLevel.Evaluate(input);

            Assert.AreEqual("NIL", result);
        }
コード例 #21
0
ファイル: SimpleParsers.cs プロジェクト: orfgen/ParseTrip
        public void TestParseStringRangeNothingToParse()
        {
            string line   = "(parse-string-range \"String\" \"a\" \"z\" \"HEllo\" 0)";
            string result = HighLevel.Evaluate(line, TraceLevel.Error, env);

            Assert.AreEqual("NIL", result);
        }
コード例 #22
0
ファイル: QuoteFundamentalTests.cs プロジェクト: orfgen/Trip
        public void TestQuoteEvaluationMacro()
        {
            string line   = "(quote (inc 1))";
            string result = HighLevel.Evaluate(line);

            Assert.AreEqual("(+ 1 1)", result);
        }
コード例 #23
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestPlusFiveArguments()
        {
            string expr   = "(+ 1 2 3 4 5)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("15", result);
        }
コード例 #24
0
ファイル: QuoteFundamentalTests.cs プロジェクト: orfgen/Trip
        public void TestEvalQuoteEvaluation()
        {
            string expr   = "(eval (quote (+ 5 4)))";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("9", result);
        }
コード例 #25
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestMinusTwoArguments()
        {
            string expr   = "(- 3 1)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("2", result);
        }
コード例 #26
0
ファイル: CompareBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestSimpleStringEqualsFalse()
        {
            string expr   = "(= \"Hello\" \"Hi\")";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("False", result);
        }
コード例 #27
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestMultThreeArguments()
        {
            string expr   = "(* 3 4 5)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("60", result);
        }
コード例 #28
0
ファイル: CompareBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestSimpleGreaterFalse2()
        {
            string expr   = "(> 3 3)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("False", result);
        }
コード例 #29
0
ファイル: MathBuiltinTests.cs プロジェクト: orfgen/Trip
        public void TestPlusTwoArguments()
        {
            string expr   = "(+ 1 2)";
            string result = HighLevel.Evaluate(expr);

            Assert.AreEqual("3", result);
        }
コード例 #30
0
ファイル: TripParser.cs プロジェクト: orfgen/ParseTrip
        public void TestSpaceParser()
        {
            string line   = "(parse-char \"Space\" \" \" \"A B\" 1)";
            string result = HighLevel.Evaluate(line, TraceLevel.Error, env);

            Assert.AreEqual("(2 \"Space\" \" \")", result);
        }