slfan1989 commented on code in PR #13831: URL: https://github.com/apache/iceberg/pull/13831#discussion_r2319383501
########## flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/maintenance/operator/TestDeleteFilesProcessor.java: ########## @@ -74,27 +75,158 @@ void testDeleteMissingFile() throws Exception { Path dummyFile = FileSystems.getDefault().getPath(table.location().substring(5), DUMMY_FILE_NAME); - deleteFile(tableLoader(), dummyFile.toString()); + deleteFile(tableLoader(), dummyFile.toString(), true /* expectSuccess */); assertThat(listFiles(table)).isEqualTo(TABLE_FILES); } @Test void testInvalidURIScheme() throws Exception { - deleteFile(tableLoader(), "wrong://"); + deleteFile(tableLoader(), "wrong://", false /* expectFail */); assertThat(listFiles(table)).isEqualTo(TABLE_FILES); } - private void deleteFile(TableLoader tableLoader, String fileName) throws Exception { - tableLoader().open(); + @Test + void testDeleteNonExistentFile() throws Exception { + String nonexistentFile = "nonexistentFile.txt"; + + deleteFile(tableLoader(), nonexistentFile, true /* expectSuccess */); + + assertThat(listFiles(table)).isEqualTo(TABLE_FILES); + } + + @Test + void testDelete10MBFile() throws Exception { + // Simulate a large file (e.g., 10MB file) + String largeFileName = "largeFile.txt"; + Path largeFile = Path.of(tablePath(table).toString(), largeFileName); + + // Write a large file to disk (this will simulate the large file in the filesystem) + byte[] largeData = new byte[1024 * 1024 * 10]; // 10 MB + Files.write(largeFile, largeData); + + // Verify that the file was created + Set<String> files = listFiles(table); + assertThat(files).contains(largeFileName); + + // Use the DeleteFilesProcessor to delete the large file + deleteFile(tableLoader(), largeFile.toString(), true /* expectSuccess */); + + // Verify that the large file has been deleted + files = listFiles(table); + assertThat(files).doesNotContain(largeFileName); + } Review Comment: Apologies for the inconvenience. Since I am responsible for the development of part of the storage software at the company, I’ve been using a fixed testing approach (such as deleting large files), but these methods may not be fully compatible with the current scenario. I agree with your point that this unit test is unnecessary, and I have already removed it. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org