Youshido\Tests\Parser\AstTest::testQuery PHP Method

testQuery() public method

public testQuery ( )
    public function testQuery()
    {
        $arguments = [new Argument('limit', new Literal('10', new Location(1, 1)), new Location(1, 1))];
        $fields = [new Field('id', null, [], new Location(1, 1))];
        $query = new Query('ships', 'lastShips', $arguments, $fields, new Location(1, 1));
        $this->assertEquals('ships', $query->getName());
        $this->assertEquals('lastShips', $query->getAlias());
        $this->assertEquals($arguments, $query->getArguments());
        $this->assertEquals(['limit' => '10'], $query->getKeyValueArguments());
        $this->assertEquals($fields, $query->getFields());
        $this->assertTrue($query->hasArguments());
        $this->assertTrue($query->hasFields());
        $query->setFields([]);
        $query->setArguments([]);
        $this->assertEmpty($query->getArguments());
        $this->assertEmpty($query->getFields());
        $this->assertEmpty($query->getKeyValueArguments());
        $this->assertFalse($query->hasArguments());
        $this->assertFalse($query->hasFields());
        $query->addArgument(new Argument('offset', new Literal(10, new Location(1, 1)), new Location(1, 1)));
        $this->assertTrue($query->hasArguments());
    }