Add brotlicffi support

This commit is contained in:
Laerte Pereira 2024-03-05 20:24:17 -03:00
parent bf149356fc
commit cab1016bb6
3 changed files with 31 additions and 7 deletions

View File

@ -6,6 +6,8 @@ from scrapy.exceptions import ScrapyDeprecationWarning
try:
import brotli
except ImportError:
import brotlicffi as brotli
except ImportError:
pass
else:

View File

@ -130,7 +130,10 @@ class HttpCompressionTest(TestCase):
def test_process_response_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
response = self._getresponse("br")
@ -448,7 +451,10 @@ class HttpCompressionTest(TestCase):
def test_compression_bomb_setting_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
self._test_compression_bomb_setting("br")
@ -486,7 +492,10 @@ class HttpCompressionTest(TestCase):
def test_compression_bomb_spider_attr_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
self._test_compression_bomb_spider_attr("br")
@ -522,7 +531,10 @@ class HttpCompressionTest(TestCase):
def test_compression_bomb_request_meta_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
self._test_compression_bomb_request_meta("br")
@ -568,7 +580,10 @@ class HttpCompressionTest(TestCase):
def test_download_warnsize_setting_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
self._test_download_warnsize_setting("br")
@ -616,7 +631,10 @@ class HttpCompressionTest(TestCase):
def test_download_warnsize_spider_attr_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
self._test_download_warnsize_spider_attr("br")
@ -662,7 +680,10 @@ class HttpCompressionTest(TestCase):
def test_download_warnsize_request_meta_br(self):
try:
import brotli # noqa: F401
try:
import brotli # noqa: F401
except ImportError:
import brotlicffi # noqa: F401
except ImportError:
raise SkipTest("no brotli")
self._test_download_warnsize_request_meta("br")

View File

@ -162,6 +162,7 @@ basepython = {[testenv:pypy3]basepython}
deps =
{[pinned]deps}
PyPyDispatcher==2.1.0
brotlicffi
commands =
pytest --durations=10 scrapy tests
install_command = {[pinned]install_command}