public function testScheduleInsertCancelsScheduleRemove()
{
$object = new UoWUser();
$object->username = "bar";
$object->id = '/somepath';
$this->uow->scheduleInsert($object);
$this->uow->scheduleRemove($object);
$method = new \ReflectionMethod($this->uow, 'getDocumentState');
$method->setAccessible(true);
$state = $method->invoke($this->uow, $object);
$method->setAccessible(false);
$this->assertEquals(UnitOfWork::STATE_REMOVED, $state);
$this->uow->scheduleInsert($object);
$method->setAccessible(true);
$state = $method->invoke($this->uow, $object);
$method->setAccessible(false);
$this->assertEquals(UnitOfWork::STATE_MANAGED, $state);
}