示例#1
0
 def test_create_folder_repeat(self):
     """Test create folder with identifier factory that not always returns
     a unique identifier.
     """
     store = DefaultObjectStore(identifier_factory=IdFactory(
         max_attempts=MAX_ATTEMPS - 1))
     id1 = store.create_folder(BASE_DIRECTORY)
     id2 = store.create_folder(BASE_DIRECTORY)
     self.assertNotEqual(id1, id2)
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, id1)))
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, id2)))
     store.delete_folder(store.join(BASE_DIRECTORY, id1))
     store.delete_folder(store.join(BASE_DIRECTORY, id2))
     store = DefaultObjectStore(identifier_factory=IdFactory(
         max_attempts=MAX_ATTEMPS + 1))
     id1 = store.create_folder(BASE_DIRECTORY)
     with self.assertRaises(RuntimeError):
         store.create_folder(BASE_DIRECTORY)
示例#2
0
 def test_create_and_delete_folder(self):
     """Test default functionality of create_folder and delete_folder
     methods.
     """
     store = DefaultObjectStore()
     self.assertEqual(store.create_folder(BASE_DIRECTORY, identifier='A'),
                      'A')
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, 'A')))
     self.assertTrue(os.path.isdir(os.path.join(BASE_DIRECTORY, 'A')))
     identifier = store.create_folder(BASE_DIRECTORY)
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, identifier)))
     self.assertTrue(os.path.isdir(os.path.join(BASE_DIRECTORY,
                                                identifier)))
     # New store with short identifier factory
     store = DefaultObjectStore(identifier_factory=get_short_identifier)
     short_id = store.create_folder(BASE_DIRECTORY)
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, short_id)))
     self.assertTrue(os.path.isdir(os.path.join(BASE_DIRECTORY, short_id)))
     # Delete folder with identifier
     store.delete_folder(store.join(BASE_DIRECTORY, identifier))
     self.assertFalse(store.exists(store.join(BASE_DIRECTORY, identifier)))
     self.assertFalse(
         os.path.isdir(os.path.join(BASE_DIRECTORY, identifier)))
     # Delete folder with short_id when the keep_deleted_files flag is True
     store = DefaultObjectStore(keep_deleted_files=True)
     store.delete_folder(store.join(BASE_DIRECTORY, short_id))
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, short_id)))
     self.assertTrue(os.path.isdir(os.path.join(BASE_DIRECTORY, short_id)))
     # Delete folder 'A' overriding the keep_deleted_files flag
     self.assertTrue(store.exists(store.join(BASE_DIRECTORY, 'A')))
     self.assertTrue(os.path.isdir(os.path.join(BASE_DIRECTORY, 'A')))
     store.delete_folder(store.join(BASE_DIRECTORY, 'A'), force_delete=True)
     self.assertFalse(store.exists(store.join(BASE_DIRECTORY, 'A')))
     self.assertFalse(os.path.isdir(os.path.join(BASE_DIRECTORY, 'A')))