atk4\data\tests\PersistentArrayTest::testUpdateArray PHP Method

testUpdateArray() public method

public testUpdateArray ( )
    public function testUpdateArray()
    {
        $a = ['user' => [1 => ['name' => 'John', 'surname' => 'Smith'], 2 => ['name' => 'Sarah', 'surname' => 'Jones']]];
        $p = new Persistence_Array($a);
        $m = new Model($p, 'user');
        $m->addField('name');
        $m->addField('surname');
        $m->load(1);
        $m['name'] = 'Peter';
        $m->save();
        $m->load(2);
        $m['surname'] = 'Smith';
        $m->save();
        $m['surname'] = 'QQ';
        $m->save();
        $this->assertEquals(['user' => [1 => ['name' => 'Peter', 'surname' => 'Smith'], 2 => ['name' => 'Sarah', 'surname' => 'QQ']]], $a);
        $m->unload();
        $m->set(['name' => 'Foo', 'surname' => 'Bar']);
        $m->save();
        $this->assertEquals(['user' => [1 => ['name' => 'Peter', 'surname' => 'Smith'], 2 => ['name' => 'Sarah', 'surname' => 'QQ'], 3 => ['name' => 'Foo', 'surname' => 'Bar', 'id' => 3]]], $a);
    }