1
- import importlib
1
+ import imp
2
+
2
3
import traceback
3
4
4
5
import mock
5
- import sys
6
- import os
7
6
8
7
import pytest
9
8
from lumigo_tracer .auto_instrument_handler import _handler , ORIGINAL_HANDLER_KEY
10
9
11
10
12
- def test_happy_flow (monkeypatch ):
13
- m = mock .Mock (return_value = {"hello" : "world" })
14
- monkeypatch .setattr (sys , "exit" , m )
15
- monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "sys.exit" )
11
+ def abc (* args , ** kwargs ):
12
+ return {"hello" : "world" }
16
13
17
- assert _handler ({}, {}) == {"hello" : "world" }
18
14
19
- m .assert_called_once ()
15
+ def test_happy_flow (monkeypatch ):
16
+ monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "test_auto_instrument_handler.abc" )
17
+ assert _handler ({}, {}) == {"hello" : "world" }
20
18
21
19
22
20
def test_hierarchy_happy_flow (monkeypatch ):
23
- monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "os/path.getsize" )
24
- m = mock .Mock (return_value = {"hello" : "world" })
25
- monkeypatch .setattr (os .path , "getsize" , m )
26
-
21
+ monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "lumigo_tracer/test_module/test.handler" )
27
22
assert _handler ({}, {}) == {"hello" : "world" }
28
23
29
- m .assert_called_once ()
30
-
31
24
32
25
def test_import_error (monkeypatch ):
33
26
monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "blabla.not.exists" )
@@ -51,7 +44,7 @@ def test_no_env_handler_error(monkeypatch):
51
44
52
45
53
46
def test_error_in_original_handler_no_extra_exception_log (monkeypatch , context ):
54
- monkeypatch .setattr (importlib , "import_module " , mock .Mock (side_effect = ZeroDivisionError ))
47
+ monkeypatch .setattr (imp , "load_module " , mock .Mock (side_effect = ZeroDivisionError ))
55
48
monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "sys.exit" )
56
49
57
50
try :
@@ -64,7 +57,7 @@ def test_error_in_original_handler_no_extra_exception_log(monkeypatch, context):
64
57
65
58
66
59
def test_error_in_original_handler_syntax_error (monkeypatch , context ):
67
- monkeypatch .setattr (importlib , "import_module " , mock .Mock (side_effect = SyntaxError ))
60
+ monkeypatch .setattr (imp , "load_module " , mock .Mock (side_effect = SyntaxError ))
68
61
monkeypatch .setenv (ORIGINAL_HANDLER_KEY , "sys.exit" )
69
62
70
63
try :
0 commit comments