Changes in src/sas/qtgui/Perspectives/Fitting/UnitTesting/FittingWidgetTest.py [3f5b901:605d944] in sasview
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/qtgui/Perspectives/Fitting/UnitTesting/FittingWidgetTest.py
r3f5b901 r605d944 18 18 from sas.qtgui.Perspectives.Fitting.FittingWidget import * 19 19 from sas.qtgui.Perspectives.Fitting.Constraint import Constraint 20 20 import sas.qtgui.Utilities.LocalConfig 21 21 from sas.qtgui.UnitTesting.TestUtils import QtSignalSpy 22 from sas.qtgui.Perspectives.Fitting.ModelThread import Calc1D 23 from sas.qtgui.Perspectives.Fitting.ModelThread import Calc2D 22 24 23 25 from sas.qtgui.Plotting.PlotterData import Data1D … … 260 262 self.widget.cbModel.setCurrentIndex(0) 261 263 262 # Observe factor reset to None263 self.assertEqual(self.widget.cbStructureFactor.currentText(), STRUCTURE_DEFAULT)264 # Observe factor doesn't reset to None 265 self.assertEqual(self.widget.cbStructureFactor.currentText(), 'squarewell') 264 266 265 267 # Switch category to structure factor … … 319 321 Check that the fitting 1D data object is ready 320 322 """ 321 # Mock the thread creation 322 threads.deferToThread = MagicMock() 323 # Model for theory 324 self.widget.SASModelToQModel("cylinder") 325 # Call the tested method 326 self.widget.calculateQGridForModel() 327 time.sleep(1) 328 # Test the mock 329 self.assertTrue(threads.deferToThread.called) 330 self.assertEqual(threads.deferToThread.call_args_list[0][0][0].__name__, "compute") 323 324 if LocalConfig.USING_TWISTED: 325 # Mock the thread creation 326 threads.deferToThread = MagicMock() 327 # Model for theory 328 self.widget.SASModelToQModel("cylinder") 329 # Call the tested method 330 self.widget.calculateQGridForModel() 331 time.sleep(1) 332 # Test the mock 333 self.assertTrue(threads.deferToThread.called) 334 self.assertEqual(threads.deferToThread.call_args_list[0][0][0].__name__, "compute") 335 else: 336 Calc2D.queue = MagicMock() 337 # Model for theory 338 self.widget.SASModelToQModel("cylinder") 339 # Call the tested method 340 self.widget.calculateQGridForModel() 341 time.sleep(1) 342 # Test the mock 343 self.assertTrue(Calc2D.queue.called) 331 344 332 345 def testCalculateResiduals(self): … … 417 430 index = self.widget._poly_model.index(0,0) 418 431 419 #self.widget.show()420 #QtWidgets.QApplication(sys.argv).exec_()421 422 423 432 # Set the checbox 424 433 self.widget._poly_model.item(0,0).setCheckState(2) 425 434 # Assure the parameter is added 426 self.assertEqual(self.widget.p arameters_to_fit, ['radius_bell.width'])435 self.assertEqual(self.widget.poly_params_to_fit, ['radius_bell.width']) 427 436 428 437 # Add another parameter 429 438 self.widget._poly_model.item(2,0).setCheckState(2) 430 439 # Assure the parameters are added 431 self.assertEqual(self.widget.p arameters_to_fit, ['radius_bell.width', 'length.width'])440 self.assertEqual(self.widget.poly_params_to_fit, ['radius_bell.width', 'length.width']) 432 441 433 442 # Change the min/max values … … 638 647 self.assertEqual(self.widget.cmdPlot.text(), 'Show Plot') 639 648 640 self.widget.show()641 642 649 # Set data 643 650 test_data = Data1D(x=[1,2], y=[1,2]) 644 651 item = QtGui.QStandardItem() 652 updateModelItem(item, test_data, "test") 645 653 # Force same data into logic 646 self.widget.logic.data = test_data 647 self.widget.data_is_loaded = True 654 self.widget.data = item 648 655 649 656 # Change the category index so we have a model available … … 683 690 684 691 # Test no fitting params 685 self.widget. parameters_to_fit = []692 self.widget.main_params_to_fit = [] 686 693 687 694 logging.error = MagicMock() … … 691 698 self.widget.close() 692 699 700 def testOnEmptyFit2(self): 693 701 test_data = Data2D(image=[1.0, 2.0, 3.0], 694 702 err_image=[0.01, 0.02, 0.03], … … 701 709 item = QtGui.QStandardItem() 702 710 updateModelItem(item, test_data, "test") 711 703 712 # Force same data into logic 704 713 self.widget.data = item … … 709 718 710 719 # Test no fitting params 711 self.widget. parameters_to_fit = []720 self.widget.main_params_to_fit = [] 712 721 713 722 logging.error = MagicMock() … … 718 727 self.widget.close() 719 728 720 721 def testOnFit1D(self): 729 def notestOnFit1D(self): 722 730 """ 723 731 Test the threaded fitting call … … 735 743 736 744 # Assing fitting params 737 self.widget. parameters_to_fit = ['scale']745 self.widget.main_params_to_fit = ['scale'] 738 746 739 747 # Spying on status update signal … … 748 756 749 757 # the fit button changed caption and got disabled 750 self.assertEqual(self.widget.cmdFit.text(), 'Stop fit') 751 self.assertFalse(self.widget.cmdFit.isEnabled()) 758 # could fail if machine fast enough to finish 759 #self.assertEqual(self.widget.cmdFit.text(), 'Stop fit') 760 #self.assertFalse(self.widget.cmdFit.isEnabled()) 752 761 753 762 # Signal pushed up … … 756 765 self.widget.close() 757 766 758 def testOnFit2D(self):767 def notestOnFit2D(self): 759 768 """ 760 769 Test the threaded fitting call … … 779 788 780 789 # Assing fitting params 781 self.widget. parameters_to_fit = ['scale']790 self.widget.main_params_to_fit = ['scale'] 782 791 783 792 # Spying on status update signal … … 792 801 793 802 # the fit button changed caption and got disabled 794 self.assertEqual(self.widget.cmdFit.text(), 'Stop fit')795 self.assertFalse(self.widget.cmdFit.isEnabled())803 #self.assertEqual(self.widget.cmdFit.text(), 'Stop fit') 804 #self.assertFalse(self.widget.cmdFit.isEnabled()) 796 805 797 806 # Signal pushed up … … 851 860 # Set data 852 861 test_data = Data1D(x=[1,2], y=[1,2]) 853 862 item = QtGui.QStandardItem() 863 updateModelItem(item, test_data, "test") 854 864 # Force same data into logic 855 self.widget.logic.data = test_data 856 self.widget.data_is_loaded = True 865 self.widget.data = item 866 867 # Force same data into logic 857 868 category_index = self.widget.cbCategory.findText('Sphere') 858 self.widget.cbCategory.setCurrentIndex(category_index) 859 self.widget.parameters_to_fit = ['scale'] 869 870 self.widget.cbCategory.setCurrentIndex(category_index) 871 self.widget.main_params_to_fit = ['scale'] 860 872 # Invoke the tested method 861 873 fp = self.widget.currentState() … … 905 917 906 918 # Test no fitting params 907 self.widget. parameters_to_fit = ['scale']919 self.widget.main_params_to_fit = ['scale'] 908 920 909 921 # Invoke the tested method … … 937 949 # Set data 938 950 test_data = Data1D(x=[1,2], y=[1,2]) 939 951 item = QtGui.QStandardItem() 952 updateModelItem(item, test_data, "test") 940 953 # Force same data into logic 941 self.widget.logic.data = test_data 942 self.widget.data_is_loaded = True 954 self.widget.data = item 943 955 category_index = self.widget.cbCategory.findText("Sphere") 944 956 self.widget.cbCategory.setCurrentIndex(category_index) 945 self.widget. parameters_to_fit = ['scale']957 self.widget.main_params_to_fit = ['scale'] 946 958 947 959 # Invoke the tested method … … 954 966 self.assertEqual(fp.current_category, "Sphere") 955 967 self.assertEqual(fp.current_model, "adsorbed_layer") 956 self.assertListEqual(fp. parameters_to_fit, ['scale'])968 self.assertListEqual(fp.main_params_to_fit, ['scale']) 957 969 958 970 def testPushFitPage(self): … … 962 974 # Set data 963 975 test_data = Data1D(x=[1,2], y=[1,2]) 964 976 item = QtGui.QStandardItem() 977 updateModelItem(item, test_data, "test") 965 978 # Force same data into logic 966 self.widget.logic.data = test_data 967 self.widget.data_is_loaded = True 979 self.widget.data = item 968 980 category_index = self.widget.cbCategory.findText("Sphere") 969 981 … … 974 986 self.widget.undo_supported = True 975 987 self.widget.cbCategory.setCurrentIndex(category_index) 976 self.widget. parameters_to_fit = ['scale']988 self.widget.main_params_to_fit = ['scale'] 977 989 978 990 # Check that the stack is updated
Note: See TracChangeset
for help on using the changeset viewer.