Sokil\Mongo\DocumentTest::testReload PHP Method

testReload() public method

public testReload ( )
    public function testReload()
    {
        // Create document
        $id = $this->collection->createDocument(array('param' => 'value'))->save()->getId();
        // Load two unreferenced copies of same document
        $document1 = $this->collection->getDocumentDirectly($id);
        $document2 = $this->collection->getDocumentDirectly($id);
        // store changes on one of them
        $document1->set('param', 'updatedValue')->save();
        // Changes not exists in seconde document before refresh
        $this->assertEquals('value', $document2->param);
        // Document 2 is in not-saved state.
        // After refresh all not saved changes reset
        $document2->set('param', 'someParalelUpdatedButNotSavedValue')->increment('newField');
        // refresh data
        $document2->refresh();
        // now data is fresh
        $this->assertEquals('updatedValue', $document2->param);
        $this->assertEquals(array(), $document2->getOperator()->toArray());
        $this->assertNull($document2->newField);
    }
DocumentTest