bec-ipython-client 3.165.1__tar.gz → 3.166.1__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 (44) hide show
  1. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/PKG-INFO +1 -1
  2. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/bec_magics.py +5 -0
  3. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/pyproject.toml +1 -1
  4. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_bec_client.py +11 -0
  5. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/.gitignore +0 -0
  6. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/__init__.py +0 -0
  7. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/beamline_mixin.py +0 -0
  8. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/bec_startup.py +0 -0
  9. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/callbacks/__init__.py +0 -0
  10. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/callbacks/device_progress.py +0 -0
  11. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/callbacks/ipython_live_updates.py +0 -0
  12. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/callbacks/live_table.py +0 -0
  13. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/callbacks/move_device.py +0 -0
  14. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/callbacks/utils.py +0 -0
  15. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/high_level_interfaces/__init__.py +0 -0
  16. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/high_level_interfaces/bec_hli.py +0 -0
  17. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/high_level_interfaces/spec_hli.py +0 -0
  18. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/main.py +0 -0
  19. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/plugins/SLS/__init__.py +0 -0
  20. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/plugins/SLS/sls_info.py +0 -0
  21. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/plugins/XTreme/__init__.py +0 -0
  22. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/plugins/XTreme/x-treme.py +0 -0
  23. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/plugins/__init__.py +0 -0
  24. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/plugins/flomni/flomni_config.yaml +0 -0
  25. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/prettytable.py +0 -0
  26. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/progressbar.py +0 -0
  27. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/bec_ipython_client/signals.py +0 -0
  28. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/demo.py +0 -0
  29. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/conftest.py +0 -0
  30. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_beamline_mixins.py +0 -0
  31. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_device_progress.py +0 -0
  32. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_ipython_live_updates.py +0 -0
  33. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_live_table.py +0 -0
  34. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_move_callback.py +0 -0
  35. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_pretty_table.py +0 -0
  36. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/client_tests/test_signals.py +0 -0
  37. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/conftest.py +0 -0
  38. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/_ensure_requirements_container.py +0 -0
  39. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/test_acl_e2e.py +0 -0
  40. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/test_actors_e2e.py +0 -0
  41. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/test_procedures_e2e.py +0 -0
  42. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/test_scans_e2e.py +0 -0
  43. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/test_scans_lib_e2e.py +0 -0
  44. {bec_ipython_client-3.165.1 → bec_ipython_client-3.166.1}/tests/end-2-end/test_scans_v4_lib_e2e.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: bec_ipython_client
3
- Version: 3.165.1
3
+ Version: 3.166.1
4
4
  Summary: BEC IPython client
5
5
  Project-URL: Bug Tracker, https://github.com/bec-project/bec/issues
6
6
  Project-URL: Homepage, https://github.com/bec-project/bec
@@ -56,6 +56,11 @@ class BECMagics(Magics):
56
56
  "Request a scan halt, i.e. abort without cleanup."
57
57
  return self.client.queue.request_scan_halt()
58
58
 
59
+ @line_magic
60
+ def stop(self, line):
61
+ "Stop all devices"
62
+ return self.client._request_stop_all_devices()
63
+
59
64
  @line_magic
60
65
  def server_restart(self, line):
61
66
  "Request a server restart"
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "bec_ipython_client"
7
- version = "3.165.1"
7
+ version = "3.166.1"
8
8
  description = "BEC IPython client"
9
9
  requires-python = ">=3.11"
10
10
  classifiers = [
@@ -7,6 +7,7 @@ import pytest
7
7
  import redis.exceptions
8
8
 
9
9
  from bec_ipython_client import BECIPythonClient, main
10
+ from bec_ipython_client.bec_magics import BECMagics
10
11
  from bec_lib import messages
11
12
  from bec_lib.alarm_handler import AlarmBase, AlarmHandler, Alarms
12
13
  from bec_lib.bec_errors import DeviceConfigError
@@ -124,6 +125,16 @@ def test_ipython_device_helper_func_inspect(bec_ipython_shell):
124
125
  shell.run_cell("dev.get_devices_with_tags?")
125
126
 
126
127
 
128
+ def test_stop_magic_requests_stop_all_devices(bec_ipython_shell, bec_client_mock):
129
+ shell, _ = bec_ipython_shell
130
+ magics = BECMagics(shell, bec_client_mock)
131
+
132
+ with mock.patch.object(bec_client_mock, "_request_stop_all_devices") as request_stop:
133
+ magics.stop("")
134
+
135
+ request_stop.assert_called_once_with()
136
+
137
+
127
138
  @pytest.fixture
128
139
  def service_config():
129
140
  return ServiceConfig(