public async Task BasicTest() { var cacheDir = GetCacheDir(); if (Directory.Exists(cacheDir)) { Directory.Delete(cacheDir, true); } var cache = new FileSystemCache <int, int>(cacheDir); (await cache.TryGet(1)).Should().Be(Option.None <int>()); (await cache.Get(1)).Should().Be(0); await cache.Set(1, 1); (await cache.TryGet(1)).Should().Be(Option.Some <int>(1)); (await cache.Get(1)).Should().Be(1); (await cache.TryGet(2)).Should().Be(Option.None <int>()); (await cache.Get(2)).Should().Be(0); await cache.Remove(1); (await cache.TryGet(1)).Should().Be(Option.None <int>()); (await cache.Get(1)).Should().Be(0); }