##// END OF EJS Templates
There's no need to use special env variable for config file, it's already passed in in extras now
There's no need to use special env variable for config file, it's already passed in in extras now

File last commit:

r2451:402a96fc beta
r2870:cbf0775f beta
Show More
test_tags.py
61 lines | 2.0 KiB | text/x-python | PythonLexer
Added vcs testsuite for better integration tests + added fetching...
r2451 from __future__ import with_statement
from base import BackendTestMixin
from conf import SCM_TESTS
from rhodecode.lib.vcs.exceptions import TagAlreadyExistError
from rhodecode.lib.vcs.exceptions import TagDoesNotExistError
from rhodecode.lib.vcs.utils.compat import unittest
class TagsTestCaseMixin(BackendTestMixin):
def test_new_tag(self):
tip = self.repo.get_changeset()
tagsize = len(self.repo.tags)
tag = self.repo.tag('last-commit', 'joe', tip.raw_id)
self.assertEqual(len(self.repo.tags), tagsize + 1)
for top, dirs, files in tip.walk():
self.assertEqual(top, tag.get_node(top.path))
def test_tag_already_exist(self):
tip = self.repo.get_changeset()
self.repo.tag('last-commit', 'joe', tip.raw_id)
self.assertRaises(TagAlreadyExistError,
self.repo.tag, 'last-commit', 'joe', tip.raw_id)
chset = self.repo.get_changeset(0)
self.assertRaises(TagAlreadyExistError,
self.repo.tag, 'last-commit', 'jane', chset.raw_id)
def test_remove_tag(self):
tip = self.repo.get_changeset()
self.repo.tag('last-commit', 'joe', tip.raw_id)
tagsize = len(self.repo.tags)
self.repo.remove_tag('last-commit', user='evil joe')
self.assertEqual(len(self.repo.tags), tagsize - 1)
def test_remove_tag_which_does_not_exist(self):
self.assertRaises(TagDoesNotExistError,
self.repo.remove_tag, 'last-commit', user='evil joe')
def test_name_with_slash(self):
self.repo.tag('19/10/11', 'joe')
self.assertTrue('19/10/11' in self.repo.tags)
self.repo.tag('11', 'joe')
self.assertTrue('11' in self.repo.tags)
# For each backend create test case class
for alias in SCM_TESTS:
attrs = {
'backend_alias': alias,
}
cls_name = ''.join(('%s tags test' % alias).title().split())
bases = (TagsTestCaseMixin, unittest.TestCase)
globals()[cls_name] = type(cls_name, bases, attrs)
if __name__ == '__main__':
unittest.main()