示例#1
0
 def test_both_cache_and_purge(self):
     key_maker = origin.key_maker_factory(
         cache_keys=["foo", "foo/{obj.attr}"],
         purge_keys=["bar", "bar/{obj.attr}"],
     )
     assert key_maker(pretend.stub(attr="bar")) == origin.CacheKeys(
         cache=["foo", "foo/bar"],
         purge=["bar", "bar/bar"],
     )
示例#2
0
 def test_only_purge(self):
     key_maker = origin.key_maker_factory(
         cache_keys=None,
         purge_keys=["bar", "bar/{obj.attr}"],
     )
     assert key_maker(pretend.stub(attr="bar")) == origin.CacheKeys(
         cache=[],
         purge=["bar", "bar/bar"],
     )
示例#3
0
 def test_both_cache_and_purge(self):
     key_maker = origin.key_maker_factory(
         cache_keys=["foo", "foo/{obj.attr}"],
         purge_keys=["bar", "bar/{obj.attr}"],
     )
     assert key_maker(pretend.stub(attr="bar")) == origin.CacheKeys(
         cache=["foo", "foo/bar"],
         purge=["bar", "bar/bar"],
     )
示例#4
0
 def test_only_purge(self):
     key_maker = origin.key_maker_factory(
         cache_keys=None,
         purge_keys=["bar", "bar/{obj.attr}"],
     )
     assert key_maker(pretend.stub(attr="bar")) == origin.CacheKeys(
         cache=[],
         purge=["bar", "bar/bar"],
     )
示例#5
0
    def test_only_cache(self):
        key_maker = origin.key_maker_factory(
            cache_keys=["foo", "foo/{obj.attr}"], purge_keys=None
        )
        cache_keys = key_maker(pretend.stub(attr="bar"))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == ["foo", "foo/bar"]
        assert list(cache_keys.purge) == []
示例#6
0
    def test_only_cache(self):
        key_maker = origin.key_maker_factory(
            cache_keys=["foo", "foo/{obj.attr}"], purge_keys=None
        )
        cache_keys = key_maker(pretend.stub(attr="bar"))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == ["foo", "foo/bar"]
        assert list(cache_keys.purge) == []
示例#7
0
    def test_iterate_on(self):
        key_maker = origin.key_maker_factory(
            cache_keys=["foo"],  # Intentionally does not support `iterate_on`
            purge_keys=[
                origin.key_factory("bar"),
                origin.key_factory("bar/{itr}", iterate_on="iterate_me"),
            ],
        )
        cache_keys = key_maker(pretend.stub(iterate_me=["biz", "baz"]))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == ["foo"]
        assert list(cache_keys.purge) == ["bar", "bar/biz", "bar/baz"]
示例#8
0
    def test_only_purge(self):
        key_maker = origin.key_maker_factory(
            cache_keys=None,
            purge_keys=[
                origin.key_factory("bar"),
                origin.key_factory("bar/{obj.attr}"),
            ],
        )
        cache_keys = key_maker(pretend.stub(attr="bar"))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == []
        assert list(cache_keys.purge) == ["bar", "bar/bar"]
示例#9
0
    def test_iterate_on(self):
        key_maker = origin.key_maker_factory(
            cache_keys=['foo'],  # Intentionally does not support `iterate_on`
            purge_keys=[
                origin.key_factory('bar'),
                origin.key_factory('bar/{itr}', iterate_on='iterate_me'),
            ],
        )
        cache_keys = key_maker(pretend.stub(iterate_me=['biz', 'baz']))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == ['foo']
        assert list(cache_keys.purge) == ['bar', 'bar/biz', 'bar/baz']
示例#10
0
    def test_only_purge(self):
        key_maker = origin.key_maker_factory(
            cache_keys=None,
            purge_keys=[
                origin.key_factory("bar"),
                origin.key_factory("bar/{obj.attr}"),
            ],
        )
        cache_keys = key_maker(pretend.stub(attr="bar"))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == []
        assert list(cache_keys.purge) == ["bar", "bar/bar"]
示例#11
0
    def test_iterate_on(self):
        key_maker = origin.key_maker_factory(
            cache_keys=["foo"],  # Intentionally does not support `iterate_on`
            purge_keys=[
                origin.key_factory("bar"),
                origin.key_factory("bar/{itr}", iterate_on="iterate_me"),
            ],
        )
        cache_keys = key_maker(pretend.stub(iterate_me=["biz", "baz"]))

        assert isinstance(cache_keys, origin.CacheKeys)
        assert cache_keys.cache == ["foo"]
        assert list(cache_keys.purge) == ["bar", "bar/biz", "bar/baz"]
示例#12
0
def test_key_maker():
    key_maker = origin.key_maker_factory(["foo", "foo/{obj.attr}"])
    assert key_maker(pretend.stub(attr="bar")) == ["foo", "foo/bar"]
示例#13
0
def test_key_maker():
    key_maker = origin.key_maker_factory(["foo", "foo/{obj.attr}"])
    assert key_maker(pretend.stub(attr="bar")) == ["foo", "foo/bar"]