def test_clear_peaks_removes_all_drawn(self): # create 2 peaks: 1 visible, 1 not (far outside Z range) visible_peak_center, invisible_center = (0.5, 0.2, 0.25), (0.4, 0.3, 25) model, mock_painter = draw_peaks( (visible_peak_center, invisible_center), fg_color='r', slice_value=0.5, slice_width=30) model.clear_peak_representations() mock_painter.remove.assert_called_once()
def test_viewlimits(self): visible_peak_center, invisible_center = (0.5, 0.2, 0.25), (0.4, 0.3, 25) model, mock_painter = draw_peaks((visible_peak_center, invisible_center), fg_color='r', slice_value=0.5, slice_width=30) xlim, ylim = model.viewlimits(0) assert_allclose((-0.13, 1.13), xlim) assert_allclose((-0.43, 0.83), ylim)
def test_zoom_to(self): visible_peak_center, invisible_center = (0.5, 0.2, 0.25), (0.4, 0.3, 25) model, mock_painter = draw_peaks( (visible_peak_center, invisible_center), fg_color='r', slice_value=0.5, slice_width=30) model.zoom_to(0) mock_painter.zoom_to.assert_called_once()
def test_draw_peaks(self): fg_color = 'r' # create 2 peaks: 1 visible, 1 not (far outside Z range) visible_peak_center, invisible_center = (0.5, 0.2, 0.25), (0.4, 0.3, 25) _, mock_painter = draw_peaks( (visible_peak_center, invisible_center), fg_color, slice_value=0.5, slice_width=30) self.assertEqual(1, mock_painter.cross.call_count) call_args, call_kwargs = mock_painter.cross.call_args self.assertEqual(visible_peak_center[0], call_args[0]) self.assertEqual(visible_peak_center[1], call_args[1]) self.assertAlmostEqual(0.03, call_args[2], places=3) self.assertAlmostEqual(0.356, call_kwargs["alpha"], places=3) self.assertEqual(fg_color, call_kwargs["color"])
def test_viewlimits(self): visible_peak_center, invisible_center = (0.5, 0.2, 0.25), (0.4, 0.3, 25) model, mock_painter = draw_peaks( (visible_peak_center, invisible_center), fg_color='r', slice_value=0.5, slice_width=30) xlim, ylim = model.viewlimits(0) assert_allclose((-0.13, 1.13), xlim) assert_allclose((-0.43, 0.83), ylim) # Force case where no representation are able to be draw # This can happen when the peak integration volume doesn't intersect any planes of data model._representations = [None] xlim, ylim = model.viewlimits(0) self.assertEqual((None, None), xlim) self.assertEqual((None, None), ylim)