public void TreeStatementNegative() { var parser = new Parser(new Lexer(new InputStream("-id;"))); parser.StartINTerminal = new Statement(); var _result = (AssigStatementNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementNegative.txt"); Assert.AreEqual(_input, _resultSerial); }
//[ExpectedException(typeof(ParserException))] public void TreeStringLiteral() { var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StringLiteral.txt"); var parser = new Parser(new Lexer(new InputStream("\"String\""))); parser.StartINTerminal = new PrimaryExpression(); var _result = (ExpressionNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementThrowNew() { var parser = new Parser(new Lexer(new InputStream("throw new suma.id(1,true);"))); parser.StartINTerminal = new Statement(); var _result = (ThrowNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementThrowNew.txt"); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementWhile() { var parser = new Parser(new Lexer(new InputStream("while(\"hola\" = \"hola\"){while(true) count++;}"))); parser.StartINTerminal = new Statement(); var _result = (WhileNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementWhile.txt"); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementFor() { var parser = new Parser(new Lexer(new InputStream("for(var id;id<5;id++){for(id;id>=id2;id--) if(true) count++; else count--;}"))); parser.StartINTerminal = new Statement(); var _result = (ForNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementFor.txt"); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementIfWithElse() { var parser = new Parser(new Lexer(new InputStream("if(id=id2){if(id3=id4) count++; else count--;}else{count+=2;}"))); parser.StartINTerminal = new Statement(); var _result = (IfNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementIfWithElse.txt"); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementTryCatchFinally() { var parser = new Parser(new Lexer(new InputStream("try{id = id2;}catch(id){}finally{}"))); parser.StartINTerminal = new Statement(); var _result = (TryNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementTryCatchFinally.txt"); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementReturnWithExp() { var parser = new Parser(new Lexer(new InputStream("return suma(1,false);"))); parser.StartINTerminal = new Statement(); var _result = (ReturnNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementReturnExp.txt"); Assert.AreEqual(_input, _resultSerial); }
public void TreeStatementSwitchWithDefauld() { var parser = new Parser(new Lexer(new InputStream("switch(id){case 1: count++; break; case 2: if(true) count--; default: count++; id = count; case 3: --count;}"))); parser.StartINTerminal = new Statement(); var _result = (SwitchNode)parser.Parse(); var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_result); var _input = System.IO.File.ReadAllText(@"C:\scriptea\Test\Tree\StatementSwitchWithDefauld.txt"); Assert.AreEqual(_input, _resultSerial); }
//[ExpectedException(typeof(ParserException))] public void TestProgram() { InputStream _input = new InputStream(System.IO.File.ReadAllText(@"C:\scriptea\Test\Parser\Fibonacci.txt")); var parser = new Parser(new Lexer(_input)); parser.StartINTerminal = new Program(); var _result = (List <StatementNode>)parser.Parse(); var _resultProgram = new ProgramElement { _program = _result }; var _serializer = new RestSharp.Serializers.XmlSerializer(); var _resultSerial = _serializer.Serialize(_resultProgram); }
//[ExpectedException(typeof(ParserException))] public void TreeTestExpression() { //var parser = new Parser(new Lexer(new InputStream("a.codigo[1].sumar(1,3)=-1"))); //var parser = new Parser(new Lexer(new InputStream("a = suma(1,3)"))); var parser = new Parser(new Lexer(new InputStream("a.id = suma(1,3)"))); parser.StartINTerminal = new Expression(); var _result = (List <ExpressionNode>)parser.Parse(); var x = new RestSharp.Serializers.XmlSerializer(); var s = x.Serialize(new AssigStatementNode() { AssignmentExpressionNode = _result }); }