public void LazyLoadDbAppSettingManager_IntailizeCache()
        {
            DummySettingCache cache = new DummySettingCache();
            RetrieveAllDbAppSettingManager cacheManager = new RetrieveAllDbAppSettingManager(new RetrieveAllProviderFactory(), cache);

            Assert.IsNotNull(cacheManager);

            RetrieveAllManagerArguments arguments = new RetrieveAllManagerArguments();

            cacheManager.Create(arguments);

            Assert.IsTrue(cache.HitCount == 1);
        }
        public void LazyLoadDbAppSettingManager_CacheAlreadyIntailized()
        {
            RetrieveAllDbAppSettingManager cacheManager = new RetrieveAllDbAppSettingManager(new RetrieveAllProviderFactory(), new DummySettingCacheIntailized());

            Assert.IsNotNull(cacheManager);

            RetrieveAllManagerArguments arguments = new RetrieveAllManagerArguments();

            cacheManager.Create(arguments);

            Assert.IsNull(arguments.RetrieveAllSettingDao);
            Assert.IsNull(arguments.SaveNewSettingDao);
        }
        public void LazyLoadDbAppSettingManager_UseDefaults()
        {
            RetrieveAllDbAppSettingManager cacheManager = new RetrieveAllDbAppSettingManager(new RetrieveAllProviderFactory(), new DummySettingCache());

            Assert.IsNotNull(cacheManager);

            RetrieveAllManagerArguments arguments = new RetrieveAllManagerArguments();

            cacheManager.Create(arguments);

            Assert.IsNotNull(arguments.RetrieveAllSettingDao);
            Assert.IsTrue(arguments.RetrieveAllSettingDao.GetType() == typeof(DefaultRetrieveAllSettingDao));
            Assert.IsNotNull(arguments.SaveNewSettingDao);
            Assert.IsTrue(arguments.SaveNewSettingDao.GetType() == typeof(DefaultSaveNewSettingDao));
        }
        public void RetrieveAllDbAppSettingManager()
        {
            RetrieveAllDbAppSettingManager cacheManager = new RetrieveAllDbAppSettingManager(new RetrieveAllProviderFactory(), new DummySettingCache());

            Assert.IsNotNull(cacheManager);
        }