@@ -1725,30 +1725,28 @@ def test_search_file(self):
17251725 self .assertErrorRegex (EasyBuildError , "Invalid search query" , ft .search_file , [test_ecs ], pattern )
17261726
17271727 def test_is_empty_folder (self ):
1728- tmpdir = tempfile .mkdtemp ()
1729- self .assertTrue (ft .is_empty_folder (tmpdir ))
1730- # Containing a folder is still empty
1731- subdir = tempfile .mkdtemp (dir = tmpdir )
1732- self .assertTrue (ft .is_empty_folder (tmpdir ))
1733- # A file in a subfolder makes it non-empty
1734- sub_filename = os .path .join (subdir , 'testfile.h' )
1735- ft .write_file (sub_filename , '' )
1736- self .assertFalse (ft .is_empty_folder (tmpdir ))
1737- # A file in the folder makes it non-empty
1738- filename = os .path .join (tmpdir , 'testfile.h' )
1739- ft .write_file (filename , '' )
1740- self .assertFalse (ft .is_empty_folder (tmpdir ))
1741- # And even when the file in the subfolder or the subfolder is removed
1742- # as 'filename' stays
1743- os .remove (sub_filename )
1744- self .assertFalse (ft .is_empty_folder (tmpdir ))
1745- os .rmdir (subdir )
1746- self .assertFalse (ft .is_empty_folder (tmpdir ))
1747- # And true again when the file is removed
1748- os .remove (filename )
1749- self .assertTrue (ft .is_empty_folder (tmpdir ))
1750- # Cleanup
1751- os .rmdir (tmpdir )
1728+ def makedirs_in_test (* paths ):
1729+ """Make dir specified by paths and return top-level folder"""
1730+ os .makedirs (os .path .join (self .test_prefix , * paths ))
1731+ return os .path .join (self .test_prefix , paths [0 ])
1732+
1733+ empty_dir = makedirs_in_test ('empty_dir' )
1734+ self .assertTrue (ft .is_empty_folder (empty_dir ))
1735+
1736+ dir_w_subdir = makedirs_in_test ('dir_w_subdir' , 'sub_dir' )
1737+ self .assertTrue (ft .is_empty_folder (dir_w_subdir ))
1738+
1739+ dir_subdir_file = makedirs_in_test ('dir_subdir_file' , 'sub_dir_w_file' )
1740+ ft .write_file (os .path .join (dir_subdir_file , 'sub_dir_w_file' , 'file.h' ), '' )
1741+ self .assertFalse (ft .is_empty_folder (dir_subdir_file ))
1742+
1743+ dir_w_file = makedirs_in_test ('dir_w_file' )
1744+ ft .write_file (os .path .join (dir_w_file , 'file.h' ), '' )
1745+ self .assertFalse (ft .is_empty_folder (dir_w_file ))
1746+
1747+ dir_w_dir_and_file = makedirs_in_test ('dir_w_dir_and_file' , 'sub_dir' )
1748+ ft .write_file (os .path .join (dir_w_dir_and_file , 'file.h' ), '' )
1749+ self .assertFalse (ft .is_empty_folder (dir_w_dir_and_file ))
17521750
17531751 def test_find_eb_script (self ):
17541752 """Test find_eb_script function."""
0 commit comments