From 2f929149a984de3c5c73b31aedf6d7514af36447 Mon Sep 17 00:00:00 2001
From: Conor Finn <conor.finn@stfc.ac.uk>
Date: Fri, 27 Mar 2020 09:29:29 +0000
Subject: [PATCH] RE #28227 Add test for ragged colorbar normalise toggle

---
 .../plotting/test/test_figureinteraction.py       | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/qt/applications/workbench/workbench/plotting/test/test_figureinteraction.py b/qt/applications/workbench/workbench/plotting/test/test_figureinteraction.py
index 3c54cd45f94..a39ea453c05 100644
--- a/qt/applications/workbench/workbench/plotting/test/test_figureinteraction.py
+++ b/qt/applications/workbench/workbench/plotting/test/test_figureinteraction.py
@@ -27,7 +27,7 @@ from mantid.plots import MantidAxes
 from mantid.py3compat.mock import MagicMock, PropertyMock, call, patch
 from mantid.simpleapi import CreateWorkspace
 from mantidqt.plotting.figuretype import FigureType
-from mantidqt.plotting.functions import plot
+from mantidqt.plotting.functions import plot, pcolormesh_from_names
 from mantidqt.utils.qt.testing import start_qapplication
 from workbench.plotting.figureinteraction import FigureInteraction
 
@@ -378,6 +378,19 @@ class FigureInteractionTest(unittest.TestCase):
         current_scale_types2 = (ax.get_xscale(), ax.get_yscale())
         self.assertNotEqual(current_scale_types2, current_scale_types1)
 
+    def test_scale_on_ragged_workspaces_maintained_when_toggling_normalisation(self):
+        ws = CreateWorkspace(DataX=[1, 2, 3, 4, 2, 4, 6, 8], DataY=[2] * 8, NSpec=2, OutputWorkspace="ragged_ws")
+        fig = pcolormesh_from_names([ws])
+        mock_canvas = MagicMock(figure=fig)
+        fig_manager_mock = MagicMock(canvas=mock_canvas)
+        fig_interactor = FigureInteraction(fig_manager_mock)
+        fig_interactor._toggle_normalization(fig.axes[0])
+
+        clim = fig.axes[0].images[0].get_clim()
+        fig_interactor._toggle_normalization(fig.axes[0])
+        self.assertEqual(clim, fig.axes[0].images[0].get_clim())
+        self.assertNotEqual((-0.1, 0.1), fig.axes[0].images[0].get_clim())
+
     # Private methods
     def _create_mock_fig_manager_to_accept_right_click(self):
         fig_manager = MagicMock()
-- 
GitLab