/**
* @test
*/
public function clearStateForgetsAboutNewObjects()
{
$mockObject = $this->createMock(PersistenceMagicInterface::class);
$mockObject->Persistence_Object_Identifier = 'abcdefg';
$mockSession = $this->createMock(Generic\Session::class);
$mockSession->expects($this->any())->method('hasIdentifier')->will($this->returnValue(false));
$mockBackend = $this->createMock(Generic\Backend\BackendInterface::class);
$mockBackend->expects($this->any())->method('getObjectDataByIdentifier')->will($this->returnValue(false));
$persistenceManager = new Generic\PersistenceManager();
$persistenceManager->injectPersistenceSession($mockSession);
$persistenceManager->injectBackend($mockBackend);
$persistenceManager->registerNewObject($mockObject);
$persistenceManager->clearState();
$object = $persistenceManager->getObjectByIdentifier('abcdefg');
$this->assertNull($object);
}