|
9 | 9 | from pyaml.arrays.element_array import ElementArray |
10 | 10 | from pyaml.arrays.magnet_array import MagnetArray |
11 | 11 | from pyaml.configuration.factory import Factory |
12 | | - |
| 12 | +from pyaml.arrays.magnet import Magnet,ConfigModel as MagnetArrayConfigModel |
| 13 | +from pyaml.arrays.bpm import BPM,ConfigModel as BPMArrayConfigModel |
| 14 | +from pyaml.arrays.cfm_magnet import CombinedFunctionMagnet,ConfigModel as CombinedFunctionMagnetConfigModel |
13 | 15 |
|
14 | 16 | @pytest.mark.parametrize( |
15 | 17 | "install_test_package", |
@@ -220,4 +222,20 @@ def test_arrays(install_test_package): |
220 | 222 | magSH1AC = acfm["model_name:SH1A-*"] # All SH1A magnets (CFMs only) |
221 | 223 | assert isinstance(magSH1AC, ElementArray) and len(magSH1AC) == 32 |
222 | 224 |
|
| 225 | + # Empty arrays |
| 226 | + emptyMag = Magnet(MagnetArrayConfigModel(name="EmptyMag",elements=[])) |
| 227 | + emptyMag.fill_array(sr.design) # Attach the array |
| 228 | + v = sr.design.get_magnets("EmptyMag").strengths.get() # Ensure good attach |
| 229 | + assert np.shape(v) == (0,) |
| 230 | + |
| 231 | + emptyBPM = BPM(BPMArrayConfigModel(name="emptyBPM",elements=[])) |
| 232 | + emptyBPM.fill_array(sr.design) # Attach the array |
| 233 | + v = sr.design.get_bpms("emptyBPM").positions.get() # Ensure good attach |
| 234 | + assert np.shape(v) == (0,) |
| 235 | + |
| 236 | + emptyCFM = CombinedFunctionMagnet(CombinedFunctionMagnetConfigModel(name="emptyCFM",elements=[])) |
| 237 | + emptyCFM.fill_array(sr.design) # Attach the array |
| 238 | + v = sr.design.get_cfm_magnets("emptyCFM").strengths.get() # Ensure good attach |
| 239 | + assert np.shape(v) == (0,) |
| 240 | + |
223 | 241 | Factory.clear() |
0 commit comments