public function testMysqlMakeUpdateQuery() { $builder = new \T4\Dbal\QueryBuilder(); $query = $builder->update()->table('test')->values(['foo' => ':foo', 'bar' => ':bar'])->where('id=123')->getQuery('mysql'); $this->assertEquals("UPDATE `test`\nSET `foo`=:foo, `bar`=:bar\nWHERE id=123", $query); $builder = new \T4\Dbal\QueryBuilder(); $query = $builder->update('test')->values(['foo' => ':foo', 'bar' => ':bar'])->where('id=123')->getQuery('mysql'); $this->assertEquals("UPDATE `test`\nSET `foo`=:foo, `bar`=:bar\nWHERE id=123", $query); $builder = new \T4\Dbal\QueryBuilder(); $query = $builder->update('test')->values(['foo' => ':foo', 'bar' => ':bar'])->where('id=123')->order('id DESC')->limit(1)->getQuery('mysql'); $this->assertEquals("UPDATE `test`\nSET `foo`=:foo, `bar`=:bar\nWHERE id=123\nORDER BY id DESC\nLIMIT 1", $query); }
public function testPgsqlMakeUpdateQuery() { $builder = new \T4\Dbal\QueryBuilder(); $query = $builder->update()->table('test')->values(['foo' => ':foo', 'bar' => ':bar'])->where('id=123')->getQuery('pgsql'); $this->assertEquals("UPDATE \"test\"\nSET \"foo\"=:foo, \"bar\"=:bar\nWHERE id=123", $query); $builder = new \T4\Dbal\QueryBuilder(); $query = $builder->update('test')->values(['foo' => ':foo', 'bar' => ':bar'])->where('id=123')->getQuery('pgsql'); $this->assertEquals("UPDATE \"test\"\nSET \"foo\"=:foo, \"bar\"=:bar\nWHERE id=123", $query); $builder = new \T4\Dbal\QueryBuilder(); $query = $builder->update('test')->values(['foo' => ':foo', 'bar' => ':bar'])->where('id=123')->order('id DESC')->limit(1)->getQuery('pgsql'); $this->assertEquals("UPDATE \"test\"\nSET \"foo\"=:foo, \"bar\"=:bar\nWHERE id=123", $query); }
public function testAssignUpdate() { $builder = new \T4\Dbal\QueryBuilder(); $b = $builder->update('test'); $this->assertInstanceOf('\\T4\\Dbal\\QueryBuilder', $b); $this->assertEquals($b, $builder); $this->assertEquals('update', $builder->mode); $this->assertEquals(['test'], $builder->updateTables); $b = $builder->table('test1'); $this->assertInstanceOf('\\T4\\Dbal\\QueryBuilder', $b); $this->assertEquals($b, $builder); $this->assertEquals('update', $builder->mode); $this->assertEquals(['test', 'test1'], $builder->updateTables); $b = $builder->values(['foo' => ':foo', 'bar' => ':bar']); $this->assertInstanceOf('\\T4\\Dbal\\QueryBuilder', $b); $this->assertEquals($b, $builder); $this->assertEquals(['foo' => ':foo', 'bar' => ':bar'], $builder->values); }