11# Test methods with long descriptive names can omit docstrings
2- # pylint: disable=missing-docstring
2+ # pylint: disable=missing-docstring, protected-access
33from unittest .mock import Mock
44
55from numpy import testing as npt
99from Orange .widgets .data .owtransform import OWTransform
1010from Orange .widgets .tests .base import WidgetTest
1111from Orange .widgets .unsupervised .owpca import OWPCA
12+ from Orange .widgets .utils .state_summary import format_summary_details , \
13+ format_multiple_summaries
1214
1315
1416class TestOWTransform (WidgetTest ):
@@ -19,6 +21,8 @@ def setUp(self):
1921
2022 def test_output (self ):
2123 # send data and template data
24+ info = self .widget .info
25+ no_input , no_output = "No data on input" , "No data on output"
2226 self .send_signal (self .widget .Inputs .data , self .data [::15 ])
2327 self .send_signal (self .widget .Inputs .template_data , self .disc_data )
2428 output = self .get_output (self .widget .Outputs .transformed_data )
@@ -29,6 +33,14 @@ def test_output(self):
2933 self .widget .template_label .text ())
3034 self .assertEqual ("Output data includes 4 features." ,
3135 self .widget .output_label .text ())
36+ data_list = [("Data" , self .data [::15 ]), ("Template data" , self .disc_data )]
37+ summary , details = "10, 150" , format_multiple_summaries (data_list )
38+ self .assertEqual (info ._StateInfo__input_summary .brief , summary )
39+ self .assertEqual (info ._StateInfo__input_summary .details , details )
40+ summary , details = "10" , format_summary_details (output )
41+ self .assertEqual (info ._StateInfo__output_summary .brief , summary )
42+ self .assertEqual (info ._StateInfo__output_summary .details , details )
43+
3244
3345 # remove template data
3446 self .send_signal (self .widget .Inputs .template_data , None )
@@ -39,6 +51,12 @@ def test_output(self):
3951 self .assertEqual ("No template data on input." ,
4052 self .widget .template_label .text ())
4153 self .assertEqual ("" , self .widget .output_label .text ())
54+ data_list = [("Data" , self .data [::15 ]), ("Template data" , None )]
55+ summary , details = "10, 0" , format_multiple_summaries (data_list )
56+ self .assertEqual (info ._StateInfo__input_summary .brief , summary )
57+ self .assertEqual (info ._StateInfo__input_summary .details , details )
58+ self .assertEqual (info ._StateInfo__output_summary .brief , "" )
59+ self .assertEqual (info ._StateInfo__output_summary .details , no_output )
4260
4361 # send template data
4462 self .send_signal (self .widget .Inputs .template_data , self .disc_data )
@@ -59,13 +77,23 @@ def test_output(self):
5977 self .assertEqual ("Template data includes 4 features." ,
6078 self .widget .template_label .text ())
6179 self .assertEqual ("" , self .widget .output_label .text ())
80+ data_list = [("Data" , None ), ("Template data" , self .disc_data )]
81+ summary , details = "0, 150" , format_multiple_summaries (data_list )
82+ self .assertEqual (info ._StateInfo__input_summary .brief , summary )
83+ self .assertEqual (info ._StateInfo__input_summary .details , details )
84+ self .assertEqual (info ._StateInfo__output_summary .brief , "" )
85+ self .assertEqual (info ._StateInfo__output_summary .details , no_output )
6286
6387 # remove template data
6488 self .send_signal (self .widget .Inputs .template_data , None )
6589 self .assertEqual ("No data on input." , self .widget .input_label .text ())
6690 self .assertEqual ("No template data on input." ,
6791 self .widget .template_label .text ())
6892 self .assertEqual ("" , self .widget .output_label .text ())
93+ self .assertEqual (info ._StateInfo__input_summary .brief , "" )
94+ self .assertEqual (info ._StateInfo__input_summary .details , no_input )
95+ self .assertEqual (info ._StateInfo__output_summary .brief , "" )
96+ self .assertEqual (info ._StateInfo__output_summary .details , no_output )
6997
7098 def assertTableEqual (self , table1 , table2 ):
7199 self .assertIs (table1 .domain , table2 .domain )
0 commit comments