public void GetSystemConfiguration_returns_systemconfiguration_setting_id_1()
        {
            //arrange
            var sysconfig = new SystemConfigurationObject()
            {
                SettingId = 1
            };

            _repository.Add(sysconfig);
            var mut = new SystemConfigurationService(_repository, _fakecacheprovider);
            //act
            var result = mut.GetSystemConfigurations();

            //assert
            Assert.AreEqual(sysconfig, result);
            //cleanup
            _repository.Delete(sysconfig);
        }
        public void GetSystemConfiguration_when_cache_provider_is_not_null_and_cache_value_is_not_null_return_cache_value()
        {
            //arrange
            var sysconfig = new SystemConfigurationObject()
            {
                SettingId = 2
            };

            _fakecacheprovider.Set("GetSystemConfigurations", sysconfig);
            var mut = new SystemConfigurationService(_repository, _fakecacheprovider);
            //act
            var result = mut.GetSystemConfigurations();

            //assert
            Assert.AreEqual(sysconfig, result);
            //cleanup
            _fakecacheprovider.Clear("GetSystemConfigurations");
        }
        public void GetSystemConfiguration_when_no_result_in_cache_sets_systemconfiguration_setting_id_1_in_cache()
        {
            //arrange
            var sysconfig = new SystemConfigurationObject()
            {
                SettingId = 1
            };

            _repository.Add(sysconfig);
            var mut = new SystemConfigurationService(_repository, _fakecacheprovider);

            //act
            mut.GetSystemConfigurations();
            SystemConfigurationObject resultObj;

            _fakecacheprovider.Get("GetSystemConfigurations", out resultObj);
            //assert
            Assert.AreEqual(sysconfig, resultObj);
            //cleanup
            _repository.Delete(sysconfig);
            _fakecacheprovider.Clear("GetSystemConfigurations");
        }