Пример #1
0
    def test_base_options_parsing(self):
        url = "memcache://127.0.0.1:11211/?timeout=0&key_prefix=cache_&key_function=foo.get_key&version=1"
        url = Env.cache_url_config(url)

        self.assertEqual(url["KEY_PREFIX"], "cache_")
        self.assertEqual(url["KEY_FUNCTION"], "foo.get_key")
        self.assertEqual(url["TIMEOUT"], 0)
        self.assertEqual(url["VERSION"], 1)

        url = "redis://127.0.0.1:6379/?timeout=None"
        url = Env.cache_url_config(url)

        self.assertEqual(url["TIMEOUT"], None)
Пример #2
0
    def test_base_options_parsing(self):
        url = 'memcache://127.0.0.1:11211/?timeout=0&key_prefix=cache_&key_function=foo.get_key&version=1'
        url = Env.cache_url_config(url)

        self.assertEqual(url['KEY_PREFIX'], 'cache_')
        self.assertEqual(url['KEY_FUNCTION'], 'foo.get_key')
        self.assertEqual(url['TIMEOUT'], 0)
        self.assertEqual(url['VERSION'], 1)

        url = 'redis://127.0.0.1:6379/?timeout=None'
        url = Env.cache_url_config(url)

        self.assertEqual(url['TIMEOUT'], None)
Пример #3
0
    def test_base_options_parsing(self):
        url = 'memcache://127.0.0.1:11211/?timeout=0&key_prefix=cache_&key_function=foo.get_key&version=1'
        url = Env.cache_url_config(url)

        self.assertEqual(url['KEY_PREFIX'], 'cache_')
        self.assertEqual(url['KEY_FUNCTION'], 'foo.get_key')
        self.assertEqual(url['TIMEOUT'], 0)
        self.assertEqual(url['VERSION'], 1)

        url = 'redis://127.0.0.1:6379/?timeout=None'
        url = Env.cache_url_config(url)

        self.assertEqual(url['TIMEOUT'], None)
Пример #4
0
    def test_memcache_pylib_parsing(self):
        url = 'pymemcache://127.0.0.1:11211'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'],
                         'django.core.cache.backends.memcached.PyLibMCCache')
        self.assertEqual(url['LOCATION'], '127.0.0.1:11211')
Пример #5
0
    def test_dbcache_parsing(self):
        url = 'dbcache://my_cache_table'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'],
                         'django.core.cache.backends.db.DatabaseCache')
        self.assertEqual(url['LOCATION'], 'my_cache_table')
Пример #6
0
    def test_locmem_named_parsing(self):
        url = 'locmemcache://unique-snowflake'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'],
                         'django.core.cache.backends.locmem.LocMemCache')
        self.assertEqual(url['LOCATION'], 'unique-snowflake')
Пример #7
0
    def test_dummycache_parsing(self):
        url = 'dummycache://'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'],
                         'django.core.cache.backends.dummy.DummyCache')
        self.assertEqual(url['LOCATION'], '')
Пример #8
0
 def test_redis_socket_url(self):
     url = 'redis://:redispass@/path/to/socket.sock?db=0'
     url = Env.cache_url_config(url)
     self.assertEqual(REDIS_DRIVER, url['BACKEND'])
     self.assertEqual(url['LOCATION'],
                      'unix://:redispass@/path/to/socket.sock')
     self.assertEqual(url['OPTIONS'], {'DB': 0})
Пример #9
0
 def test_redis_socket_url(self):
     url = 'redis://:redispass@/path/to/socket.sock?db=0'
     url = Env.cache_url_config(url)
     self.assertEqual(REDIS_DRIVER, url['BACKEND'])
     self.assertEqual(url['LOCATION'], 'unix://:redispass@/path/to/socket.sock')
     self.assertEqual(url['OPTIONS'], {
         'DB': 0
     })
Пример #10
0
    def test_filecache_parsing(self):
        url = 'filecache:///var/tmp/django_cache'
        url = Env.cache_url_config(url)

        self.assertEqual(
            url['BACKEND'],
            'django.core.cache.backends.filebased.FileBasedCache')
        self.assertEqual(url['LOCATION'], '/var/tmp/django_cache')
Пример #11
0
    def test_memcache_socket_parsing(self):
        url = 'memcache:///tmp/memcached.sock'
        url = Env.cache_url_config(url)

        self.assertEqual(
            url['BACKEND'],
            'django.core.cache.backends.memcached.MemcachedCache')
        self.assertEqual(url['LOCATION'], 'unix:/tmp/memcached.sock')
Пример #12
0
    def test_filecache_windows_parsing(self):
        url = 'filecache://C:/foo/bar'
        url = Env.cache_url_config(url)

        self.assertEqual(
            url['BACKEND'],
            'django.core.cache.backends.filebased.FileBasedCache')
        self.assertEqual(url['LOCATION'], 'C:/foo/bar')
Пример #13
0
    def test_memcache_pylib_parsing(self):
        url = "pymemcache://127.0.0.1:11211"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.memcached.PyLibMCCache"
        )
        self.assertEqual(url["LOCATION"], "127.0.0.1:11211")
Пример #14
0
    def test_filecache_parsing(self):
        url = "filecache:///var/tmp/django_cache"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.filebased.FileBasedCache"
        )
        self.assertEqual(url["LOCATION"], "/var/tmp/django_cache")
Пример #15
0
    def test_memcache_socket_parsing(self):
        url = "memcache:///tmp/memcached.sock"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.memcached.MemcachedCache"
        )
        self.assertEqual(url["LOCATION"], "unix:/tmp/memcached.sock")
Пример #16
0
    def test_filecache_windows_parsing(self):
        url = "filecache://C:/foo/bar"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.filebased.FileBasedCache"
        )
        self.assertEqual(url["LOCATION"], "C:/foo/bar")
Пример #17
0
    def test_locmem_named_parsing(self):
        url = "locmemcache://unique-snowflake"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.locmem.LocMemCache"
        )
        self.assertEqual(url["LOCATION"], "unique-snowflake")
Пример #18
0
    def test_custom_backend(self):
        url = "memcache://127.0.0.1:5400?foo=option&bars=9001"
        backend = "django_redis.cache.RedisCache"
        url = Env.cache_url_config(url, backend)

        self.assertEqual(url["BACKEND"], backend)
        self.assertEqual(url["LOCATION"], "127.0.0.1:5400")
        self.assertEqual(url["OPTIONS"], {"FOO": "option", "BARS": 9001,})
Пример #19
0
    def test_memcache_multiple_parsing(self):
        url = 'memcache://172.19.26.240:11211,172.19.26.242:11212'
        url = Env.cache_url_config(url)

        self.assertEqual(
            url['BACKEND'],
            'django.core.cache.backends.memcached.MemcachedCache')
        self.assertEqual(url['LOCATION'],
                         ['172.19.26.240:11211', '172.19.26.242:11212'])
Пример #20
0
    def test_redis_multi_location_parsing(self):
        url = "rediscache://host1:6379,host2:6379,host3:9999/1"
        url = Env.cache_url_config(url)

        self.assertEqual(url["BACKEND"], REDIS_DRIVER)
        self.assertEqual(
            url["LOCATION"],
            ["redis://host1:6379/1", "redis://host2:6379/1", "redis://host3:9999/1",],
        )
Пример #21
0
    def test_redis_parsing(self):
        url = 'rediscache://127.0.0.1:6379/1?client_class=django_redis.client.DefaultClient&password=secret'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], REDIS_DRIVER)
        self.assertEqual(url['LOCATION'], 'redis://127.0.0.1:6379/1')
        self.assertEqual(url['OPTIONS'], {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient',
            'PASSWORD': '******',
        })
Пример #22
0
    def test_redis_parsing(self):
        url = 'rediscache://127.0.0.1:6379:1?client_class=django_redis.client.DefaultClient&password=secret'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django_redis.cache.RedisCache')
        self.assertEqual(url['LOCATION'], '127.0.0.1:6379:1')
        self.assertEqual(url['OPTIONS'], {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient',
            'PASSWORD': '******',
        })
Пример #23
0
    def test_redis_multi_location_parsing(self):
        url = 'rediscache://host1:6379,host2:6379,host3:9999/1'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], REDIS_DRIVER)
        self.assertEqual(url['LOCATION'], [
            'redis://host1:6379/1',
            'redis://host2:6379/1',
            'redis://host3:9999/1',
        ])
Пример #24
0
    def test_redis_multi_location_parsing(self):
        url = 'rediscache://host1:6379,host2:6379,host3:9999/1'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], REDIS_DRIVER)
        self.assertEqual(url['LOCATION'], [
            'redis://host1:6379/1',
            'redis://host2:6379/1',
            'redis://host3:9999/1',
        ])
Пример #25
0
    def test_options_parsing(self):
        url = "filecache:///var/tmp/django_cache?timeout=60&max_entries=1000&cull_frequency=0"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.filebased.FileBasedCache"
        )
        self.assertEqual(url["LOCATION"], "/var/tmp/django_cache")
        self.assertEqual(url["TIMEOUT"], 60)
        self.assertEqual(url["OPTIONS"], {"MAX_ENTRIES": 1000, "CULL_FREQUENCY": 0,})
Пример #26
0
    def test_memcache_multiple_parsing(self):
        url = "memcache://172.19.26.240:11211,172.19.26.242:11212"
        url = Env.cache_url_config(url)

        self.assertEqual(
            url["BACKEND"], "django.core.cache.backends.memcached.MemcachedCache"
        )
        self.assertEqual(
            url["LOCATION"], ["172.19.26.240:11211", "172.19.26.242:11212"]
        )
Пример #27
0
    def test_options_parsing(self):
        url = 'filecache:///var/tmp/django_cache?timeout=60&max_entries=1000&cull_frequency=0'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.filebased.FileBasedCache')
        self.assertEqual(url['LOCATION'], '/var/tmp/django_cache')
        self.assertEqual(url['TIMEOUT'], 60)
        self.assertEqual(url['OPTIONS'], {
            'MAX_ENTRIES': 1000,
            'CULL_FREQUENCY': 0,
        })
Пример #28
0
    def test_custom_backend(self):
        url = 'memcache://127.0.0.1:5400?foo=option&bars=9001'
        backend = 'django_redis.cache.RedisCache'
        url = Env.cache_url_config(url, backend)

        self.assertEqual(url['BACKEND'], backend)
        self.assertEqual(url['LOCATION'], '127.0.0.1:5400')
        self.assertEqual(url['OPTIONS'], {
            'FOO': 'option',
            'BARS': 9001,
        })
Пример #29
0
    def test_custom_backend(self):
        url = 'memcache://127.0.0.1:5400?foo=option&bars=9001'
        backend = 'django_redis.cache.RedisCache'
        url = Env.cache_url_config(url, backend)

        self.assertEqual(url['BACKEND'], backend)
        self.assertEqual(url['LOCATION'], '127.0.0.1:5400')
        self.assertEqual(url['OPTIONS'], {
            'FOO': 'option',
            'BARS': 9001,
        })
Пример #30
0
    def test_options_parsing(self):
        url = 'filecache:///var/tmp/django_cache?timeout=60&max_entries=1000&cull_frequency=0'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.filebased.FileBasedCache')
        self.assertEqual(url['LOCATION'], '/var/tmp/django_cache')
        self.assertEqual(url['TIMEOUT'], 60)
        self.assertEqual(url['OPTIONS'], {
            'MAX_ENTRIES': 1000,
            'CULL_FREQUENCY': 0,
        })
Пример #31
0
    def test_redis_parsing(self):
        url = "rediscache://127.0.0.1:6379/1?client_class=django_redis.client.DefaultClient&password=secret"
        url = Env.cache_url_config(url)

        self.assertEqual(url["BACKEND"], REDIS_DRIVER)
        self.assertEqual(url["LOCATION"], "redis://127.0.0.1:6379/1")
        self.assertEqual(
            url["OPTIONS"],
            {
                "CLIENT_CLASS": "django_redis.client.DefaultClient",
                "PASSWORD": "******",
            },
        )
Пример #32
0
 def test_redis_socket_parsing(self):
     url = 'rediscache:///path/to/socket:1'
     url = Env.cache_url_config(url)
     self.assertEqual(url['BACKEND'], 'django_redis.cache.RedisCache')
     self.assertEqual(url['LOCATION'], 'unix:/path/to/socket:1')
Пример #33
0
 def test_redis_with_password_parsing(self):
     url = "rediscache://:[email protected]:6379/0"
     url = Env.cache_url_config(url)
     self.assertEqual(REDIS_DRIVER, url["BACKEND"])
     self.assertEqual(url["LOCATION"], "redis://:[email protected]:6379/0")
Пример #34
0
    def test_memcache_socket_parsing(self):
        url = 'memcache:///tmp/memcached.sock'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.memcached.MemcachedCache')
        self.assertEqual(url['LOCATION'], 'unix:/tmp/memcached.sock')
Пример #35
0
    def test_filecache_parsing(self):
        url = 'filecache:///var/tmp/django_cache'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.filebased.FileBasedCache')
        self.assertEqual(url['LOCATION'], '/var/tmp/django_cache')
Пример #36
0
 def test_redis_with_password_parsing(self):
     url = 'rediscache://:[email protected]:6379/0'
     url = Env.cache_url_config(url)
     self.assertEqual(REDIS_DRIVER, url['BACKEND'])
     self.assertEqual(url['LOCATION'], 'redis://:[email protected]:6379/0')
Пример #37
0
    def test_dummycache_parsing(self):
        url = 'dummycache://'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.dummy.DummyCache')
        self.assertEqual(url['LOCATION'], '')
Пример #38
0
 def test_unknown_backend(self):
     url = "unknown-scheme://127.0.0.1:1000"
     with self.assertRaises(ImproperlyConfigured) as cm:
         Env.cache_url_config(url)
     self.assertEqual(str(cm.exception), "Invalid cache schema unknown-scheme")
Пример #39
0
    def test_memcache_multiple_parsing(self):
        url = 'memcache://172.19.26.240:11211,172.19.26.242:11212'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.memcached.MemcachedCache')
        self.assertEqual(url['LOCATION'], ['172.19.26.240:11211', '172.19.26.242:11212'])
Пример #40
0
 def test_redis_socket_url(self):
     url = "redis://:redispass@/path/to/socket.sock?db=0"
     url = Env.cache_url_config(url)
     self.assertEqual(REDIS_DRIVER, url["BACKEND"])
     self.assertEqual(url["LOCATION"], "unix://:redispass@/path/to/socket.sock")
     self.assertEqual(url["OPTIONS"], {"DB": 0})
Пример #41
0
    def test_rediss_parsing(self):
        url = "rediss://127.0.0.1:6379/1"
        url = Env.cache_url_config(url)

        self.assertEqual(url["BACKEND"], REDIS_DRIVER)
        self.assertEqual(url["LOCATION"], "rediss://127.0.0.1:6379/1")
Пример #42
0
    def test_filecache_windows_parsing(self):
        url = 'filecache://C:/foo/bar'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.filebased.FileBasedCache')
        self.assertEqual(url['LOCATION'], 'C:/foo/bar')
Пример #43
0
    def test_memcache_pylib_parsing(self):
        url = 'pymemcache://127.0.0.1:11211'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.memcached.PyLibMCCache')
        self.assertEqual(url['LOCATION'], '127.0.0.1:11211')
Пример #44
0
    def test_dbcache_parsing(self):
        url = 'dbcache://my_cache_table'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.db.DatabaseCache')
        self.assertEqual(url['LOCATION'], 'my_cache_table')
Пример #45
0
 def test_empty_url_is_mapped_to_empty_config(self):
     self.assertEqual(Env.cache_url_config(""), {})
     self.assertEqual(Env.cache_url_config(None), {})
Пример #46
0
    def test_locmem_named_parsing(self):
        url = 'locmemcache://unique-snowflake'
        url = Env.cache_url_config(url)

        self.assertEqual(url['BACKEND'], 'django.core.cache.backends.locmem.LocMemCache')
        self.assertEqual(url['LOCATION'], 'unique-snowflake')