##// END OF EJS Templates
use safe get on copy mode since for git we don't have this implemented
use safe get on copy mode since for git we don't have this implemented

File last commit:

r3797:d7488551 beta
r4013:d9a73bfc default
Show More
test_filenodes_unicode_path.py
49 lines | 1.3 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 rhodecode.tests.vcs.test_inmemchangesets import BackendBaseTestCase
from rhodecode.tests.vcs.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()