@@ -73,20 +73,19 @@ def test_initial_start_dir(self):
7373
7474 with patch ("os.path.exists" , return_value = True ):
7575 widget .filename = _w ("/usr/foo/bar.csv" )
76- self .assertEqual (widget .initial_start_dir (), widget .filename )
76+ self .assertEqual (widget .initial_start_dir (), widget .filename [: - 4 ] )
7777
7878 widget .filename = ""
7979 widget .last_dir = _w ("/usr/bar" )
8080 self .assertEqual (widget .initial_start_dir (), _w ("/usr/bar/" ))
8181
8282 widget .last_dir = _w ("/usr/bar" )
8383 self .send_signal (widget .Inputs .data , self .iris )
84- self .assertEqual (widget .initial_start_dir (),
85- _w ("/usr/bar/iris.csv" ))
84+ self .assertEqual (widget .initial_start_dir (), _w ("/usr/bar/iris" ))
8685
8786 widget .last_dir = ""
8887 self .assertEqual (widget .initial_start_dir (),
89- os .path .expanduser (_w ("~/iris.csv " )))
88+ os .path .expanduser (_w ("~/iris" )))
9089
9190 @patch ("Orange.widgets.utils.save.owsavebase.QFileDialog.getSaveFileName" )
9291 def test_save_file_sets_name (self , _filedialog ):
@@ -521,15 +520,6 @@ def test_save_file_dialog_uses_valid_filters_linux(self):
521520@unittest .skipUnless (sys .platform in ("darwin" , "win32" ),
522521 "Test for native dialog on Windows and macOS" )
523522class TestOWSaveDarwinDialog (OWSaveTestBase ): # pragma: no cover
524- if sys .platform == "darwin" :
525- @staticmethod
526- def remove_star (filt ):
527- return filt .replace (" (*." , " (." )
528- else :
529- @staticmethod
530- def remove_star (filt ):
531- return filt
532-
533523 @patch ("Orange.widgets.utils.save.owsavebase.QFileDialog" )
534524 def test_get_save_filename_darwin (self , dlg ):
535525 widget = self .widget
@@ -540,14 +530,11 @@ def test_get_save_filename_darwin(self, dlg):
540530 instance = dlg .return_value
541531 instance .exec .return_value = dlg .Accepted = QFileDialog .Accepted
542532 instance .selectedFiles .return_value = ["foo" ]
543- instance .selectedNameFilter .return_value = self . remove_star ( "aa (*.a)" )
533+ instance .selectedNameFilter .return_value = "aa (*.a)"
544534 self .assertEqual (widget .get_save_filename (), ("foo.a" , "aa (*.a)" ))
545535 self .assertEqual (dlg .call_args [0 ][2 ], "baz" )
546- self .assertEqual (
547- dlg .call_args [0 ][3 ],
548- self .remove_star ("aa (*.a);;bb (*.b);;cc (*.c)" ))
549- instance .selectNameFilter .assert_called_with (
550- self .remove_star ("bb (*.b)" ))
536+ self .assertEqual (dlg .call_args [0 ][3 ], "aa (*.a);;bb (*.b);;cc (*.c)" )
537+ instance .selectNameFilter .assert_called_with ("bb (*.b)" )
551538
552539 instance .exec .return_value = dlg .Rejected = QFileDialog .Rejected
553540 self .assertEqual (widget .get_save_filename (), ("" , "" ))
@@ -567,7 +554,7 @@ def test_save_file_dialog_enforces_extension_darwin(self, dlg):
567554 instance = dlg .return_value
568555 instance .exec .return_value = QFileDialog .Accepted
569556
570- instance .selectedNameFilter .return_value = self . remove_star ( filter1 )
557+ instance .selectedNameFilter .return_value = filter1
571558 instance .selectedFiles .return_value = ["foo" ]
572559 self .assertEqual (widget .get_save_filename ()[0 ], "foo.tab" )
573560 instance .selectedFiles .return_value = ["foo.pkl" ]
@@ -579,7 +566,7 @@ def test_save_file_dialog_enforces_extension_darwin(self, dlg):
579566 instance .selectedFiles .return_value = ["foo.bar" ]
580567 self .assertEqual (widget .get_save_filename ()[0 ], "foo.bar.tab" )
581568
582- instance .selectedNameFilter .return_value = self . remove_star ( filter2 )
569+ instance .selectedNameFilter .return_value = filter2
583570 instance .selectedFiles .return_value = ["foo" ]
584571 self .assertEqual (widget .get_save_filename ()[0 ], "foo.csv.gz" )
585572 instance .selectedFiles .return_value = ["foo.pkl" ]
@@ -591,36 +578,6 @@ def test_save_file_dialog_enforces_extension_darwin(self, dlg):
591578 instance .selectedFiles .return_value = ["foo.bar" ]
592579 self .assertEqual (widget .get_save_filename ()[0 ], "foo.bar.csv.gz" )
593580
594- @patch ("Orange.widgets.utils.save.owsavebase.QFileDialog" )
595- @patch ("os.path.exists" , new = lambda x : x == "old.tab" )
596- @patch ("Orange.widgets.utils.save.owsavebase.QMessageBox" )
597- def test_save_file_dialog_asks_for_overwrite_darwin (self , msgbox , dlg ):
598- def selected_files ():
599- nonlocal attempts
600- attempts += 1
601- return [["old.tab" , "new.tab" ][attempts ]]
602-
603- widget = self .widget
604- widget .initial_start_dir = lambda : "baz"
605- filter1 = "" # prevent pylint warning 'undefined-loop-variable'
606- for filter1 in widget .get_filters ():
607- if OWSaveBase ._extension_from_filter (filter1 ) == ".tab" :
608- break
609-
610- widget .filter = filter1
611- instance = dlg .return_value
612- instance .exec .return_value = QFileDialog .Accepted
613- instance .selectedFiles = selected_files
614- instance .selectedNameFilter .return_value = self .remove_star (filter1 )
615-
616- attempts = - 1
617- msgbox .question .return_value = msgbox .Yes = 1
618- self .assertEqual (widget .get_save_filename ()[0 ], "old.tab" )
619-
620- attempts = - 1
621- msgbox .question .return_value = msgbox .No = 0
622- self .assertEqual (widget .get_save_filename ()[0 ], "new.tab" )
623-
624581 @patch ("Orange.widgets.utils.save.owsavebase.QFileDialog" )
625582 def test_save_file_dialog_uses_valid_filters_darwin (self , dlg ):
626583 widget = self .widget
@@ -629,10 +586,8 @@ def test_save_file_dialog_uses_valid_filters_darwin(self, dlg):
629586 instance = dlg .return_value
630587 instance .exec .return_value = dlg .Rejected = QFileDialog .Rejected
631588 widget .get_save_filename ()
632- self .assertEqual (
633- dlg .call_args [0 ][3 ], self .remove_star ("aa (*.a);;bb (*.b)" ))
634- instance .selectNameFilter .assert_called_with (
635- self .remove_star ("aa (*.a)" ))
589+ self .assertEqual (dlg .call_args [0 ][3 ], "aa (*.a);;bb (*.b)" )
590+ instance .selectNameFilter .assert_called_with ("aa (*.a)" )
636591
637592
638593if __name__ == "__main__" :
0 commit comments