openmodule-test 14.1.1__tar.gz → 14.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/ChangeLog +6 -7
  2. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/PKG-INFO +1 -1
  3. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/openmodule_test.egg-info/PKG-INFO +1 -1
  4. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/openmodule_test.egg-info/SOURCES.txt +1 -0
  5. openmodule_test-14.3.0/openmodule_test.egg-info/pbr.json +1 -0
  6. openmodule_test-14.3.0/signal_simulator.py +58 -0
  7. openmodule_test-14.1.1/openmodule_test.egg-info/pbr.json +0 -1
  8. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/AUTHORS +0 -0
  9. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/__init__.py +0 -0
  10. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/alert.py +0 -0
  11. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/connection_status.py +0 -0
  12. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/core.py +0 -0
  13. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/database.py +0 -0
  14. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/eventlistener.py +0 -0
  15. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/files.py +0 -0
  16. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/gate.py +0 -0
  17. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/health.py +0 -0
  18. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/interrupt.py +0 -0
  19. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/io_simulator.py +0 -0
  20. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/openmodule_test.egg-info/dependency_links.txt +0 -0
  21. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/openmodule_test.egg-info/not-zip-safe +0 -0
  22. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/openmodule_test.egg-info/requires.txt +0 -0
  23. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/openmodule_test.egg-info/top_level.txt +0 -0
  24. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/package_reader.py +0 -0
  25. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/presence.py +0 -0
  26. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/requirements.txt +0 -0
  27. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/rpc.py +0 -0
  28. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/sentry.py +0 -0
  29. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/settings.py +0 -0
  30. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/setup.cfg +0 -0
  31. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/setup.py +0 -0
  32. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/utils.py +0 -0
  33. {openmodule_test-14.1.1 → openmodule_test-14.3.0}/zeromq.py +0 -0
@@ -1,6 +1,12 @@
1
1
  CHANGES
2
2
  =======
3
3
 
4
+ v14.3.0
5
+ -------
6
+
7
+ * Om 912: SignalListener and SignalSimulator for testcases
8
+ * OM-1001: CostEntryData from settings models, added valid\_from and valid\_to to AccessCheckAccess and type hints for io/signals and io/inputs settings
9
+
4
10
  v14.1.1
5
11
  -------
6
12
 
@@ -181,8 +187,6 @@ v12.0.0.rc0
181
187
  -----------
182
188
 
183
189
  * Removed parking\_area\_id from AccessCheckAccess changed gate permission check in AccessService to new behavior
184
- * removed Gate and GateType (now from settings models)
185
- * fixed testcases and removed backend (deprecated in v11)
186
190
 
187
191
  v11.1.1
188
192
  -------
@@ -201,8 +205,3 @@ v11.0.3
201
205
  * Fixed typo, added compute\_id as label to all metrics, convert all label values to string
202
206
  * touch to get rid of skip ci on my commit
203
207
  * docs update [skip ci]
204
- * main test function deprecated and documentation for main tests added
205
-
206
- v11.0.2
207
- -------
208
-
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: openmodule_test
3
- Version: 14.1.1
3
+ Version: 14.3.0
4
4
  Summary: Libraries for testing openmodule services
5
5
  Home-page: https://gitlab.com/arivo-public/device-python/openmodule.git
6
6
  Author: ARIVO
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: openmodule-test
3
- Version: 14.1.1
3
+ Version: 14.3.0
4
4
  Summary: Libraries for testing openmodule services
5
5
  Home-page: https://gitlab.com/arivo-public/device-python/openmodule.git
6
6
  Author: ARIVO
@@ -19,6 +19,7 @@ setup.py
19
19
  ./rpc.py
20
20
  ./sentry.py
21
21
  ./settings.py
22
+ ./signal_simulator.py
22
23
  ./utils.py
23
24
  ./zeromq.py
24
25
  openmodule_test.egg-info/PKG-INFO
@@ -0,0 +1 @@
1
+ {"git_version": "d1f88e5", "is_release": true}
@@ -0,0 +1,58 @@
1
+ from typing import Callable, Optional
2
+
3
+ from openmodule.models.signals import SignalMessage, TriggerSignalsRequest, TriggerSignalsResponse, \
4
+ GetSignalValueRequest, GetSignalValueResponse, SignalType
5
+ from openmodule.rpc import RPCClient
6
+
7
+
8
+ class SignalSimulator:
9
+ def __init__(self, emit: Callable[[SignalMessage], None]):
10
+ self.emit = emit
11
+ self._signals = {}
12
+
13
+ def add_signal(self, value: bool, additional_data: Optional[dict], signal_type: SignalType,
14
+ gate: Optional[str] = None, parking_area_id: Optional[str] = None,
15
+ signal_name: Optional[str] = None):
16
+ if signal_type == SignalType.custom:
17
+ assert signal_name is not None
18
+ signal_msg = SignalMessage(signal=signal_name, type=signal_type, gate=gate, parking_area_id=parking_area_id,
19
+ value=value, additional_data=additional_data)
20
+ elif signal_type == SignalType.parkinglot_full:
21
+ signal_name = signal_type.value
22
+ signal_msg = SignalMessage(signal=signal_name, type=signal_type,
23
+ value=value, additional_data=additional_data)
24
+ elif signal_type == SignalType.area_full:
25
+ assert parking_area_id is not None
26
+ signal_name = f"{parking_area_id}-area_full"
27
+ signal_msg = SignalMessage(signal=signal_name, type=signal_type, parking_area_id=parking_area_id,
28
+ value=value, additional_data=additional_data)
29
+ else:
30
+ assert gate is not None
31
+ signal_name = f"{gate}-{signal_type}"
32
+ signal_msg = SignalMessage(signal=signal_name, type=signal_type, gate=gate,
33
+ value=value, additional_data=additional_data)
34
+ self._signals[signal_msg.signal] = signal_msg
35
+
36
+ def remove_signal(self, signal: str):
37
+ self._signals.pop(signal, None)
38
+
39
+ def set_signal(self, signal: str, value: bool, additional_data: Optional[dict] = None):
40
+ self._signals[signal].value = value
41
+ self._signals[signal].additional_data = additional_data
42
+ self.emit(self._signals[signal])
43
+
44
+ def trigger_signal_callback(self, request: TriggerSignalsRequest, _):
45
+ res = TriggerSignalsResponse(success=True)
46
+ for signal in request.signals:
47
+ if signal in self._signals:
48
+ self.emit(self._signals[signal])
49
+ else:
50
+ res.success = False
51
+ return res
52
+
53
+ def get_value_callback(self, request: GetSignalValueRequest, _):
54
+ if request.signal in self._signals:
55
+ return GetSignalValueResponse(value=self._signals[request.signal].value,
56
+ additional_data=self._signals[request.signal].additional_data)
57
+ else:
58
+ raise RPCClient.TimeoutError()
@@ -1 +0,0 @@
1
- {"git_version": "3784452", "is_release": true}