##// END OF EJS Templates
revision extraction function shouldn't be so eager, just extract commits that are...
revision extraction function shouldn't be so eager, just extract commits that are surrounded with spaces, or they are at beginning of the whole string - wrote tests for that - used parametrized for other tests

File last commit:

r2451:402a96fc beta
r3385:d21c762f beta
Show More
test_filenodes_unicode_path.py
49 lines | 1.2 KiB | text/x-python | PythonLexer
/ rhodecode / tests / vcs / test_filenodes_unicode_path.py
# encoding: utf8
from __future__ import with_statement
import datetime
from rhodecode.lib.vcs.nodes import FileNode
from rhodecode.lib.vcs.utils.compat import unittest
from test_inmemchangesets import BackendBaseTestCase
from conf import SCM_TESTS
class FileNodeUnicodePathTestsMixin(object):
fname = 'ąśðąęłąć.txt'
ufname = (fname).decode('utf-8')
def get_commits(self):
self.nodes = [
FileNode(self.fname, content='Foobar'),
]
commits = [
{
'message': 'Initial commit',
'author': 'Joe Doe <joe.doe@example.com>',
'date': datetime.datetime(2010, 1, 1, 20),
'added': self.nodes,
},
]
return commits
def test_filenode_path(self):
node = self.tip.get_node(self.fname)
unode = self.tip.get_node(self.ufname)
self.assertEqual(node, unode)
for alias in SCM_TESTS:
attrs = {
'backend_alias': alias,
}
cls_name = ''.join(('%s file node unicode path test' % alias).title()
.split())
bases = (FileNodeUnicodePathTestsMixin, BackendBaseTestCase)
globals()[cls_name] = type(cls_name, bases, attrs)
if __name__ == '__main__':
unittest.main()