Exemplo n.º 1
0
 public function testParseColumn()
 {
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('foo'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('foo', $ast->field);
     $this->assertFalse($ast->quoteField);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('[foo]'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('foo', $ast->field);
     $this->assertTrue($ast->quoteField);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('foo.bar'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertFalse($ast->quoteField);
     $this->assertEquals('foo', $ast->model);
     $this->assertFalse($ast->quoteModel);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('foo.[bar]'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertTrue($ast->quoteField);
     $this->assertEquals('foo', $ast->model);
     $this->assertFalse($ast->quoteModel);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('{Foo}.bar'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertFalse($ast->quoteField);
     $this->assertEquals('Foo', $ast->model);
     $this->assertTrue($ast->quoteModel);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('{Foo}.[bar]'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertTrue($ast->quoteField);
     $this->assertEquals('Foo', $ast->model);
     $this->assertTrue($ast->quoteModel);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('%m.%c', array('Model', 'foo')));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('foo', $ast->field);
     $this->assertTrue($ast->quoteField);
     $this->assertEquals('Model', $ast->model);
     $this->assertTrue($ast->quoteModel);
 }
Exemplo n.º 2
0
 public function testParseColumn()
 {
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('foo'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('foo', $ast->field);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('foo.bar'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertEquals('foo', $ast->model);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('foo.bar'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertEquals('foo', $ast->model);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('[foo].[bar]'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertEquals('foo', $ast->model);
     $ast = ExpressionParser::parseColumn(ExpressionParser::lex('{Foo}.bar'));
     $this->assertInstanceOf('Jivoo\\Data\\Query\\Expression\\FieldAccess', $ast);
     $this->assertEquals('bar', $ast->field);
     $this->assertEquals('Foo', $ast->model);
 }