public void QueryCacheTest() { DaoRepository daoRepo; CachingRepository cachingRepo; GetRepos(nameof(QueryCacheTest), out daoRepo, out cachingRepo); string name = 8.RandomLetters(); TestMonkey data = new TestMonkey { Name = name }; daoRepo.Save(data); QueryCache cache = new QueryCache(); bool reloaded = false; cache.Reloaded += (o, c) => reloaded = true; IEnumerable <object> results = cache.Results(typeof(TestMonkey), daoRepo, Filter.Where("Name") == name); Expect.IsTrue(reloaded); reloaded = false; results = cache.Results(typeof(TestMonkey), daoRepo, Filter.Where("Name") == name); Expect.IsFalse(reloaded); Expect.AreEqual(1, results.Count()); }
public void ServiceRegistryLoaderTest() { ServiceRegistryService svc = GetServiceRegistrationService(nameof(ServiceRegistryLoaderTest)); string name = nameof(ServiceRegistryLoaderTest); svc.RegisterServiceRegistryLoader(name, typeof(TestServiceRegistryContainer).GetMethod("Create"), true); CoreServices.ServiceRegistry reg = svc.GetServiceRegistry(name); TestMonkey value = reg.Get <TestMonkey>(); Expect.AreEqual("SomeValue", value.Name); Expect.IsNull(value.Logger); reg.SetProperties(value); Expect.IsObjectOfType <ConsoleLogger>(value.Logger); }
public void ToAndFromDataPropertyCollection() { TestMonkey value = new TestMonkey { Monkey = "Yay", HasTail = false }; DataPropertySet dpc = value.ToDataPropertyCollection(); Expect.AreEqual(value.Monkey, dpc.Value <string>("Monkey")); Expect.IsFalse(dpc.Value <bool>("HasTail")); TestMonkey valueAgain = dpc.ToInstance <TestMonkey>(); Expect.AreEqual(valueAgain.Monkey, value.Monkey); Expect.AreEqual(valueAgain.HasTail, value.HasTail); }
public void CachingRepoQueryGenericQueryFilterTest() { GetRepos(nameof(CachingRepoQueryStringParameterTest), out MongoRepository mongoRepo, out CachingRepository cachingRepo); string name = 6.RandomLetters(); TestMonkey data = new TestMonkey { Name = name }; mongoRepo.Save(data); object result = cachingRepo.Query <TestMonkey>(QueryFilter.Where("Name") == name).ToArray().First(); Expect.IsNotNull(result); Expect.AreEqual(typeof(TestMonkey), result.GetType()); Expect.CanCast <TestMonkey>(result); }
public void CachingRepoQueryTypeDynamicParameterTest() { GetRepos(nameof(CachingRepoQueryStringParameterTest), out MongoRepository mongoRepo, out CachingRepository cachingRepo); string name = 6.RandomLetters(); TestMonkey data = new TestMonkey { Name = name }; mongoRepo.Save(data); object result = cachingRepo.Query(typeof(TestMonkey), new { Name = name }).First(); Expect.IsNotNull(result); Expect.AreEqual(typeof(TestMonkey), result.GetType()); Expect.CanCast <TestMonkey>(result); }
public void CachingRepoQueryGenericTypeDictionaryParameterTest() { GetRepos(nameof(CachingRepoQueryStringParameterTest), out MongoRepository mongoRepo, out CachingRepository cachingRepo); string name = 6.RandomLetters(); TestMonkey data = new TestMonkey { Name = name }; mongoRepo.Save(data); object result = cachingRepo.Query <TestMonkey>(new Dictionary <string, object>() { { "Name", name } }).First(); Expect.IsNotNull(result); Expect.AreEqual(typeof(TestMonkey), result.GetType()); Expect.CanCast <TestMonkey>(result); }
public void CachingRepoQueryGenericTypeFuncParameterTest() { DaoRepository daoRepo; CachingRepository cachingRepo; GetRepos(nameof(CachingRepoQueryStringParameterTest), out daoRepo, out cachingRepo); string name = 6.RandomLetters(); TestMonkey data = new TestMonkey { Name = name }; daoRepo.Save(data); object result = cachingRepo.Query <TestMonkey>((o) => o.Name.Equals(name)).First(); Expect.IsNotNull(result); Expect.AreEqual(typeof(TestMonkey), result.GetType()); Expect.CanCast <TestMonkey>(result); }
public void CachingRepoQueryTypeFuncParameterTest() { GetRepos(nameof(CachingRepoQueryStringParameterTest), out MongoRepository mongoRepo, out CachingRepository cachingRepo); string name = 6.RandomLetters(); TestMonkey data = new TestMonkey { Name = name }; mongoRepo.Save(data); object result = cachingRepo.Query(typeof(TestMonkey), (o) => o.Property("Name").ToString() == name).First(); Expect.IsNotNull(result); Expect.AreEqual(typeof(TestMonkey), result.GetType()); Expect.CanCast <TestMonkey>(result); object result2 = cachingRepo.Query(typeof(TestMonkey), (o) => o.Property("Name").ToString().Equals(name)).First(); Expect.IsNotNull(result2); Expect.AreEqual(typeof(TestMonkey), result2.GetType()); Expect.CanCast <TestMonkey>(result2); }