public function testDirty1()
{
$m = new Model();
$m->addField('foo', ['default' => 'abc']);
$this->assertEquals(false, $m->isDirty('foo'));
$m['foo'] = 'abc';
$this->assertEquals(false, $m->isDirty('foo'));
$m['foo'] = 'bca';
$this->assertEquals(true, $m->isDirty('foo'));
$m['foo'] = 'abc';
$this->assertEquals(false, $m->isDirty('foo'));
// set initial data
$m->data['foo'] = 'xx';
$this->assertEquals(false, $m->isDirty('foo'));
$m['foo'] = 'abc';
$this->assertEquals(true, $m->isDirty('foo'));
$m['foo'] = 'bca';
$this->assertEquals(true, $m->isDirty('foo'));
$m['foo'] = 'xx';
$this->assertEquals(false, $m->isDirty('foo'));
}