Esempio n. 1
0
        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());
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
        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);
        }
Esempio n. 8
0
        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);
        }