def test_repo_get_unicode_ref(self): factory = RepoFactory(self.repo_store) commit_oid = factory.add_commit('foo', 'foobar.txt') tag_name = u'☃'.encode('utf-8') tag_message = u'☃'.encode('utf-8') factory.add_tag(tag_name, tag_message, commit_oid) tag = 'refs/tags/{}'.format(tag_name) resp = self.get_ref(tag) self.assertTrue(tag.decode('utf-8') in resp)
def test_allow_unicode_refs(self): """Ensure unicode refs are included in ref collection.""" factory = RepoFactory(self.repo_store) commit_oid = factory.add_commit('foo', 'foobar.txt') tag = u'おいしいイカ'.encode('utf-8') tag_message = u'かわいい タコ'.encode('utf-8') factory.add_tag(tag, tag_message, commit_oid) resp = self.app.get('/repo/{}/refs'.format(self.repo_path)) refs = resp.json self.assertEqual(2, len(refs.keys()))
def test_ignore_non_unicode_refs(self): """Ensure non-unicode refs are dropped from ref collection.""" factory = RepoFactory(self.repo_store) commit_oid = factory.add_commit('foo', 'foobar.txt') tag = '\xe9\xe9\xe9' # latin-1 tag_message = 'tag message' factory.add_tag(tag, tag_message, commit_oid) resp = self.app.get('/repo/{}/refs'.format(self.repo_path)) refs = resp.json self.assertEqual(1, len(refs.keys()))