Skip to content

Commit a3058b2

Browse files
committed
feat: added new apis
1 parent 5acdb34 commit a3058b2

2 files changed

Lines changed: 23 additions & 7 deletions

File tree

rapida/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
_MAJOR = "0"
2424
_MINOR = "1"
25-
_REVISION = "6"
25+
_REVISION = "7"
2626

2727
VERSION_SHORT = f"{_MAJOR}.{_MINOR}"
2828
VERSION = f"{_MAJOR}.{_MINOR}.{_REVISION}"

tests/utils/test_rapida_source.py

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,17 +43,33 @@ class MockSource:
4343
mock_rapida.clients.protos = types.ModuleType('rapida.clients.protos')
4444
mock_rapida.clients.protos.common_pb2 = mock_common_pb2
4545

46-
# Install the mocks before loading rapida_source
47-
sys.modules['rapida'] = mock_rapida
48-
sys.modules['rapida.clients'] = mock_rapida.clients
49-
sys.modules['rapida.clients.protos'] = mock_rapida.clients.protos
50-
sys.modules['rapida.clients.protos.common_pb2'] = mock_common_pb2
46+
_mocked_module_names = (
47+
'rapida',
48+
'rapida.clients',
49+
'rapida.clients.protos',
50+
'rapida.clients.protos.common_pb2',
51+
)
52+
_original_modules = {
53+
name: sys.modules.get(name) for name in _mocked_module_names
54+
}
5155

5256
# Now import rapida_source which depends on common_pb2
5357
module_path = os.path.join(os.path.dirname(__file__), '..', '..', 'rapida', 'utils', 'rapida_source.py')
5458
spec = importlib.util.spec_from_file_location('rapida_source', module_path)
5559
module = importlib.util.module_from_spec(spec)
56-
spec.loader.exec_module(module)
60+
try:
61+
# Install the mocks only while loading rapida_source.
62+
sys.modules['rapida'] = mock_rapida
63+
sys.modules['rapida.clients'] = mock_rapida.clients
64+
sys.modules['rapida.clients.protos'] = mock_rapida.clients.protos
65+
sys.modules['rapida.clients.protos.common_pb2'] = mock_common_pb2
66+
spec.loader.exec_module(module)
67+
finally:
68+
for name, original_module in _original_modules.items():
69+
if original_module is None:
70+
sys.modules.pop(name, None)
71+
else:
72+
sys.modules[name] = original_module
5773

5874
RapidaSource = module.RapidaSource
5975
common_pb2 = mock_common_pb2

0 commit comments

Comments
 (0)