2424
2525import io
2626import os
27+ import shutil
2728import tempfile
2829import sys
2930
@@ -728,7 +729,7 @@ def test_131_set_get_default_whitelist(self, mock_subprocess):
728729
729730
730731 @unittest .mock .patch ('subprocess.check_call' )
731- def test_140_remove_appvm_cleans_menu_file (self , mock_subprocess ):
732+ def test_140_remove_cleans_menu_files (self , mock_subprocess ):
732733 tpl = TestVM ('test-inst-tpl' ,
733734 klass = 'TemplateVM' ,
734735 virt_mode = 'pvh' ,
@@ -746,20 +747,20 @@ def test_140_remove_appvm_cleans_menu_file(self, mock_subprocess):
746747 self .ext .appmenus_init (appvm )
747748 self .ext .appmenus_create (appvm , refresh_cache = False )
748749
749- # Simulate leftover .menu files left by xdg-desktop-menu install
750750 config_dir = tempfile .mkdtemp ()
751751 try :
752752 menus_dir = os .path .join (config_dir , 'menus' , 'applications-merged' )
753753 os .makedirs (menus_dir )
754754 escaped = qubesappmenus .vm_name_escape (appvm .name )
755+ # current-format .menu file
755756 menu_file = os .path .join (menus_dir ,
756- 'user-qubes-vm-directory' + escaped + '.menu' )
757+ 'user-qubes-vm-directory' + escaped + '.menu' )
758+ # old-format .menu file (pre-escaping)
757759 old_menu_file = os .path .join (menus_dir ,
758- 'user-qubes-vm-directory-' + appvm .name + '.menu' )
759- with open (menu_file , 'w' , encoding = 'utf-8' ) as f :
760- f .write ('<Menu/>\n ' )
761- with open (old_menu_file , 'w' , encoding = 'utf-8' ) as f :
762- f .write ('<Menu/>\n ' )
760+ 'user-qubes-vm-directory-' + appvm .name + '.menu' )
761+ for path in (menu_file , old_menu_file ):
762+ with open (path , 'w' , encoding = 'utf-8' ) as f :
763+ f .write ('<Menu/>\n ' )
763764
764765 with unittest .mock .patch ('xdg.BaseDirectory.xdg_config_home' ,
765766 config_dir ):
0 commit comments