/**
* @group unit
*/
public function testSerializedData()
{
$data = '{"user":"******"}';
$document = new Document(1, $data);
$this->assertFalse($document->has('user'));
try {
$document->get('user');
$this->fail('User field should not be available');
} catch (InvalidException $e) {
$this->assertTrue(true);
}
try {
$document->remove('user');
$this->fail('User field should not be available for removal');
} catch (InvalidException $e) {
$this->assertTrue(true);
}
try {
$document->set('name', 'shawn');
$this->fail('Document should not allow to set new data');
} catch (InvalidException $e) {
$this->assertTrue(true);
}
}