Пирамида WebTest не ловит ContextualVersionConflict - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть пирамида 1.10, которую я начинаю с pserve. Когда я запускаю приложение, оно вылетает с

File "/home/cquiros/data/projects2017/personal/software/env_formshare/lib/python3.6/site-packages/pkg_resources/__init__.py", line 783, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (protobuf 3.11.3 (/home/cquiros/data/projects2017/personal/software/env_formshare/lib/python3.6/site-packages), Requirement.parse('protobuf==3.6.1'), {'mysql-connector-python'})

Однако, если я запускаю проверки WebTest с этим кодом, об ошибках не сообщается:

class FunctionalTests(unittest.TestCase):
    def setUp(self):
        from .config import server_config
        from formshare import main
        app = main(None, **server_config)
        from webtest import TestApp
        self.testapp = TestApp(app)

Я вижу, что TestApp использует paste.deploy .loadapp, почему тест не сообщает об ошибке ContextualVersionConflict?

1 Ответ

0 голосов
/ 10 апреля 2020

Я просто добавил pkg_resources.require ("my_app") к тестам, чтобы поймать его.

...