void ResourceManagerTest::clear() { ResourceManager rm; rm.set("blah", new Data); CORRADE_COMPARE(Data::count, 1); rm.free(); CORRADE_COMPARE(Data::count, 1); rm.clear(); CORRADE_COMPARE(Data::count, 0); }
void ResourceManagerTest::residentPolicy() { ResourceManager* rm = new ResourceManager; rm->set("blah", new Data, ResourceDataState::Mutable, ResourcePolicy::Resident); CORRADE_COMPARE(Data::count, 1); rm->free(); CORRADE_COMPARE(Data::count, 1); delete rm; CORRADE_COMPARE(Data::count, 0); }
void ResourceManagerTest::manualPolicy() { ResourceManager rm; ResourceKey dataKey("data"); /* Manual free */ { rm.set(dataKey, new Data, ResourceDataState::Mutable, ResourcePolicy::Manual); Resource<Data> data = rm.get<Data>(dataKey); rm.free(); } CORRADE_COMPARE(rm.count<Data>(), 1); CORRADE_COMPARE(Data::count, 1); rm.free(); CORRADE_COMPARE(rm.count<Data>(), 0); CORRADE_COMPARE(Data::count, 0); rm.set(dataKey, new Data, ResourceDataState::Mutable, ResourcePolicy::Manual); CORRADE_COMPARE(rm.count<Data>(), 1); CORRADE_COMPARE(Data::count, 1); }