как исправить ошибку теста мезонинного модуля?

Когда я запускаю свой модульный тест, я получаю эту ошибку:

FAIL: test_syntax (mezzanine.core.tests.Tests)

Traceback (последний последний вызов):

Файл "/Users/taylor/aco/lib/python2.7/site-packages/mezzanine/core/tests.py", строка 459, в test_syntax

self.fail("Синтаксические предупреждения!\n\n%s" % "\n".join(предупреждения)) AssertionError: Синтаксические предупреждения!

mezzanine/core/models.py:340: понимание списка переопределяет «имя» из строки 331

Это единственная ошибка, которую я получаю, когда запускаю свои модульные тесты, и я искал везде, чтобы выяснить, как исправить эту ошибку, но я не нашел ничего полезного. Может кто-нибудь объяснить мне, что здесь происходит и как я могу это исправить?


person taylor    schedule 11.02.2013    source источник


Ответы (1)


Я предполагаю, что вы используете Mezzanine 1.3.0, текущую стабильную версию. В текущей основной ветке на github такой проблемы нет. Я только что установил, выполнил следующее:

$ pip install git+https://github.com/stephenmcd/mezzanine.git#egg=Mezzanine
$ mezzanine-project project
$ python project/manage.py test
Creating test database for alias 'default'...
.................................................................................
.................................................................................
.................................................................................
...............................s......s..................................s.......
................................................................
----------------------------------------------------------------------
Ran 388 tests in 30.556s

OK (skipped=3)
Destroying test database for alias 'default'...

Что бы это ни стоило, метод test_syntax, который терпит неудачу в 1.3.0, запускает тесты с модулями Python pyflakes.Checker и pep8. В файле mezzanine/core/models.py были (есть?) синтаксические ошибки. Краткий просмотр коммитов показывает, что test_syntax не измененный. Конкретный синтаксис, который выдавал ошибку, находится в mezzanine.core.models.Orderable. with_respect_to, в котором нет ни ошибок PEP8, ни ошибок pyflakes. Когда я запускаю pyflakes против версии 1.3.0 mezzanine.core.models:

$ pyflakes ../lib/python2.6/site-packages/mezzanine/core/models.py
../lib/python2.6/site-packages/mezzanine/core/models.py:340: list comprehension
redefines 'name' from line 331
person ken    schedule 14.02.2013