public function testIsModifiedWithBool() { $model = new Model(['bool' => 0]); $model->merge(array('bool' => '0')); $this->assertFalse($model->isModified('bool')); $this->assertEquals(array('bool' => 0), $model->getOriginalValues()); $this->assertEquals(array(), $model->getDiff('modified')); $this->assertEquals(array(), $model->getDiff('both_merged')); $this->assertEquals(array(array(), array()), $model->getDiff('both')); $model->merge(array('bool' => false)); $this->assertFalse($model->isModified('bool')); $this->assertEquals(array('bool' => 0), $model->getOriginalValues()); $this->assertEquals(array(), $model->getDiff('modified')); $this->assertEquals(array(), $model->getDiff('both_merged')); $this->assertEquals(array(array(), array()), $model->getDiff('both')); $model->bool = true; $this->assertTrue($model->isModified('bool')); $this->assertEquals(['bool' => 0], $model->getOriginalValues()); $this->assertEquals(['bool' => true], $model->getDiff('modified')); $this->assertEquals(['bool' => [0, true]], $model->getDiff('both_merged')); $this->assertEquals(array(['bool' => 0], ['bool' => true]), $model->getDiff('both')); }