From 7ca24338efa6f3b0ba01f8933bf5d4618f5e46b0 Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Mon, 27 Jul 2020 11:32:39 +0200 Subject: [PATCH 1/4] test: Add rq 1.5 to test matrix --- tox.ini | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tox.ini b/tox.ini index c966a72433..2bcaa3a7fb 100644 --- a/tox.ini +++ b/tox.ini @@ -48,7 +48,7 @@ envlist = {pypy,py2.7,py3.5,py3.6}-rq-{0.6,0.7,0.8,0.9,0.10,0.11} {pypy,py2.7,py3.5,py3.6,py3.7,py3.8}-rq-{0.12,0.13,1.0,1.1,1.2,1.3} - {py3.5,py3.6,py3.7,py3.8}-rq-1.4 + {py3.5,py3.6,py3.7,py3.8}-rq-{1.4,1.5} py3.7-aiohttp-3.5 {py3.7,py3.8}-aiohttp-3.6 @@ -139,7 +139,7 @@ deps = # https://github.com/jamesls/fakeredis/issues/245 rq-{0.6,0.7,0.8,0.9,0.10,0.11,0.12}: fakeredis<1.0 rq-{0.6,0.7,0.8,0.9,0.10,0.11,0.12}: redis<3.2.2 - rq-{0.13,1.0,1.1,1.2,1.3,1.4}: fakeredis>=1.0 + rq-{0.13,1.0,1.1,1.2,1.3,1.4,1.5}: fakeredis>=1.0 rq-0.6: rq>=0.6,<0.7 rq-0.7: rq>=0.7,<0.8 @@ -154,6 +154,7 @@ deps = rq-1.2: rq>=1.2,<1.3 rq-1.3: rq>=1.3,<1.4 rq-1.4: rq>=1.4,<1.5 + rq-1.5: rq>=1.5,<1.6 aiohttp-3.4: aiohttp>=3.4.0,<3.5.0 aiohttp-3.5: aiohttp>=3.5.0,<3.6.0 From 0d661674ff266fdbf4ac3b97ae7a346b419574a7 Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Mon, 27 Jul 2020 14:52:58 +0200 Subject: [PATCH 2/4] monkeypatch rq --- tests/integrations/rq/test_rq.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/integrations/rq/test_rq.py b/tests/integrations/rq/test_rq.py index 35832ffedf..aa8f0d588f 100644 --- a/tests/integrations/rq/test_rq.py +++ b/tests/integrations/rq/test_rq.py @@ -1,9 +1,25 @@ from sentry_sdk.integrations.rq import RqIntegration +import pytest + from fakeredis import FakeStrictRedis import rq +@pytest.fixture(autouse=True) +def _patch_rq_get_server_version(monkeypatch): + """ + Patch up RQ 1.5 to work with fakeredis. + + https://github.com/jamesls/fakeredis/issues/273 + """ + + from distutils.version import StrictVersion + + for k in "rq.job.Job.get_redis_server_version", "rq.worker.Worker.get_redis_server_version": + monkeypatch.setattr(k, lambda _: StrictVersion("4.0.0")) + + def crashing_job(foo): 1 / 0 From 45d233ac025083009c3262b403c1a6cbecee761f Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Mon, 27 Jul 2020 16:03:45 +0200 Subject: [PATCH 3/4] only patch on rq 1.5 --- tests/integrations/rq/test_rq.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/integrations/rq/test_rq.py b/tests/integrations/rq/test_rq.py index aa8f0d588f..7310b029ec 100644 --- a/tests/integrations/rq/test_rq.py +++ b/tests/integrations/rq/test_rq.py @@ -16,8 +16,9 @@ def _patch_rq_get_server_version(monkeypatch): from distutils.version import StrictVersion - for k in "rq.job.Job.get_redis_server_version", "rq.worker.Worker.get_redis_server_version": - monkeypatch.setattr(k, lambda _: StrictVersion("4.0.0")) + if tuple(map(int, rq.VERSION.split("."))) >= (1, 5): + for k in "rq.job.Job.get_redis_server_version", "rq.worker.Worker.get_redis_server_version": + monkeypatch.setattr(k, lambda _: StrictVersion("4.0.0")) def crashing_job(foo): From 9d4d72a6eeda4dff2b2dd538c0246f83414f0e7a Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Mon, 27 Jul 2020 17:59:56 +0200 Subject: [PATCH 4/4] fix formatting --- tests/integrations/rq/test_rq.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/integrations/rq/test_rq.py b/tests/integrations/rq/test_rq.py index 7310b029ec..b98b6be7c3 100644 --- a/tests/integrations/rq/test_rq.py +++ b/tests/integrations/rq/test_rq.py @@ -17,7 +17,10 @@ def _patch_rq_get_server_version(monkeypatch): from distutils.version import StrictVersion if tuple(map(int, rq.VERSION.split("."))) >= (1, 5): - for k in "rq.job.Job.get_redis_server_version", "rq.worker.Worker.get_redis_server_version": + for k in ( + "rq.job.Job.get_redis_server_version", + "rq.worker.Worker.get_redis_server_version", + ): monkeypatch.setattr(k, lambda _: StrictVersion("4.0.0"))