def test_check_expired_when_not_expired(self): """Testing IntegrationManager.check_expired when not expired""" manager = IntegrationManager(IntegrationConfig) # Cache some state. integration = manager.register_integration_class(DummyIntegration1) integration.create_config(enabled=True, save=True) manager.get_integration_configs(DummyIntegration1) # Make sure the integration isn't enabled. This would be because we # haven't refreshed yet. self.assertFalse(integration.enabled) self.assertNotEqual(manager._integration_configs, {}) # Fake having the latest state. manager._needs_recalc = False # Check expired state, without actually expiring it. self.assertFalse(manager.is_expired()) manager.check_expired() # Make sure state has not changed. self.assertFalse(manager.is_expired()) self.assertFalse(integration.enabled) self.assertNotEqual(manager._integration_configs, {})
def test_check_expired_when_expired(self): """Testing IntegrationManager.check_expired when expired""" manager = IntegrationManager(IntegrationConfig) # Cache some state. integration1 = manager.register_integration_class(DummyIntegration1) integration1.create_config(enabled=True, save=True) manager.get_integration_configs(DummyIntegration1) integration2 = manager.register_integration_class(DummyIntegration2) manager.get_integration_configs(DummyIntegration1) # Make sure the integration isn't enabled. This would be because we # haven't refreshed yet. self.assertFalse(integration1.enabled) self.assertFalse(integration2.enabled) self.assertNotEqual(manager._integration_configs, {}) # Check expired state. self.assertTrue(manager.is_expired()) manager.check_expired() # Make sure state has been updated and caches cleared. self.assertTrue(integration1.enabled) self.assertFalse(integration2.enabled) self.assertEqual(manager._integration_configs, {})
def test_check_expired_when_expired(self): """Testing IntegrationManager.check_expired when expired""" manager = IntegrationManager(IntegrationConfig) # Cache some state. integration1 = manager.register_integration_class(DummyIntegration1) integration1.create_config(enabled=True, save=True) manager.get_integration_configs(DummyIntegration1) integration2 = manager.register_integration_class(DummyIntegration2) manager.get_integration_configs(DummyIntegration1) # Make sure the integration isn't enabled. This would be because we # haven't refreshed yet. self.assertFalse(integration1.enabled) self.assertFalse(integration2.enabled) self.assertNotEqual(manager._integration_configs, {}) # Check expired state. self.assertTrue(manager.is_expired()) manager.check_expired() # Make sure state has been updated and caches cleared. self.assertFalse(manager.is_expired()) self.assertTrue(integration1.enabled) self.assertFalse(integration2.enabled) self.assertEqual(manager._integration_configs, {})
def test_check_expired_when_not_expired(self): """Testing IntegrationManager.check_expired when not expired""" manager = IntegrationManager(IntegrationConfig) # Cache some state. integration = manager.register_integration_class(DummyIntegration1) integration.create_config(enabled=True, save=True) manager.get_integration_configs(DummyIntegration1) # Make sure the integration isn't enabled. This would be because we # haven't refreshed yet. self.assertFalse(integration.enabled) self.assertNotEqual(manager._integration_configs, {}) # Fake having the latest state. manager._needs_recalc = False # Check expired state, without actually expiring it. self.assertFalse(manager.is_expired()) manager.check_expired() # Make sure state has not changed. self.assertFalse(manager.is_expired()) self.assertFalse(integration.enabled) self.assertNotEqual(manager._integration_configs, {})
def test_get_integration_configs_caches(self): """Testing IntegrationManager.get_integration_configs caches results""" manager = IntegrationManager(IntegrationConfig) integration1 = manager.register_integration_class(DummyIntegration1) config1 = integration1.create_config(enabled=True, save=True) config2 = integration1.create_config(enabled=False, save=True) with self.assertNumQueries(1): manager.get_integration_configs() with self.assertNumQueries(0): configs = manager.get_integration_configs() self.assertEqual(set(configs), {config1, config2})
def test_get_integration_configs_caches(self): """Testing IntegrationManager.get_integration_configs caches results""" manager = IntegrationManager(IntegrationConfig) integration1 = manager.register_integration_class(DummyIntegration1) config1 = integration1.create_config(enabled=True, save=True) config2 = integration1.create_config(enabled=False, save=True) with self.assertNumQueries(1): manager.get_integration_configs() with self.assertNumQueries(0): configs = manager.get_integration_configs() self.assertEqual(set(configs), {config1, config2})
def test_get_integration_configs_with_filter(self): """Testing IntegrationManager.get_integration_configs with filter""" manager = IntegrationManager(IntegrationConfig) integration1 = manager.register_integration_class(DummyIntegration1) integration2 = manager.register_integration_class(DummyIntegration2) config1 = integration1.create_config(enabled=False, save=True) integration1.create_config(enabled=True, save=True) integration2.create_config(enabled=True, save=True) with self.assertNumQueries(1): configs = manager.get_integration_configs(integration1, enabled=False) self.assertEqual(set(configs), {config1})
def test_get_integration_configs_with_filter(self): """Testing IntegrationManager.get_integration_configs with filter""" manager = IntegrationManager(IntegrationConfig) integration1 = manager.register_integration_class(DummyIntegration1) integration2 = manager.register_integration_class(DummyIntegration2) config1 = integration1.create_config(enabled=False, save=True) integration1.create_config(enabled=True, save=True) integration2.create_config(enabled=True, save=True) with self.assertNumQueries(1): configs = manager.get_integration_configs(integration1, enabled=False) self.assertEqual(set(configs), {config1})
def test_get_integration_configs(self): """Testing IntegrationManager.get_integration_configs with all configurations """ manager = IntegrationManager(IntegrationConfig) integration1 = manager.register_integration_class(DummyIntegration1) integration2 = manager.register_integration_class(DummyIntegration2) config1 = integration1.create_config(enabled=True, save=True) config2 = integration1.create_config(enabled=False, save=True) config3 = integration2.create_config(enabled=True, save=True) with self.assertNumQueries(1): configs = manager.get_integration_configs() self.assertEqual(set(configs), {config1, config2, config3})
def test_get_integration_configs(self): """Testing IntegrationManager.get_integration_configs with all configurations """ manager = IntegrationManager(IntegrationConfig) integration1 = manager.register_integration_class(DummyIntegration1) integration2 = manager.register_integration_class(DummyIntegration2) config1 = integration1.create_config(enabled=True, save=True) config2 = integration1.create_config(enabled=False, save=True) config3 = integration2.create_config(enabled=True, save=True) with self.assertNumQueries(1): configs = manager.get_integration_configs() self.assertEqual(set(configs), {config1, config2, config3})
def test_clear_all_configs_cache(self): """Testing IntegrationManager.clear_all_configs_cache""" manager = IntegrationManager(IntegrationConfig) with self.assertNumQueries(1): manager.get_integration_configs(DummyIntegration1) with self.assertNumQueries(0): manager.get_integration_configs(DummyIntegration1) manager.clear_all_configs_cache() with self.assertNumQueries(1): manager.get_integration_configs(DummyIntegration1)
def test_clear_all_configs_cache(self): """Testing IntegrationManager.clear_all_configs_cache""" manager = IntegrationManager(IntegrationConfig) with self.assertNumQueries(1): manager.get_integration_configs(DummyIntegration1) with self.assertNumQueries(0): manager.get_integration_configs(DummyIntegration1) manager.clear_all_configs_cache() with self.assertNumQueries(1): manager.get_integration_configs(DummyIntegration1)