Beispiel #1
0
 def test_cloudfront_validate_distribution_id(self):
     with self.assertRaises(ImproperlyConfigured):
         get_backends(backend_settings={
             'cloudfront': {
                 'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudfrontBackend',
             },
         })
Beispiel #2
0
 def test_cloudfront_validate_distribution_id(self):
     with self.assertRaises(ImproperlyConfigured):
         get_backends(backend_settings={
             'cloudfront': {
                 'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudfrontBackend',
             },
         })
Beispiel #3
0
    def test_azure_cdn_purge(self, make_purge_call_mock):
        backends = get_backends(backend_settings={
            'azure_cdn': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.AzureCdnBackend',
                'RESOURCE_GROUP_NAME': 'test-resource-group',
                'CDN_PROFILE_NAME': 'wagtail-io-profile',
                'CDN_ENDPOINT_NAME': 'wagtail-io-endpoint',
                'CREDENTIALS': 'Fake credentials',
            },
        })

        self.assertEqual(set(backends.keys()), set(['azure_cdn']))
        self.assertIsInstance(backends['azure_cdn'], AzureCdnBackend)

        # purge()
        backends['azure_cdn'].purge('http://www.wagtail.io/home/events/christmas/?test=1')
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertEqual(len(call_args), 2)
        self.assertIsInstance(call_args[0], CdnManagementClient)
        self.assertEqual(call_args[1], ["/home/events/christmas/?test=1"])
        make_purge_call_mock.reset_mock()

        # purge_batch()
        backends['azure_cdn'].purge_batch([
            'http://www.wagtail.io/home/events/christmas/?test=1', 'http://torchbox.com/blog/'
        ])
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertIsInstance(call_args[0], CdnManagementClient)
        self.assertEqual(call_args[1], ["/home/events/christmas/?test=1", "/blog/"])
Beispiel #4
0
    def test_azure_front_door_purge(self, make_purge_call_mock):
        backends = get_backends(backend_settings={
            'azure_front_door': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend',
                'RESOURCE_GROUP_NAME': 'test-resource-group',
                'FRONT_DOOR_NAME': 'wagtail-io-front-door',
                'CREDENTIALS': 'Fake credentials',
            },
        })

        self.assertEqual(set(backends.keys()), set(['azure_front_door']))
        self.assertIsInstance(backends['azure_front_door'], AzureFrontDoorBackend)

        # purge()
        backends['azure_front_door'].purge('http://www.wagtail.io/home/events/christmas/?test=1')
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertIsInstance(call_args[0], FrontDoorManagementClient)
        self.assertEqual(call_args[1], ["/home/events/christmas/?test=1"])

        make_purge_call_mock.reset_mock()

        # purge_batch()
        backends['azure_front_door'].purge_batch([
            'http://www.wagtail.io/home/events/christmas/?test=1', 'http://torchbox.com/blog/'
        ])
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertIsInstance(call_args[0], FrontDoorManagementClient)
        self.assertEqual(call_args[1], ["/home/events/christmas/?test=1", "/blog/"])
Beispiel #5
0
    def test_backwards_compatibility(self):
        backends = get_backends()

        self.assertEqual(set(backends.keys()), set(['default']))
        self.assertIsInstance(backends['default'], HTTPBackend)
        self.assertEqual(backends['default'].cache_scheme, 'http')
        self.assertEqual(backends['default'].cache_netloc, 'localhost:8000')
Beispiel #6
0
    def test_backwards_compatibility(self):
        backends = get_backends()

        self.assertEqual(set(backends.keys()), set(['default']))
        self.assertIsInstance(backends['default'], HTTPBackend)
        self.assertEqual(backends['default'].cache_scheme, 'http')
        self.assertEqual(backends['default'].cache_netloc, 'localhost:8000')
Beispiel #7
0
    def test_backwards_compatibility(self):
        backends = get_backends()

        self.assertEqual(set(backends.keys()), {"default"})
        self.assertIsInstance(backends["default"], HTTPBackend)
        self.assertEqual(backends["default"].cache_scheme, "http")
        self.assertEqual(backends["default"].cache_netloc, "localhost:8000")
Beispiel #8
0
    def _test_http_with_side_effect(self, urlopen_mock, urlopen_side_effect):
        # given a backends configuration with one HTTP backend
        backends = get_backends(
            backend_settings={
                "varnish": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.HTTPBackend",
                    "LOCATION": "http://localhost:8000",
                },
            })
        self.assertEqual(set(backends.keys()), {"varnish"})
        self.assertIsInstance(backends["varnish"], HTTPBackend)
        # and mocked urlopen that may or may not raise network-related exception
        urlopen_mock.side_effect = urlopen_side_effect

        # when making a purge request
        backends.get("varnish").purge(
            "http://www.wagtail.org/home/events/christmas/")

        # then no exception is raised
        # and mocked urlopen is called with a proper purge request
        self.assertEqual(urlopen_mock.call_count, 1)
        (purge_request, ), _call_kwargs = urlopen_mock.call_args
        self.assertEqual(purge_request.full_url,
                         "http://localhost:8000/home/events/christmas/")
Beispiel #9
0
    def test_cloudfront(self):
        backends = get_backends(backend_settings={
            'cloudfront': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudfrontBackend',
                'DISTRIBUTION_ID': 'frontend',
            },
        })

        self.assertEqual(set(backends.keys()), set(['cloudfront']))
        self.assertIsInstance(backends['cloudfront'], CloudfrontBackend)

        self.assertEqual(backends['cloudfront'].cloudfront_distribution_id, 'frontend')
Beispiel #10
0
    def test_cloudfront(self):
        backends = get_backends(backend_settings={
            'cloudfront': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudfrontBackend',
                'DISTRIBUTION_ID': 'frontend',
            },
        })

        self.assertEqual(set(backends.keys()), set(['cloudfront']))
        self.assertIsInstance(backends['cloudfront'], CloudfrontBackend)

        self.assertEqual(backends['cloudfront'].cloudfront_distribution_id, 'frontend')
Beispiel #11
0
    def test_cloudfront_distribution_id_mapping(self, _create_invalidation):
        backends = get_backends(backend_settings={
            'cloudfront': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudfrontBackend',
                'DISTRIBUTION_ID': {
                    'www.wagtail.org': 'frontend',
                }
            },
        })
        backends.get('cloudfront').purge('http://www.wagtail.org/home/events/christmas/')
        backends.get('cloudfront').purge('http://torchbox.com/blog/')

        _create_invalidation.assert_called_once_with('frontend', ['/home/events/christmas/'])
Beispiel #12
0
    def test_varnish(self):
        backends = get_backends(backend_settings={
            'varnish': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.HTTPBackend',
                'LOCATION': 'http://localhost:8000',
            },
        })

        self.assertEqual(set(backends.keys()), set(['varnish']))
        self.assertIsInstance(backends['varnish'], HTTPBackend)

        self.assertEqual(backends['varnish'].cache_scheme, 'http')
        self.assertEqual(backends['varnish'].cache_netloc, 'localhost:8000')
Beispiel #13
0
    def test_azure_front_door(self):
        backends = get_backends(backend_settings={
            'azure_front_door': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend',
                'RESOURCE_GROUP_NAME': 'test-resource-group',
                'FRONT_DOOR_NAME': 'wagtail-io-front-door',
            },
        })

        self.assertEqual(set(backends.keys()), set(['azure_front_door']))
        self.assertIsInstance(backends['azure_front_door'], AzureFrontDoorBackend)
        self.assertEqual(backends['azure_front_door']._resource_group_name, 'test-resource-group')
        self.assertEqual(backends['azure_front_door']._front_door_name, 'wagtail-io-front-door')
Beispiel #14
0
    def test_cloudfront_distribution_id_mapping(self, _create_invalidation):
        backends = get_backends(backend_settings={
            'cloudfront': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudfrontBackend',
                'DISTRIBUTION_ID': {
                    'www.wagtail.io': 'frontend',
                }
            },
        })
        backends.get('cloudfront').purge('http://www.wagtail.io/home/events/christmas/')
        backends.get('cloudfront').purge('http://torchbox.com/blog/')

        _create_invalidation.assert_called_once_with('frontend', ['/home/events/christmas/'])
Beispiel #15
0
    def test_varnish(self):
        backends = get_backends(backend_settings={
            'varnish': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.HTTPBackend',
                'LOCATION': 'http://localhost:8000',
            },
        })

        self.assertEqual(set(backends.keys()), set(['varnish']))
        self.assertIsInstance(backends['varnish'], HTTPBackend)

        self.assertEqual(backends['varnish'].cache_scheme, 'http')
        self.assertEqual(backends['varnish'].cache_netloc, 'localhost:8000')
Beispiel #16
0
    def test_filter(self):
        backends = get_backends(backend_settings={
            'varnish': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.HTTPBackend',
                'LOCATION': 'http://*****:*****@test.com',
                'TOKEN': 'this is the token',
                'ZONEID': 'this is a zone id',
            }
        }, backends=['cloudflare'])

        self.assertEqual(set(backends.keys()), set(['cloudflare']))
Beispiel #17
0
    def test_varnish(self):
        backends = get_backends(
            backend_settings={
                "varnish": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.HTTPBackend",
                    "LOCATION": "http://localhost:8000",
                },
            })

        self.assertEqual(set(backends.keys()), {"varnish"})
        self.assertIsInstance(backends["varnish"], HTTPBackend)

        self.assertEqual(backends["varnish"].cache_scheme, "http")
        self.assertEqual(backends["varnish"].cache_netloc, "localhost:8000")
Beispiel #18
0
    def test_azure_cdn(self):
        backends = get_backends(backend_settings={
            'azure_cdn': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.AzureCdnBackend',
                'RESOURCE_GROUP_NAME': 'test-resource-group',
                'CDN_PROFILE_NAME': 'wagtail-io-profile',
                'CDN_ENDPOINT_NAME': 'wagtail-io-endpoint',
            },
        })

        self.assertEqual(set(backends.keys()), set(['azure_cdn']))
        self.assertIsInstance(backends['azure_cdn'], AzureCdnBackend)
        self.assertEqual(backends['azure_cdn']._resource_group_name, 'test-resource-group')
        self.assertEqual(backends['azure_cdn']._cdn_profile_name, 'wagtail-io-profile')
        self.assertEqual(backends['azure_cdn']._cdn_endpoint_name, 'wagtail-io-endpoint')
Beispiel #19
0
    def test_filter(self):
        backends = get_backends(backend_settings={
            'varnish': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.HTTPBackend',
                'LOCATION': 'http://*****:*****@test.com',
                'API_KEY': 'this is the api key',
                'ZONEID': 'this is a zone id',
            }
        }, backends=['cloudflare'])

        self.assertEqual(set(backends.keys()), set(['cloudflare']))
Beispiel #20
0
    def test_cloudflare(self):
        backends = get_backends(backend_settings={
            'cloudflare': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudflareBackend',
                'EMAIL': '*****@*****.**',
                'TOKEN': 'this is the token',
                'ZONEID': 'this is a zone id',
            },
        })

        self.assertEqual(set(backends.keys()), set(['cloudflare']))
        self.assertIsInstance(backends['cloudflare'], CloudflareBackend)

        self.assertEqual(backends['cloudflare'].cloudflare_email, '*****@*****.**')
        self.assertEqual(backends['cloudflare'].cloudflare_token, 'this is the token')
Beispiel #21
0
    def test_cloudfront(self):
        backends = get_backends(
            backend_settings={
                "cloudfront": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.CloudfrontBackend",
                    "DISTRIBUTION_ID": "frontend",
                },
            })

        self.assertEqual(set(backends.keys()), {"cloudfront"})
        self.assertIsInstance(backends["cloudfront"], CloudfrontBackend)

        self.assertEqual(backends["cloudfront"].cloudfront_distribution_id,
                         "frontend")
Beispiel #22
0
 def test_azure_front_door_get_client(self):
     mock_credentials = mock.MagicMock()
     backends = get_backends(backend_settings={
         'azure_front_door': {
             'BACKEND': 'wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend',
             'RESOURCE_GROUP_NAME': 'test-resource-group',
             'FRONT_DOOR_NAME': 'wagtail-io-fake-front-door-name',
             'SUBSCRIPTION_ID': 'fake-subscription-id',
             'CREDENTIALS': mock_credentials,
         },
     })
     client = backends['azure_front_door']._get_client()
     self.assertEqual(set(backends.keys()), set(['azure_front_door']))
     self.assertIsInstance(client, FrontDoorManagementClient)
     self.assertEqual(client.config.subscription_id, 'fake-subscription-id')
     self.assertIs(client.config.credentials, mock_credentials)
Beispiel #23
0
    def test_cloudflare(self):
        backends = get_backends(backend_settings={
            'cloudflare': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.CloudflareBackend',
                'EMAIL': '*****@*****.**',
                'API_KEY': 'this is the api key',
                'ZONEID': 'this is a zone id',
                'BEARER_TOKEN': 'this is a bearer token'
            },
        })

        self.assertEqual(set(backends.keys()), set(['cloudflare']))
        self.assertIsInstance(backends['cloudflare'], CloudflareBackend)

        self.assertEqual(backends['cloudflare'].cloudflare_email, '*****@*****.**')
        self.assertEqual(backends['cloudflare'].cloudflare_api_key, 'this is the api key')
        self.assertEqual(backends['cloudflare'].cloudflare_token, 'this is a bearer token')
Beispiel #24
0
 def test_azure_cdn_get_client(self):
     mock_credentials = mock.MagicMock()
     backends = get_backends(backend_settings={
         'azure_cdn': {
             'BACKEND': 'wagtail.contrib.frontend_cache.backends.AzureCdnBackend',
             'RESOURCE_GROUP_NAME': 'test-resource-group',
             'CDN_PROFILE_NAME': 'wagtail-io-profile',
             'CDN_ENDPOINT_NAME': 'wagtail-io-endpoint',
             'SUBSCRIPTION_ID': 'fake-subscription-id',
             'CREDENTIALS': mock_credentials,
         },
     })
     self.assertEqual(set(backends.keys()), set(['azure_cdn']))
     client = backends['azure_cdn']._get_client()
     self.assertIsInstance(client, CdnManagementClient)
     self.assertEqual(client.config.subscription_id, 'fake-subscription-id')
     self.assertIs(client.config.credentials, mock_credentials)
Beispiel #25
0
    def test_cloudfront_distribution_id_mapping(self, _create_invalidation):
        backends = get_backends(
            backend_settings={
                "cloudfront": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.CloudfrontBackend",
                    "DISTRIBUTION_ID": {
                        "www.wagtail.org": "frontend",
                    },
                },
            })
        backends.get("cloudfront").purge(
            "http://www.wagtail.org/home/events/christmas/")
        backends.get("cloudfront").purge("http://torchbox.com/blog/")

        _create_invalidation.assert_called_once_with(
            "frontend", ["/home/events/christmas/"])
Beispiel #26
0
 def test_azure_front_door_get_client(self):
     mock_credentials = mock.MagicMock()
     backends = get_backends(
         backend_settings={
             "azure_front_door": {
                 "BACKEND":
                 "wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend",
                 "RESOURCE_GROUP_NAME": "test-resource-group",
                 "FRONT_DOOR_NAME": "wagtail-io-fake-front-door-name",
                 "SUBSCRIPTION_ID": "fake-subscription-id",
                 "CREDENTIALS": mock_credentials,
             },
         })
     client = backends["azure_front_door"]._get_client()
     self.assertEqual(set(backends.keys()), {"azure_front_door"})
     self.assertIsInstance(client, FrontDoorManagementClient)
     self.assertEqual(client.config.subscription_id, "fake-subscription-id")
     self.assertIs(client.config.credentials, mock_credentials)
Beispiel #27
0
    def test_azure_front_door(self):
        backends = get_backends(
            backend_settings={
                "azure_front_door": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend",
                    "RESOURCE_GROUP_NAME": "test-resource-group",
                    "FRONT_DOOR_NAME": "wagtail-io-front-door",
                },
            })

        self.assertEqual(set(backends.keys()), {"azure_front_door"})
        self.assertIsInstance(backends["azure_front_door"],
                              AzureFrontDoorBackend)
        self.assertEqual(backends["azure_front_door"]._resource_group_name,
                         "test-resource-group")
        self.assertEqual(backends["azure_front_door"]._front_door_name,
                         "wagtail-io-front-door")
Beispiel #28
0
    def test_multiple(self):
        backends = get_backends(
            backend_settings={
                "varnish": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.HTTPBackend",
                    "LOCATION": "http://*****:*****@test.com",
                    "API_KEY": "this is the api key",
                    "ZONEID": "this is a zone id",
                },
            })

        self.assertEqual(set(backends.keys()), {"varnish", "cloudflare"})
Beispiel #29
0
 def test_azure_cdn_get_client(self):
     mock_credentials = mock.MagicMock()
     backends = get_backends(
         backend_settings={
             "azure_cdn": {
                 "BACKEND":
                 "wagtail.contrib.frontend_cache.backends.AzureCdnBackend",
                 "RESOURCE_GROUP_NAME": "test-resource-group",
                 "CDN_PROFILE_NAME": "wagtail-io-profile",
                 "CDN_ENDPOINT_NAME": "wagtail-io-endpoint",
                 "SUBSCRIPTION_ID": "fake-subscription-id",
                 "CREDENTIALS": mock_credentials,
             },
         })
     self.assertEqual(set(backends.keys()), {"azure_cdn"})
     client = backends["azure_cdn"]._get_client()
     self.assertIsInstance(client, CdnManagementClient)
     self.assertEqual(client.config.subscription_id, "fake-subscription-id")
     self.assertIs(client.config.credentials, mock_credentials)
Beispiel #30
0
    def test_azure_cdn(self):
        backends = get_backends(
            backend_settings={
                "azure_cdn": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.AzureCdnBackend",
                    "RESOURCE_GROUP_NAME": "test-resource-group",
                    "CDN_PROFILE_NAME": "wagtail-io-profile",
                    "CDN_ENDPOINT_NAME": "wagtail-io-endpoint",
                },
            })

        self.assertEqual(set(backends.keys()), {"azure_cdn"})
        self.assertIsInstance(backends["azure_cdn"], AzureCdnBackend)
        self.assertEqual(backends["azure_cdn"]._resource_group_name,
                         "test-resource-group")
        self.assertEqual(backends["azure_cdn"]._cdn_profile_name,
                         "wagtail-io-profile")
        self.assertEqual(backends["azure_cdn"]._cdn_endpoint_name,
                         "wagtail-io-endpoint")
Beispiel #31
0
    def _test_http_with_side_effect(self, urlopen_mock, urlopen_side_effect):
        # given a backends configuration with one HTTP backend
        backends = get_backends(backend_settings={
            'varnish': {
                'BACKEND': 'wagtail.contrib.frontend_cache.backends.HTTPBackend',
                'LOCATION': 'http://localhost:8000',
            },
        })
        self.assertEqual(set(backends.keys()), set(['varnish']))
        self.assertIsInstance(backends['varnish'], HTTPBackend)
        # and mocked urlopen that may or may not raise network-related exception
        urlopen_mock.side_effect = urlopen_side_effect

        # when making a purge request
        backends.get('varnish').purge('http://www.wagtail.io/home/events/christmas/')

        # then no exception is raised
        # and mocked urlopen is called with a proper purge request
        self.assertEqual(urlopen_mock.call_count, 1)
        (purge_request,), _call_kwargs = urlopen_mock.call_args
        self.assertEqual(purge_request.full_url, 'http://localhost:8000/home/events/christmas/')
Beispiel #32
0
    def test_cloudflare(self):
        backends = get_backends(
            backend_settings={
                "cloudflare": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.CloudflareBackend",
                    "EMAIL": "*****@*****.**",
                    "API_KEY": "this is the api key",
                    "ZONEID": "this is a zone id",
                    "BEARER_TOKEN": "this is a bearer token",
                },
            })

        self.assertEqual(set(backends.keys()), {"cloudflare"})
        self.assertIsInstance(backends["cloudflare"], CloudflareBackend)

        self.assertEqual(backends["cloudflare"].cloudflare_email,
                         "*****@*****.**")
        self.assertEqual(backends["cloudflare"].cloudflare_api_key,
                         "this is the api key")
        self.assertEqual(backends["cloudflare"].cloudflare_token,
                         "this is a bearer token")
Beispiel #33
0
    def test_azure_cdn_purge(self, make_purge_call_mock):
        backends = get_backends(
            backend_settings={
                "azure_cdn": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.AzureCdnBackend",
                    "RESOURCE_GROUP_NAME": "test-resource-group",
                    "CDN_PROFILE_NAME": "wagtail-io-profile",
                    "CDN_ENDPOINT_NAME": "wagtail-io-endpoint",
                    "CREDENTIALS": "Fake credentials",
                },
            })

        self.assertEqual(set(backends.keys()), {"azure_cdn"})
        self.assertIsInstance(backends["azure_cdn"], AzureCdnBackend)

        # purge()
        backends["azure_cdn"].purge(
            "http://www.wagtail.org/home/events/christmas/?test=1")
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertEqual(len(call_args), 2)
        self.assertIsInstance(call_args[0], CdnManagementClient)
        self.assertEqual(call_args[1], ["/home/events/christmas/?test=1"])
        make_purge_call_mock.reset_mock()

        # purge_batch()
        backends["azure_cdn"].purge_batch([
            "http://www.wagtail.org/home/events/christmas/?test=1",
            "http://torchbox.com/blog/",
        ])
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertIsInstance(call_args[0], CdnManagementClient)
        self.assertEqual(call_args[1],
                         ["/home/events/christmas/?test=1", "/blog/"])
Beispiel #34
0
    def test_azure_front_door_purge(self, make_purge_call_mock):
        backends = get_backends(
            backend_settings={
                "azure_front_door": {
                    "BACKEND":
                    "wagtail.contrib.frontend_cache.backends.AzureFrontDoorBackend",
                    "RESOURCE_GROUP_NAME": "test-resource-group",
                    "FRONT_DOOR_NAME": "wagtail-io-front-door",
                    "CREDENTIALS": "Fake credentials",
                },
            })

        self.assertEqual(set(backends.keys()), {"azure_front_door"})
        self.assertIsInstance(backends["azure_front_door"],
                              AzureFrontDoorBackend)

        # purge()
        backends["azure_front_door"].purge(
            "http://www.wagtail.org/home/events/christmas/?test=1")
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertIsInstance(call_args[0], FrontDoorManagementClient)
        self.assertEqual(call_args[1], ["/home/events/christmas/?test=1"])

        make_purge_call_mock.reset_mock()

        # purge_batch()
        backends["azure_front_door"].purge_batch([
            "http://www.wagtail.org/home/events/christmas/?test=1",
            "http://torchbox.com/blog/",
        ])
        make_purge_call_mock.assert_called_once()
        call_args = tuple(make_purge_call_mock.call_args)[0]
        self.assertIsInstance(call_args[0], FrontDoorManagementClient)
        self.assertEqual(call_args[1],
                         ["/home/events/christmas/?test=1", "/blog/"])
Beispiel #35
0
 def inner(*args, backend_settings=None, backends=None, **kwargs):
     for backend_name, backend in get_backends(backend_settings=backend_settings, backends=backends).items():
         if not isinstance(backend, CloudflareBackend):
             continue
         func(*args, backend=backend, **kwargs)
Beispiel #36
0
    def test_default(self):
        backends = get_backends()

        self.assertEqual(len(backends), 0)
 def get_context_data(self, **kwargs):
     uwsgi_backend = get_backends().get('uwsgi', None)
     kwargs['cache_keys'] = uwsgi_backend.get_cache_keys() if uwsgi_backend else []
     return super().get_context_data(**kwargs)
Beispiel #38
0
    def test_default(self):
        backends = get_backends()

        self.assertEqual(len(backends), 0)