@Test
public void testDelete1() throws CatalogException, IOException {
String filePath = "data/";
Query query = new Query()
.append(FileDBAdaptor.QueryParams.STUDY_UID.key(), studyUid)
.append(FileDBAdaptor.QueryParams.PATH.key(), filePath);
QueryResult<File> fileQueryResult = catalogManager.getFileManager().get(studyFqn, query, null, sessionIdUser);
catalogManager.getFileManager().setStatus(studyFqn, filePath, File.FileStatus.MISSING, null, sessionIdUser);
WriteResult deleteResult = catalogManager.getFileManager().delete(studyFqn,
new Query(FileDBAdaptor.QueryParams.UID.key(), fileQueryResult.first().getUid()), null, sessionIdUser);
assertEquals(1, deleteResult.getNumMatches());
assertEquals(0, deleteResult.getNumModified());
assertTrue(deleteResult.getFailed().get(0).getMessage().contains("Cannot delete"));
catalogManager.getFileManager().setStatus(studyFqn, filePath, File.FileStatus.STAGE, null, sessionIdUser);
deleteResult = catalogManager.getFileManager().delete(studyFqn, new Query(FileDBAdaptor.QueryParams.UID.key(),
fileQueryResult.first().getUid()), null, sessionIdUser);
assertEquals(1, deleteResult.getNumMatches());
assertEquals(0, deleteResult.getNumModified());
assertTrue(deleteResult.getFailed().get(0).getMessage().contains("Cannot delete"));
catalogManager.getFileManager().setStatus(studyFqn, filePath, File.FileStatus.READY, null, sessionIdUser);
deleteResult = catalogManager.getFileManager().delete(studyFqn, new Query(FileDBAdaptor.QueryParams.UID.key(),
fileQueryResult.first().getUid()), null, sessionIdUser);
assertEquals(6, deleteResult.getNumMatches());
assertEquals(6, deleteResult.getNumModified());
}