• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mindflayer / python-mocket / 8680627292

14 Apr 2024 05:23PM UTC coverage: 98.814% (+0.003%) from 98.811%
8680627292

Pull #228

github

Giorgio Salluzzo
Add getblocking() method.
Pull Request #228: Add getblocking() method

2 of 2 new or added lines in 1 file covered. (100.0%)

833 of 843 relevant lines covered (98.81%)

5.88 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

100.0
/mocket/plugins/pook_mock_engine.py
1
from pook.engine import MockEngine
6✔
2
from pook.interceptors.base import BaseInterceptor
6✔
3

4
from mocket.mocket import Mocket
6✔
5
from mocket.mockhttp import Entry, Response
6✔
6

7

8
class MocketPookEntry(Entry):
6✔
9
    pook_request = None
6✔
10
    pook_engine = None
6✔
11

12
    def can_handle(self, data):
6✔
13
        can_handle = super(MocketPookEntry, self).can_handle(data)
6✔
14

15
        if can_handle:
6✔
16
            self.pook_engine.match(self.pook_request)
6✔
17
        return can_handle
6✔
18

19
    @classmethod
6✔
20
    def single_register(
6✔
21
        cls,
22
        method,
23
        uri,
24
        body="",
25
        status=200,
26
        headers=None,
27
        match_querystring=True,
28
        exception=None,
29
    ):
30
        entry = cls(
6✔
31
            uri,
32
            method,
33
            [Response(body=body, status=status, headers=headers)],
34
            match_querystring=match_querystring,
35
        )
36
        Mocket.register(entry)
6✔
37
        return entry
6✔
38

39

40
class MocketInterceptor(BaseInterceptor):
6✔
41
    @staticmethod
6✔
42
    def activate():
6✔
43
        Mocket.disable()
6✔
44
        Mocket.enable()
6✔
45

46
    @staticmethod
6✔
47
    def disable():
6✔
48
        Mocket.disable()
6✔
49

50

51
class MocketEngine(MockEngine):
6✔
52
    def __init__(self, engine):
6✔
53
        def mocket_mock_fun(*args, **kwargs):
6✔
54
            mock = self.pook_mock_fun(*args, **kwargs)
6✔
55

56
            request = mock._request
6✔
57
            method = request.method
6✔
58
            url = request.rawurl
6✔
59

60
            response = mock._response
6✔
61
            body = response._body
6✔
62
            status = response._status
6✔
63
            headers = response._headers
6✔
64

65
            entry = MocketPookEntry.single_register(method, url, body, status, headers)
6✔
66
            entry.pook_engine = self.engine
6✔
67
            entry.pook_request = request
6✔
68

69
            return mock
6✔
70

71
        # Store plugins engine
72
        self.engine = engine
6✔
73
        # Store HTTP client interceptors
74
        self.interceptors = []
6✔
75
        # Self-register MocketInterceptor
76
        self.add_interceptor(MocketInterceptor)
6✔
77

78
        # mocking pook.mock()
79
        self.pook_mock_fun = self.engine.mock
6✔
80
        self.engine.mock = mocket_mock_fun
6✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc