def test_changing_ndim(qtbot): """ Test changing the number of dimensions """ ndim = 4 view = QtDims(Dims(ndim)) qtbot.addWidget(view) view.show() # Check that adding dimensions adds sliders view.dims.ndim = 5 assert view.nsliders == view.dims.ndim assert np.sum(view._displayed_sliders) == view.dims.ndim - 2 assert np.all([ s.isVisible() == d for s, d in zip(view.slider_widgets, view._displayed_sliders) ]) # Check that removing dimensions removes sliders view.dims.ndim = 2 assert view.nsliders == view.dims.ndim assert np.sum(view._displayed_sliders) == view.dims.ndim - 2 assert np.all([ s.isVisible() == d for s, d in zip(view.slider_widgets, view._displayed_sliders) ])
def test_changing_display(qtbot): """ Test changing the displayed property of an axis """ ndim = 4 view = QtDims(Dims(ndim)) qtbot.addWidget(view) view.show() assert view.nsliders == view.dims.ndim assert np.sum(view._displayed_sliders) == view.dims.ndim - 2 assert np.all([ s.isVisible() == d for s, d in zip(view.slider_widgets, view._displayed_sliders) ]) # Check changing displayed removes a slider view.dims.ndisplay = 3 assert view.nsliders == view.dims.ndim assert np.sum(view._displayed_sliders) == view.dims.ndim - 3 assert np.all([ s.isVisible() == d for s, d in zip(view.slider_widgets, view._displayed_sliders) ])
def test_singleton_dims(qtbot): """ Test singleton dims causes no slider. """ ndim = 4 dims = Dims(ndim) dims.set_range(0, (0, 1, 1)) view = QtDims(dims) qtbot.addWidget(view) view.show() # Check that the dims model has been appended to the dims view assert view.dims == dims # Check the number of displayed sliders is only one assert view.nsliders == 4 assert np.sum(view._displayed_sliders) == 1 assert np.all([ s.isVisible() == d for s, d in zip(view.slider_widgets, view._displayed_sliders) ]) # Change ndisplay to three view.dims.ndisplay = 3 # Check no sliders now shown assert np.sum(view._displayed_sliders) == 0 # Change ndisplay back to two view.dims.ndisplay = 2 # Check only slider now shown assert np.sum(view._displayed_sliders) == 1
def test_creating_view(qtbot): """ Test creating dims view. """ ndim = 4 dims = Dims(ndim) view = QtDims(dims) qtbot.addWidget(view) view.show() # Check that the dims model has been appended to the dims view assert view.dims == dims # Check the number of displayed sliders is two less than the number of # dimensions assert view.nsliders == view.dims.ndim assert np.sum(view._displayed_sliders) == view.dims.ndim - 2 assert np.all([ s.isVisible() == d for s, d in zip(view.slider_widgets, view._displayed_sliders) ])