public void GetNonExistingStateWithNullDefaultReturnsNullAndDoesNotWriteFile() { var stateCache = new StateCache(s_CacheDir); var state = stateCache.GetState <CacheStateComponent>(new Hash128(42, 42, 42, 42)); Assert.IsNull(state); stateCache.Flush(); AssertCacheDirIsEmptyOrNonExistent(); }
public void GetStateCreatesFileAndRemoveStateRemovesFile() { var stateCache = new StateCache(s_CacheDir); var key = new Hash128(42, 42, 42, 42); var defaultState = new CacheStateComponent(); var state = stateCache.GetState(key, () => defaultState); Assert.AreEqual(defaultState, state); stateCache.Flush(); var di = new DirectoryInfo(s_CacheDir); Assert.IsTrue(di.Exists); var filePath = stateCache.GetFilePathForKey(key); Assert.IsTrue(File.Exists(filePath)); stateCache.RemoveState(key); Assert.IsFalse(File.Exists(filePath)); }