public async Task AddPlanToCache_BecomesInCache() { var cache = new DefaultQueryPlanCacheProvider(); var text = "query Operation1{ simple { simpleQueryMethod { property1 __typename} } }"; var plan = this.CreatePlan(text); var hash = Guid.NewGuid().ToString("N"); var wasCached = await cache.TryCachePlanAsync(hash, plan); Assert.IsTrue(wasCached); var found = await cache.TryGetPlanAsync(hash, out var foundPlan); Assert.IsTrue(found); Assert.AreEqual(plan, foundPlan); }
public async Task ForceEvict_RemovesFromCache() { var cache = new DefaultQueryPlanCacheProvider(); var text = "query Operation1{ simple { simpleQueryMethod { property1 __typename} } }"; var plan = this.CreatePlan(text); var hash = Guid.NewGuid().ToString("N"); var wasCached = await cache.TryCachePlanAsync(hash, plan); Assert.IsTrue(wasCached); var evicted = await cache.EvictAsync(hash); Assert.IsTrue(evicted); var found = await cache.TryGetPlanAsync(hash, out var foundPlan); Assert.IsFalse(found); Assert.IsNull(foundPlan); }