diff --git a/testing/functional/test_final.py b/testing/functional/test_final.py index ce285540..ac79280f 100644 --- a/testing/functional/test_final.py +++ b/testing/functional/test_final.py @@ -1,3 +1,4 @@ +# -*- coding: utf-8 -*- # -*- Mode:Python; indent-tabs-mode:nil; tab-width:4 -*- # # Copyright 2002 Ben Escoto @@ -61,7 +62,8 @@ class FinalTest(FunctionalTestCase): u"""Run backup/restore test on basic directories""" self.runtest([u"testfiles/dir1", u"testfiles/dir2", - u"testfiles/dir3"], + u"testfiles/dir3", + u"testfiles/select-unicode"], backup_options=backup_options, restore_options=restore_options) @@ -69,7 +71,8 @@ class FinalTest(FunctionalTestCase): for filename, time, dir in [(u'symbolic_link', 99999, u'dir1'), (u'directory_to_file', 100100, u'dir1'), (u'directory_to_file', 200100, u'dir2'), - (u'largefile', 300000, u'dir3')]: + (u'largefile', 300000, u'dir3'), + (u"näide.txt", 0, u"прыклад/пример")]: self.restore(filename, time, options=restore_options) self.check_same(u'testfiles/%s/%s' % (dir, filename), u'testfiles/restore_out') diff --git a/testing/functional/test_selection.py b/testing/functional/test_selection.py index 91f7d7bc..66a6c94c 100644 --- a/testing/functional/test_selection.py +++ b/testing/functional/test_selection.py @@ -946,6 +946,19 @@ class TestExcludeIfPresent(IncludeExcludeFunctionalTest): self.assertEqual(restored, [[u"1sub1sub1"], [u".nobackup", u"1sub1sub1_file.txt"]]) + def test_exclude_if_present_baseline_uni(self): + u""" Test that duplicity normally backs up files with unicode filenames""" + with io.open(u"testfiles/select-unicode/прыклад/пример/例/.nobackup", u"w") as tag: + tag.write(u"Files in this folder should not be backed up.") + self.backup(u"full", u"testfiles/select-unicode/прыклад/пример/例", + options=[u"--include", u"testfiles/select-unicode/прыклад/пример/例/Παράδειγμα/*", + u"--exclude", u"**"]) + self.restore() + restore_dir = u"testfiles/restore_out" + restored = self.directory_tree_to_list_of_lists(restore_dir) + self.assertEqual(restored, [[u"例"], + [u".nobackup", u"דוגמא.txt", u"उदाहरण.txt", u"ઉદાહરણ.log"]]) + def test_exclude_if_present_excludes(self): u""" Test that duplicity excludes files with relevant tag""" with io.open(u"testfiles/select2/1/1sub1/1sub1sub1/.nobackup", u"w") as tag: