atk4\data\tests\ConditionSQLTest::testExpressions1 PHP Method

testExpressions1() public method

public testExpressions1 ( )
    public function testExpressions1()
    {
        $a = ['user' => [1 => ['id' => 1, 'name' => 'John', 'gender' => 'M'], 2 => ['id' => 2, 'name' => 'Sue', 'gender' => 'F']]];
        $this->setDB($a);
        $db = new Persistence_SQL($this->db->connection);
        $m = new Model($db, 'user');
        $m->addFields(['name', 'gender']);
        $m->tryLoad(1);
        $this->assertEquals('John', $m['name']);
        $m->tryLoad(2);
        $this->assertEquals('Sue', $m['name']);
        $mm = clone $m;
        $mm->addCondition($mm->expr('[] > 1', [$mm->getElement('id')]));
        $mm->tryLoad(1);
        $this->assertEquals(null, $mm['name']);
        $mm->tryLoad(2);
        $this->assertEquals('Sue', $mm['name']);
        $mm = clone $m;
        $mm->addCondition($mm->expr('[id] > 1'));
        $mm->tryLoad(1);
        $this->assertEquals(null, $mm['name']);
        $mm->tryLoad(2);
        $this->assertEquals('Sue', $mm['name']);
    }