duplicity-talk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Duplicity-talk] Failure running tests.


From: Scott Hannahs
Subject: Re: [Duplicity-talk] Failure running tests.
Date: Mon, 2 Sep 2019 16:57:21 -0400

I am going to reply to my own message.. :-)  Most of the errors were due to my not reading my own build notes. :-(  I have run the tests again and seem to have several errors due to unicode issues which was the big advantage of moving to duplicity 8.  I am down to 17 errors and 3 warnings:
======== 17 failed, 409 passed, 2 skipped, 3 warnings in 894.00 seconds ========


These two errors have me stumped not being a python or unicode expert.  os.py looks reasonable to me and should return a string or path.
b'  File "/sw/src/fink.build/duplicity-0.8.04-1/duplicity-0.8.04/duplicity/path.py", line 476, in <lambda>'
b'    util.maybe_ignore_errors(lambda: os.chown(other.name, self.stat.st_uid, self.stat.st_gid))'
b"PermissionError: [Errno 1] Operation not permitted: b'testfiles/cache/3f6f90580e457c90e7202bc33cd9e363/duplicity-full-signatures.19700102T034640Z.sigtar.gz'"
b'During handling of the above exception, another exception occurred:'
b'Traceback (most recent call last):'
b'  File "../bin/duplicity", line 157, in <module>'
b'    if u"Forced assertion for testing" in util.uexc(e):'
b'  File "/sw/src/fink.build/duplicity-0.8.04-1/duplicity-0.8.04/duplicity/util.py", line 120, in uexc'
b'    return fsdecode(m)'
b'  File "/sw/lib/python3.7/os.py", line 821, in fsdecode'
b'    filename = fspath(filename)  # Does type-checking of `filename`.'
b'TypeError: expected str, bytes or os.PathLike object, not int'
...return_val: 1

So there is a permission error which may be normal since the testing is done in a non-admin account and cannot chown files.  But then there is a secondary error where fsdecode fails.  It looks like os.py does return the path and not an int but someone thinks it is getting a wrong type.

The other errors are also unicode related.
________________ TestUnicode.test_unicode_paths_square_brackets ________________

self = <testing.functional.test_selection.TestUnicode testMethod=test_unicode_paths_square_brackets>

    def test_unicode_paths_square_brackets(self):
        u""" Test --include and --exclude work with unicode paths with character options in []s and [!]s"""
        p = u"testfiles/select-unicode/"
        self.backup(u"full", u"testfiles/select-unicode",
                    options=[u"--exclude", p + u"прыклад/пример/例/Παράδειγμα/उदाहरण.txt",
                             u"--exclude", p + u"пры[к,и,р]лад/пример/例/Παράδειγμα/דוגמא.txt",
                             u"--exclude", p + u"прыклад/пр[!a,b,c]мер/例/მაგალითი/",
                             u"--include", p + u"прыклад/при[g,м,д]ер/例/",
                             u"--exclude", p + u"прыклад/пример/",
                             u"--include", p + u"прыклад/",
                             u"--include", p + u"օրինակ.txt",
                             u"--exclude", p + u"**"])
        self.restore()
        restore_dir = u"testfiles/restore_out"
        restored = self.directory_tree_to_list_of_lists(restore_dir)
        self.assertEqual(restored, [[u"прыклад", u"օրինակ.txt"],
>                                   [u"пример", u"উদাহরণ"], [u"例"], [u"Παράδειγμα"], [u"ઉદાહરણ.log"]])
E       AssertionError: Lists differ: [['пр[48 chars]'], ['Παράδειγμα'], ['דוגמא.txt', 'उदाहरण.txt', 'ઉદાહરણ.log']] != [['пр[48 chars]'], ['Παράδειγμα'], ['ઉદાહરણ.log']]
E       
E       First differing element 3:
E       ['Παράδειγμα']
E       ['Παράδειγμα']
E       
E         [['прыклад', 'օրինակ.txt'],
E          ['пример', 'উদাহরণ'],
E          ['例'],
E       -  ['Παράδειγμα'],
E       ?       ^^
E       
E       +  ['Παράδειγμα'],
E       ?       ^
E       
E       -  ['דוגמא.txt', 'उदाहरण.txt', 'ઉદાહરણ.log']]
E       +  ['ઉદાહરણ.log']]
The strings that are listed as different (element 3) but I am not quite sure what the issue is.  Unicode should be completely cross platform…  That is the point! :-)

-Scott


On Sep 1, 2019, at 5:49 PM, Scott Hannahs via Duplicity-talk <address@hidden> wrote:

Duplicity wizards,

I think I have successfully build duplicity version 0.8.04 on Mac OS X (python 3.7 and Mac OS X 10.11).  This was upgrading from my previous installation using python 2.7.

However the testing phase seems to fail  a  lot of tests.  The first group I understand since there is no tahoe backend installed.  I can live with that and will get around to adding backend support later.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]