Example #1
0
File: client.py Project: sloria/sir
 async def user_repos(self, username: str, sort: str='pushed'):
     cache_key = get_cache_key('user_repos', {
         'username': username,
         'sort': sort
     })
     return await self.make_request(
         '/users/{username}/repos'.format(username=username),
         params={'sort': sort},
         cache_key=cache_key
     )
Example #2
0
File: client.py Project: sloria/sir
 async def compare(self, username: str, repo: str, base: str, head='HEAD'):
     cache_key = get_cache_key('compare', {
         'username': username,
         'repo': repo,
         'base': base,
         'head': head,
     })
     return await self.make_request(
         '/repos/{username}/{repo}/compare/{base}...{head}'.format(**locals()),
         cache_key=cache_key
     )
Example #3
0
File: client.py Project: sloria/sir
 async def repo_tags(self, username: str, repo: str):
     cache_key = get_cache_key('repo_tags', {
         'username': username,
         'repo': repo
     })
     return await self.make_request(
         '/repos/{username}/{repo}/tags'.format(
             username=username, repo=repo
         ),
         cache_key=cache_key
     )
Example #4
0
def test_get_cache_key():
    assert get_cache_key('foo', {'bar': 42}) == get_cache_key('foo', {'bar': 42})
    assert get_cache_key('foo', {}) == get_cache_key('foo', {})

    assert(
        get_cache_key('foo', {'a': 1, 'b': 2, 'c': 3, 'd': 4}) ==
        get_cache_key('foo', {'b': 2, 'a': 1, 'c': 3, 'd': 4})
    )

    assert get_cache_key('foo', {}) != get_cache_key('boo', {})
    assert get_cache_key('foo', {'a': 1}) != get_cache_key('foo', {'a': 2})
    assert get_cache_key('foo', {'a': 1}) != get_cache_key('foo', {'b': 1})