bec-widgets 0.46.5__tar.gz → 0.46.6__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 (104) hide show
  1. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/PKG-INFO +1 -1
  2. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/cli/client_utils.py +11 -0
  3. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets.egg-info/PKG-INFO +1 -1
  4. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets.egg-info/SOURCES.txt +1 -0
  5. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/setup.py +1 -1
  6. bec_widgets-0.46.6/tests/unit_tests/test_client_utils.py +29 -0
  7. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/LICENSE +0 -0
  8. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/README.md +0 -0
  9. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/__init__.py +0 -0
  10. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/cli/__init__.py +0 -0
  11. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/cli/client.py +0 -0
  12. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/cli/generate_cli.py +0 -0
  13. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/cli/server.py +0 -0
  14. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/__init__.py +0 -0
  15. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/eiger_plot/__init__.py +0 -0
  16. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/eiger_plot/eiger_plot.py +0 -0
  17. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/eiger_plot/eiger_plot.ui +0 -0
  18. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/jupyter_console/__init__.py +0 -0
  19. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/jupyter_console/jupyter_console_window.py +0 -0
  20. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/jupyter_console/jupyter_console_window.ui +0 -0
  21. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/mca_readout/__init__.py +0 -0
  22. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/mca_readout/mca_plot.py +0 -0
  23. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/mca_readout/mca_sim.py +0 -0
  24. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/__init__.py +0 -0
  25. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/config_example.yaml +0 -0
  26. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/csax_bec_config.yaml +0 -0
  27. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/csaxs_config.yaml +0 -0
  28. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/motor_control_compilations.py +0 -0
  29. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/motor_controller.ui +0 -0
  30. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/motor_movement/motor_example.py +0 -0
  31. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/stream_plot/__init__.py +0 -0
  32. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/stream_plot/line_plot.ui +0 -0
  33. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/examples/stream_plot/stream_plot.py +0 -0
  34. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/simulations/__init__.py +0 -0
  35. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/__init__.py +0 -0
  36. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/bec_connector.py +0 -0
  37. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/bec_dispatcher.py +0 -0
  38. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/bec_table.py +0 -0
  39. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/colors.py +0 -0
  40. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/crosshair.py +0 -0
  41. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/ctrl_c.py +0 -0
  42. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/entry_validator.py +0 -0
  43. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/rpc_decorator.py +0 -0
  44. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/validator_delegate.py +0 -0
  45. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/widget_io.py +0 -0
  46. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/utils/yaml_dialog.py +0 -0
  47. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/validation/__init__.py +0 -0
  48. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/validation/monitor_config_validator.py +0 -0
  49. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/__init__.py +0 -0
  50. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/editor/__init__.py +0 -0
  51. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/editor/editor.py +0 -0
  52. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/figure/__init__.py +0 -0
  53. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/figure/figure.py +0 -0
  54. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/monitor/__init__.py +0 -0
  55. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/monitor/config_dialog.py +0 -0
  56. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/monitor/config_dialog.ui +0 -0
  57. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/monitor/monitor.py +0 -0
  58. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/monitor/tab_template.ui +0 -0
  59. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_control/__init__.py +0 -0
  60. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_control/motor_control.py +0 -0
  61. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_control/motor_control_absolute.ui +0 -0
  62. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_control/motor_control_relative.ui +0 -0
  63. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_control/motor_control_selection.ui +0 -0
  64. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_control/motor_control_table.ui +0 -0
  65. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_map/__init__.py +0 -0
  66. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/motor_map/motor_map.py +0 -0
  67. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/plots/__init__.py +0 -0
  68. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/plots/image.py +0 -0
  69. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/plots/motor_map.py +0 -0
  70. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/plots/plot_base.py +0 -0
  71. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/plots/waveform.py +0 -0
  72. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/scan_control/__init__.py +0 -0
  73. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/scan_control/scan_control.py +0 -0
  74. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/toolbar/__init__.py +0 -0
  75. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets/widgets/toolbar/toolbar.py +0 -0
  76. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets.egg-info/dependency_links.txt +0 -0
  77. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets.egg-info/requires.txt +0 -0
  78. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/bec_widgets.egg-info/top_level.txt +0 -0
  79. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/setup.cfg +0 -0
  80. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/__init__.py +0 -0
  81. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/__init__.py +0 -0
  82. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/client_mocks.py +0 -0
  83. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/conftest.py +0 -0
  84. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_bec_connector.py +0 -0
  85. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_bec_dispatcher.py +0 -0
  86. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_bec_figure.py +0 -0
  87. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_bec_monitor.py +0 -0
  88. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_bec_motor_map.py +0 -0
  89. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_config_dialog.py +0 -0
  90. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_crosshair.py +0 -0
  91. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_editor.py +0 -0
  92. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_eiger_plot.py +0 -0
  93. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_generate_cli_client.py +0 -0
  94. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_motor_control.py +0 -0
  95. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_motor_map.py +0 -0
  96. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_msgs/__init__.py +0 -0
  97. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_msgs/available_scans_message.py +0 -0
  98. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_plot_base.py +0 -0
  99. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_scan_control.py +0 -0
  100. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_stream_plot.py +0 -0
  101. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_validator_errors.py +0 -0
  102. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_waveform1d.py +0 -0
  103. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_widget_io.py +0 -0
  104. {bec_widgets-0.46.5 → bec_widgets-0.46.6}/tests/unit_tests/test_yaml_dialog.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bec_widgets
3
- Version: 0.46.5
3
+ Version: 0.46.6
4
4
  Summary: BEC Widgets
5
5
  Home-page: https://gitlab.psi.ch/bec/bec-widgets
6
6
  Project-URL: Bug Tracker, https://gitlab.psi.ch/bec/bec-widgets/issues
@@ -36,6 +36,17 @@ def rpc_call(func):
36
36
 
37
37
  @wraps(func)
38
38
  def wrapper(self, *args, **kwargs):
39
+ # we could rely on a strict type check here, but this is more flexible
40
+ # moreover, it would anyway crash for objects...
41
+ out = []
42
+ for arg in args:
43
+ if hasattr(arg, "name"):
44
+ arg = arg.name
45
+ out.append(arg)
46
+ args = tuple(out)
47
+ for key, val in kwargs.items():
48
+ if hasattr(val, "name"):
49
+ kwargs[key] = val.name
39
50
  if not self.gui_is_alive():
40
51
  raise RuntimeError("GUI is not alive")
41
52
  return self._run_rpc(func.__name__, *args, **kwargs)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bec-widgets
3
- Version: 0.46.5
3
+ Version: 0.46.6
4
4
  Summary: BEC Widgets
5
5
  Home-page: https://gitlab.psi.ch/bec/bec-widgets
6
6
  Project-URL: Bug Tracker, https://gitlab.psi.ch/bec/bec-widgets/issues
@@ -79,6 +79,7 @@ setup.py
79
79
  ./tests/unit_tests/test_bec_figure.py
80
80
  ./tests/unit_tests/test_bec_monitor.py
81
81
  ./tests/unit_tests/test_bec_motor_map.py
82
+ ./tests/unit_tests/test_client_utils.py
82
83
  ./tests/unit_tests/test_config_dialog.py
83
84
  ./tests/unit_tests/test_crosshair.py
84
85
  ./tests/unit_tests/test_editor.py
@@ -1,7 +1,7 @@
1
1
  # pylint: disable= missing-module-docstring
2
2
  from setuptools import find_packages, setup
3
3
 
4
- __version__ = "0.46.5"
4
+ __version__ = "0.46.6"
5
5
 
6
6
  # Default to PyQt6 if no other Qt binding is installed
7
7
  QT_DEPENDENCY = "PyQt6>=6.0"
@@ -0,0 +1,29 @@
1
+ from unittest import mock
2
+
3
+ import pytest
4
+
5
+ from bec_widgets.cli.client import BECFigure
6
+
7
+ from .client_mocks import FakeDevice
8
+
9
+
10
+ @pytest.fixture
11
+ def cli_figure():
12
+ fig = BECFigure(gui_id="test")
13
+ with mock.patch.object(fig, "_run_rpc") as mock_rpc_call:
14
+ with mock.patch.object(fig, "gui_is_alive", return_value=True):
15
+ yield fig, mock_rpc_call
16
+
17
+
18
+ def test_rpc_call_plot(cli_figure):
19
+ fig, mock_rpc_call = cli_figure
20
+ fig.plot("samx", "bpm4i")
21
+ mock_rpc_call.assert_called_with("plot", "samx", "bpm4i")
22
+
23
+
24
+ def test_rpc_call_accepts_device_as_input(cli_figure):
25
+ dev1 = FakeDevice("samx")
26
+ dev2 = FakeDevice("bpm4i")
27
+ fig, mock_rpc_call = cli_figure
28
+ fig.plot(dev1, dev2)
29
+ mock_rpc_call.assert_called_with("plot", "samx", "bpm4i")
File without changes
File without changes
File without changes