def setUp(self): super(SiteConfigFeatureCheckerTests, self).setUp() self.checker = SiteConfigFeatureChecker() self.siteconfig = SiteConfiguration.objects.create( site=Site.objects.get_current())
class SiteConfigFeatureCheckerTests(TestCase): """Unit tests for djblets.features.checkers.SiteConfigFeatureChecker.""" def setUp(self): super(SiteConfigFeatureCheckerTests, self).setUp() self.checker = SiteConfigFeatureChecker() self.siteconfig = SiteConfiguration.objects.create( site=Site.objects.get_current()) def tearDown(self): super(SiteConfigFeatureCheckerTests, self).tearDown() try: delattr(settings, 'ENABLED_FEATURES') except AttributeError: pass def test_is_feature_enabled_with_siteconfig_enabled(self): """Testing SiteConfigFeatureChecker.is_feature_enabled with feature enabled in SiteConfiguration """ self.siteconfig.set('enabled_features', { 'my-feature': True, }) self.siteconfig.save() settings.ENABLED_FEATURES = { 'my-feature': False, } self.assertTrue(self.checker.is_feature_enabled('my-feature')) def test_is_feature_enabled_with_siteconfig_disabled(self): """Testing SiteConfigFeatureChecker.is_feature_enabled with feature disabled in SiteConfiguration """ self.siteconfig.set('enabled_features', { 'my-feature': False, }) self.siteconfig.save() settings.ENABLED_FEATURES = { 'my-feature': True, } self.assertFalse(self.checker.is_feature_enabled('my-feature')) def test_is_feature_enabled_with_settings_enabled(self): """Testing SiteConfigFeatureChecker.is_feature_enabled with feature enabled in Settings """ settings.ENABLED_FEATURES = { 'my-feature': True, } self.assertTrue(self.checker.is_feature_enabled('my-feature')) def test_is_feature_enabled_with_settings_disabled(self): """Testing SiteConfigFeatureChecker.is_feature_enabled with feature disabled in Settings """ settings.ENABLED_FEATURES = { 'my-feature': False, } self.assertFalse(self.checker.is_feature_enabled('my-feature')) def test_is_feature_enabled_with_unset(self): """Testing SiteConfigFeatureChecker.is_feature_enabled with feature state not set """ self.assertFalse(self.checker.is_feature_enabled('my-feature'))