Changeset 3e8dee3 in sasview for src/sas/qtgui/Plotting/UnitTesting/PlotterTest.py
- Timestamp:
- Nov 8, 2017 9:22:45 AM (6 years ago)
- Branches:
- ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc
- Children:
- 0e80658
- Parents:
- 412e069e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/qtgui/Plotting/UnitTesting/PlotterTest.py
r99ea1b0 r3e8dee3 3 3 import platform 4 4 5 from PyQt 4 import QtGui6 from PyQt 4import QtCore7 from matplotlib.backends.backend_qt 4agg import FigureCanvasQTAgg as FigureCanvas5 from PyQt5 import QtGui, QtWidgets, QtPrintSupport 6 from PyQt5 import QtCore 7 from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas 8 8 from unittest.mock import MagicMock 9 9 from unittest.mock import patch … … 21 21 import sas.qtgui.Plotting.Plotter as Plotter 22 22 23 if not Qt Gui.QApplication.instance():24 app = Qt Gui.QApplication(sys.argv)23 if not QtWidgets.QApplication.instance(): 24 app = QtWidgets.QApplication(sys.argv) 25 25 26 26 … … 57 57 self.plotter.data = self.data 58 58 self.plotter.show() 59 FigureCanvas.draw = MagicMock()59 FigureCanvas.draw_idle = MagicMock() 60 60 61 61 self.plotter.plot(hide_error=False) 62 62 63 63 self.assertEqual(self.plotter.ax.get_xscale(), 'log') 64 self.assertTrue(FigureCanvas.draw.called) 64 self.assertTrue(FigureCanvas.draw_idle.called) 65 66 self.plotter.figure.clf() 65 67 66 68 def testPlotWithoutErrors(self): … … 68 70 self.plotter.data = self.data 69 71 self.plotter.show() 70 FigureCanvas.draw = MagicMock()72 FigureCanvas.draw_idle = MagicMock() 71 73 72 74 self.plotter.plot(hide_error=True) 73 75 74 76 self.assertEqual(self.plotter.ax.get_yscale(), 'log') 75 self.assertTrue(FigureCanvas.draw.called) 77 self.assertTrue(FigureCanvas.draw_idle.called) 78 self.plotter.figure.clf() 76 79 77 80 def testCreateContextMenuQuick(self): … … 89 92 # Trigger Print Image and make sure the method is called 90 93 self.assertEqual(actions[1].text(), "Print Image") 91 Qt Gui.QPrintDialog.exec_ = MagicMock(return_value=QtGui.QDialog.Rejected)94 QtPrintSupport.QPrintDialog.exec_ = MagicMock(return_value=QtWidgets.QDialog.Rejected) 92 95 actions[1].trigger() 93 self.assertTrue(Qt Gui.QPrintDialog.exec_.called)96 self.assertTrue(QtPrintSupport.QPrintDialog.exec_.called) 94 97 95 98 # Trigger Copy to Clipboard and make sure the method is called … … 104 107 # Trigger Change Scale and make sure the method is called 105 108 self.assertEqual(actions[6].text(), "Change Scale") 106 self.plotter.properties.exec_ = MagicMock(return_value=Qt Gui.QDialog.Rejected)109 self.plotter.properties.exec_ = MagicMock(return_value=QtWidgets.QDialog.Rejected) 107 110 actions[6].trigger() 108 111 self.assertTrue(self.plotter.properties.exec_.called) … … 114 117 def done(): 115 118 self.clipboard_called = True 116 QtCore.QObject.connect(Qt Gui.qApp.clipboard(), QtCore.SIGNAL("dataChanged()"), done)119 QtCore.QObject.connect(QtWidgets.qApp.clipboard(), QtCore.SIGNAL("dataChanged()"), done) 117 120 actions[2].trigger() 118 Qt Gui.qApp.processEvents()121 QtWidgets.qApp.processEvents() 119 122 # Make sure clipboard got updated. 120 123 self.assertTrue(self.clipboard_called) … … 136 139 self.assertEqual(len(self.plotter.plot_dict), 1) 137 140 self.assertEqual(len(self.plotter.ax.collections), 1) 141 self.plotter.figure.clf() 138 142 139 143 def testAddText(self): … … 153 157 self.plotter.addText.color = MagicMock(return_value = test_color) 154 158 # Return OK from the dialog 155 self.plotter.addText.exec_ = MagicMock(return_value = Qt Gui.QDialog.Accepted)159 self.plotter.addText.exec_ = MagicMock(return_value = QtWidgets.QDialog.Accepted) 156 160 # Add text to graph 157 161 self.plotter.onAddText() … … 163 167 self.assertEqual(self.plotter.textList[0].get_fontproperties().get_family()[0], 'Arial') 164 168 self.assertEqual(self.plotter.textList[0].get_fontproperties().get_size(), 16) 169 self.plotter.figure.clf() 165 170 166 171 def testOnRemoveText(self): … … 172 177 self.plotter.addText.textEdit.setText(test_text) 173 178 # Return OK from the dialog 174 self.plotter.addText.exec_ = MagicMock(return_value = Qt Gui.QDialog.Accepted)179 self.plotter.addText.exec_ = MagicMock(return_value = QtWidgets.QDialog.Accepted) 175 180 # Add text to graph 176 181 self.plotter.onAddText() … … 188 193 self.plotter.onRemoveText() 189 194 self.assertEqual(self.plotter.textList, []) 195 self.plotter.figure.clf() 190 196 191 197 def testOnSetGraphRange(self): … … 195 201 self.plotter.plot(self.data) 196 202 self.plotter.show() 197 self.plotter.setRange.exec_ = MagicMock(return_value = Qt Gui.QDialog.Accepted)203 self.plotter.setRange.exec_ = MagicMock(return_value = QtWidgets.QDialog.Accepted) 198 204 self.plotter.setRange.xrange = MagicMock(return_value = new_x) 199 205 self.plotter.setRange.yrange = MagicMock(return_value = new_y) … … 204 210 self.assertEqual(self.plotter.ax.get_xlim(), new_x) 205 211 self.assertEqual(self.plotter.ax.get_ylim(), new_y) 212 self.plotter.figure.clf() 206 213 207 214 def testOnResetGraphRange(self): … … 215 222 216 223 # mock setRange methods 217 self.plotter.setRange.exec_ = MagicMock(return_value = Qt Gui.QDialog.Accepted)224 self.plotter.setRange.exec_ = MagicMock(return_value = QtWidgets.QDialog.Accepted) 218 225 self.plotter.setRange.xrange = MagicMock(return_value = new_x) 219 226 self.plotter.setRange.yrange = MagicMock(return_value = new_y) … … 228 235 self.assertNotEqual(self.plotter.ax.get_xlim(), new_x) 229 236 self.assertNotEqual(self.plotter.ax.get_ylim(), new_y) 237 self.plotter.figure.clf() 230 238 231 239 def testOnLinearFit(self): … … 233 241 self.plotter.plot(self.data) 234 242 self.plotter.show() 235 Qt Gui.QDialog.exec_ = MagicMock(return_value=QtGui.QDialog.Accepted)243 QtWidgets.QDialog.exec_ = MagicMock(return_value=QtWidgets.QDialog.Accepted) 236 244 237 245 # Just this one plot … … 240 248 241 249 # Check that exec_ got called 242 self.assertTrue(QtGui.QDialog.exec_.called) 250 self.assertTrue(QtWidgets.QDialog.exec_.called) 251 self.plotter.figure.clf() 243 252 244 253 def testOnRemovePlot(self): … … 275 284 # Assure the plotter window is closed 276 285 self.assertFalse(self.plotter.isVisible()) 277 286 self.plotter.figure.clf() 278 287 279 288 def testRemovePlot(self): … … 306 315 # The hide_error flag should also remain 307 316 self.assertTrue(self.plotter.plot_dict[2].hide_error) 317 self.plotter.figure.clf() 308 318 309 319 def testOnToggleHideError(self): … … 336 346 # The hide_error flag should toggle 337 347 self.assertEqual(self.plotter.plot_dict[2].hide_error, not error_status) 348 self.plotter.figure.clf() 338 349 339 350 def testOnFitDisplay(self): … … 352 363 self.plotter.plot.assert_called_with(data=self.plotter.fit_result, 353 364 hide_error=True, marker='-') 365 self.plotter.figure.clf() 354 366 355 367 def testReplacePlot(self): … … 389 401 # The hide_error flag should be as set 390 402 self.assertEqual(self.plotter.plot_dict[2].hide_error, error_status) 403 self.plotter.figure.clf() 391 404 392 405 def notestOnModifyPlot(self): … … 408 421 with patch('sas.qtgui.Plotting.PlotProperties.PlotProperties') as mock: 409 422 instance = mock.return_value 410 Qt Gui.QDialog.exec_ = MagicMock(return_value=QtGui.QDialog.Accepted)423 QtWidgets.QDialog.exec_ = MagicMock(return_value=QtWidgets.QDialog.Accepted) 411 424 instance.symbol.return_value = 7 412 425 413 426 self.plotter.onModifyPlot(2) 427 self.plotter.figure.clf() 414 428 415 429
Note: See TracChangeset
for help on using the changeset viewer.