@@ -110,30 +110,42 @@ def test_copy_data_set_or_member_should_be_possible(self):
110110 self .assertTrue (command_output == None )
111111
112112 def test_mount_unmount_zfs_file_system (self ):
113- """Mounting a zfs filesystem should be possible"""
114- username = self .user_name .lower ()
113+ """Test mounting and unmounting, with safety nets."""
115114 mount_point = self .files_fixtures ["TEST_USS_MOUNT" ]
115+
116+ # Create and register safety cleanup
117+ self .files .fs .create (self .test2_zfs_file_system , self .create_zfs_options )
118+ self .addCleanup (self ._safe_delete_fs , self .test2_zfs_file_system )
116119
117- # Create a zfs file system
118- zfs_file_system = self .files .fs .create (self .test2_zfs_file_system , self .create_zfs_options )
120+ # Mount and register safety cleanup
121+ self .files .fs .mount (self .test2_zfs_file_system , mount_point , self .mount_zfs_file_system_options )
122+ self .addCleanup (self ._safe_unmount_fs , self .test2_zfs_file_system )
119123
120- # Mount file system
121- command_output = self .files .fs .mount (
122- self .test2_zfs_file_system , mount_point , self .mount_zfs_file_system_options
123- )
124- self .assertTrue (command_output == None )
125-
126- # List a zfs file system
124+ # Verify mount success
127125 command_output = self .files .fs .list (file_system_name = self .test2_zfs_file_system .upper ())
128- self .assertTrue (len (command_output ["items" ]) > 0 )
126+ self .assertGreater (len (command_output ["items" ]), 0 )
129127
130- # Unmount file system
131- command_output = self .files .fs .unmount (self .test2_zfs_file_system )
132- self .assertTrue ( command_output == None )
128+ # Verify unmount success
129+ unmount_response = self .files .fs .unmount (self .test2_zfs_file_system )
130+ self .assertIsNone ( unmount_response )
133131
134- # Delete file system
135- command_output = self .files .fs .delete (self .test2_zfs_file_system )
136- self .assertTrue (command_output == None )
132+ # Verify delete success
133+ delete_response = self .files .fs .delete (self .test2_zfs_file_system )
134+ self .assertIsNone (delete_response )
135+
136+ def _safe_unmount_fs (self , fs_name ):
137+ """Idempotent helper: Unmounts but ignores errors if already unmounted."""
138+ try :
139+ self .files .fs .unmount (fs_name )
140+ except Exception :
141+ pass
142+
143+ def _safe_delete_fs (self , fs_name ):
144+ """Idempotent helper: Deletes but ignores errors if already deleted."""
145+ try :
146+ self .files .fs .delete (fs_name )
147+ except Exception :
148+ pass
137149
138150 def test_upload_download_delete_dataset (self ):
139151 try : # small cleanup in case if the test was failed previously
0 commit comments