public function testIssetWithProxySiblings() { $fnf = new Kwf_Model_FnF(array('columns' => array('id', 'name', 'data'), 'data' => array(array('id' => 4, 'name' => 'foo', 'data' => json_encode(array('name1' => 'foo1')))))); $model = new Kwf_Model_Proxy(array('proxyModel' => $fnf, 'siblingModels' => array(new Kwf_Model_Field(array('fieldName' => 'data', 'columns' => array('name1')))))); $this->assertEquals(array('id', 'name', 'data'), $fnf->getColumns()); $this->assertTrue($fnf->hasColumn('id')); $this->assertTrue($fnf->hasColumn('name')); $this->assertFalse($fnf->hasColumn('name1')); $this->assertEquals(array('id', 'name', 'data', 'name1'), $model->getColumns()); $this->assertTrue($model->hasColumn('id')); $this->assertTrue($model->hasColumn('name')); $this->assertTrue($model->hasColumn('name1')); $row = $model->getRow(4); // isset $this->assertTrue(isset($row->name)); $this->assertFalse(isset($row->bar)); $this->assertTrue(isset($row->name1)); // get $this->assertEquals(4, $row->id); $this->assertEquals('foo', $row->name); $this->assertEquals('foo1', $row->name1); // set $row->name = 'bar'; $this->assertEquals('bar', $row->name); }