296
296
self.wt = self.make_branch_and_tree('.')
297
297
self.overrideAttr(osutils, 'normalized_filename')
299
def test_requires_normalized_unicode_filenames_fails_on_unnormalized(self):
300
"""Adding unnormalized unicode filenames fail if and only if the
301
workingtree format has the requires_normalized_unicode_filenames flag
304
osutils.normalized_filename = osutils._accessible_normalized_filename
305
if self.workingtree_format.requires_normalized_unicode_filenames:
307
errors.NoSuchFile, self.wt.smart_add, [u'a\u030a'])
309
self.wt.smart_add([u'a\u030a'])
299
311
def test_accessible_explicit(self):
300
312
osutils.normalized_filename = osutils._accessible_normalized_filename
301
313
if self.workingtree_format.requires_normalized_unicode_filenames:
303
'Working tree format smart_add requires normalized unicode filenames',
304
self.assertRaises, errors.NoSuchFile,
305
self.wt.smart_add, [u'a\u030a'])
307
self.wt.smart_add([u'a\u030a'])
314
raise tests.TestNotApplicable(
315
'Working tree format smart_add requires normalized unicode '
317
self.wt.smart_add([u'a\u030a'])
308
318
self.wt.lock_read()
309
319
self.addCleanup(self.wt.unlock)
310
320
self.assertEqual([('', 'directory'), (u'\xe5', 'file')],
314
324
def test_accessible_implicit(self):
315
325
osutils.normalized_filename = osutils._accessible_normalized_filename
316
326
if self.workingtree_format.requires_normalized_unicode_filenames:
318
'Working tree format smart_add requires normalized unicode filenames',
319
self.assertRaises, errors.NoSuchFile,
320
self.wt.smart_add, [])
322
self.wt.smart_add([])
327
raise tests.TestNotApplicable(
328
'Working tree format smart_add requires normalized unicode '
330
self.wt.smart_add([])
323
331
self.wt.lock_read()
324
332
self.addCleanup(self.wt.unlock)
325
333
self.assertEqual([('', 'directory'), (u'\xe5', 'file')],