diff --git a/.circleci/config.yml b/.circleci/config.yml index 8602798..eb1ff41 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -33,6 +33,7 @@ common: &common - python/pip-run-tests: name: python36 image: cimg/python:3.6 + extra_packages: "'sybil<3' 'pytest<7'" - python/pip-run-tests: name: python39 image: cimg/python:3.9 diff --git a/docs/conftest.py b/docs/conftest.py index ef79733..d1dcfc7 100644 --- a/docs/conftest.py +++ b/docs/conftest.py @@ -1,8 +1,16 @@ from doctest import REPORT_NDIFF, ELLIPSIS from sybil import Sybil -from sybil.parsers.doctest import DocTestParser, FIX_BYTE_UNICODE_REPR -from sybil.parsers.codeblock import CodeBlockParser +from sybil.parsers.doctest import DocTestParser +try: + from sybil.parsers.doctest import FIX_BYTE_UNICODE_REPR +except ImportError: + # sybil 3 removed the optionflag + FIX_BYTE_UNICODE_REPR = 0 +try: + from sybil.parsers.codeblock import PythonCodeBlockParser +except ImportError: + from sybil.parsers.codeblock import CodeBlockParser as PythonCodeBlockParser from sybil.parsers.capture import parse_captures from testfixtures.compat import PY3 @@ -13,7 +21,7 @@ pytest_collect_file = Sybil( parsers=[ DocTestParser(optionflags=REPORT_NDIFF|ELLIPSIS|FIX_BYTE_UNICODE_REPR), - CodeBlockParser(['print_function']), + PythonCodeBlockParser(['print_function']), parse_captures, FileParser('tempdir'), ], diff --git a/docs/django.txt b/docs/django.txt index 2f289fe..01419b4 100755 --- a/docs/django.txt +++ b/docs/django.txt @@ -23,7 +23,7 @@ Traceback (most recent call last): AssertionError: SampleModel not as expected: same: -[u'id'] +['id'] values differ: 'value': 1 != 2 @@ -38,7 +38,7 @@ Traceback (most recent call last): AssertionError: SampleModel not as expected: same: -[u'id'] +['id'] values differ: 'value': 1 != 2 @@ -70,7 +70,7 @@ Traceback (most recent call last): AssertionError: SampleModel not as expected: same: -['created', u'id', 'value'] +['created', 'id', 'value'] values differ: 'not_editable': 1 != 2 diff --git a/setup.py b/setup.py index 02d6666..ceae0fa 100644 --- a/setup.py +++ b/setup.py @@ -13,7 +13,7 @@ 'zope.component', 'django<2;python_version<"3"', 'django;python_version>="3"', - 'sybil<3', + 'sybil', 'twisted' ] diff --git a/testfixtures/tests/conftest.py b/testfixtures/tests/conftest.py index 97036fb..2046d88 100644 --- a/testfixtures/tests/conftest.py +++ b/testfixtures/tests/conftest.py @@ -1,6 +1,10 @@ from sybil import Sybil from sybil.parsers.doctest import DocTestParser -from sybil.parsers.codeblock import CodeBlockParser +try: + from sybil.parsers.codeblock import PythonCodeBlockParser +except ImportError: + # sybil < 3 has it under the old name + from sybil.parsers.codeblock import CodeBlockParser as PythonCodeBlockParser from sybil.parsers.capture import parse_captures from testfixtures import TempDirectory @@ -18,7 +22,7 @@ def sybil_teardown(namespace): pytest_collect_file = Sybil( parsers=[ DocTestParser(), - CodeBlockParser(), + PythonCodeBlockParser(), parse_captures, FileParser('tempdir'), ],