##// END OF EJS Templates
Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers...
Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers can break badly. We need to create Repo() objects always for each call, even when it's taken from cache. Fixed issue with dulwich filedescriptor leak ref #573

File last commit:

r2451:402a96fc beta
r3043:b61824e6 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()