Revision 61f0aa75
Added by koszko over 1 year ago
conftest.py | ||
---|---|---|
7 | 7 |
import sys |
8 | 8 |
from pathlib import Path |
9 | 9 |
|
10 |
import pytest |
|
11 |
|
|
10 | 12 |
here = Path(__file__).resolve().parent |
11 | 13 |
sys.path.insert(0, str(here / 'src')) |
14 |
|
|
15 |
@pytest.fixture(autouse=True) |
|
16 |
def no_requests(monkeypatch): |
|
17 |
"""Remove requests.sessions.Session.request for all tests.""" |
|
18 |
monkeypatch.delattr('requests.sessions.Session.request') |
|
19 |
|
|
20 |
@pytest.fixture |
|
21 |
def mock_subprocess_run(monkeypatch, request): |
|
22 |
""" |
|
23 |
Temporarily replace subprocess.run() with a function supplied through pytest |
|
24 |
marker 'subprocess_run'. |
|
25 |
|
|
26 |
The marker excepts 2 arguments: |
|
27 |
* the module inside which the subprocess attribute should be mocked and |
|
28 |
* a run() function to use. |
|
29 |
""" |
|
30 |
where, mocked_run = request.node.get_closest_marker('subprocess_run').args |
|
31 |
|
|
32 |
class MockedSubprocess: |
|
33 |
"""Minimal mocked version of the subprocess module.""" |
|
34 |
run = mocked_run |
|
35 |
|
|
36 |
monkeypatch.setattr(where, 'subprocess', MockedSubprocess) |
Also available in: Unified diff
support piggybacking on APT packages