public function testMergeOnUpdate()
{
// save document
$document = $this->collection->createDocument(array('p' => 'pv'))->save();
// update document
$document->set('f1', 'fv1')->merge(array('a1' => 'av1', 'a2' => 'av2'));
$documentData = $document->toArray();
unset($documentData['_id']);
$this->assertEquals(array('p' => 'pv', 'f1' => 'fv1', 'a1' => 'av1', 'a2' => 'av2'), $documentData);
$document->save();
// test
$foundDocumentData = $this->collection->getDocumentDirectly($document->getId())->toArray();
unset($foundDocumentData['_id']);
$this->assertEquals(array('p' => 'pv', 'f1' => 'fv1', 'a1' => 'av1', 'a2' => 'av2'), $foundDocumentData);
}