Skip to content

Commit 7d7d7be

Browse files
committed
add system test for standard callbacks
1 parent 59a1712 commit 7d7d7be

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,5 @@ six
99
unittest-xml-reporting
1010
ibex_bluesky_core
1111
genie_python
12-
configobj
12+
matplotlib
13+
pyqt6

test_bluesky.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,17 @@
22
import os
33
import unittest
44
import uuid
5+
from pathlib import Path
56

67
import bluesky.plan_stubs as bps
78
import bluesky.plans as bp
9+
import matplotlib
810
from bluesky.callbacks import LiveTable
11+
from ibex_bluesky_core.callbacks.fitting.fitting_utils import Linear
912
from bluesky.preprocessors import subs_decorator
1013
from bluesky.run_engine import RunEngine, RunEngineResult
1114
from genie_python import genie as g # type: ignore
15+
from ibex_bluesky_core.callbacks import ISISCallbacks
1216
from ibex_bluesky_core.devices import get_pv_prefix
1317
from ibex_bluesky_core.devices.block import block_r, block_rw_rbv
1418
from ibex_bluesky_core.devices.simpledae import SimpleDae
@@ -30,6 +34,7 @@
3034
set_genie_python_raises_exceptions,
3135
)
3236

37+
matplotlib.use("qtagg")
3338
RE: RunEngine = get_run_engine()
3439

3540
P3_INIT_VALUE: float = 123.456
@@ -147,6 +152,28 @@ def _plan():
147152
self.assertTrue(any("| 123.456 | -10.00000 |" in line for line in livetable_lines))
148153
self.assertTrue(any("| 123.456 | 10.00000 |" in line for line in livetable_lines))
149154

155+
def test_scan_with_standard_callbacks(self) -> None:
156+
icc = ISISCallbacks(x="p5", y="p3",
157+
fit=Linear().fit(),
158+
human_readable_file_output_dir=Path(LOG_FOLDER) / "output_files",
159+
live_fit_logger_output_dir=Path(LOG_FOLDER) / "fitting")
160+
161+
@icc
162+
def _plan():
163+
p3 = block_r(float, "p3")
164+
p5 = block_rw_rbv(float, "p5")
165+
yield from ensure_connected(p3, p5)
166+
yield from bp.scan([p3], p5, -10, 10, num=10)
167+
168+
RE(_plan())
169+
170+
input()
171+
172+
self.assertAlmostEqual(icc.peak_stats['com'], 0)
173+
print(icc.live_fit.result.params['c0'])
174+
print(icc.live_fit.result.fit_report())
175+
self.assertAlmostEqual(icc.live_fit.result.params['c0'], P3_INIT_VALUE)
176+
150177
def test_count_simple_dae(self) -> None:
151178
start_run_number = int(g.get_runnumber())
152179

0 commit comments

Comments
 (0)