I am attempting to create jUnit tests for some code that generates tar files. During testing I will be creating a variety of tar files and comparing them to "Gold" tar images of the expected output. I have been struggling to create an assertTarEquals(String file1, String file2) function, and was hoping someone could provide guidance as to the best approach. It's not important to have the tar file entries in the same order, or with the same attributes. I just need to verify that they have all the same files and that those files contain the same content. I have created a assertZipEquals(String file1, String file2) based on the example provided here: http://www.java2s.com/Tutorial/Java/0180__File/Comparetwozipfiles.htm but the ZipFile.getInputSteam(EntryName) does not appear to have a parallel function in the Commons Tar classes, as they have not implemented markers in the TarInputStream.
What is the best way to compare tar archives in junit testing
1.8k views Asked by Mike Storey At
1
There are 1 answers
Related Questions in JAVA
- I need the BIRT.war that is compatible with Java 17 and Tomcat 10
- Creating global Class holder
- No method found for class java.lang.String in Kafka
- Issue edit a jtable with a pictures
- getting error when trying to launch kotlin jar file that use supabase "java.lang.NoClassDefFoundError"
- Does the && (logical AND) operator have a higher precedence than || (logical OR) operator in Java?
- Mixed color rendering in a JTable
- HTTPS configuration in Spring Boot, server returning timeout
- How to use Layout to create textfields which dont increase in size?
- Function for making the code wait in javafx
- How to create beans of the same class for multiple template parameters in Spring
- How could you print a specific String from an array with the values of an array from a double array on the same line, using iteration to print all?
- org.telegram.telegrambots.meta.exceptions.TelegramApiException: Bot token and username can't be empty
- Accessing Secret Variables in Classic Pipelines through Java app in Azure DevOps
- Postgres && statement Error in Mybatis Mapper?
Related Questions in JUNIT
- Embedded Kafka Failed to Start After Spring Starter Parent Version 3.1.10
- Springframework test: Async not started
- Problems running both JUnit tests and Selenium/Cucumber tests at the same time
- Writing test methods with shared expensive set-up
- Mocking Stream or Reader in Java Junit
- Junit test: NoSuchElementException, Mock getConnection
- Get program traces with JaCoCo
- Junit test with Mockito: Error ExceptionInInitializerError
- How to Mock HttpResponse
- How to mock dependency in service class from Junit
- classNotPreparedForTest exception, using JUNIT5, MOCKITO and POWERMOCKITO
- Ant Junit ForkMode with Suites
- I import JUnit to Eclipse and still does not work
- Mock DriverManager.getconnection method for junit/mockito unit tests
- throwing a StaleElementReferenceException during dictionary iteration in a for loop
Related Questions in TAR
- Differential backup for delete and restoring files and folders
- .ova file to run in a Docker container
- tar extract zip archive from file or STDIN - discrepancy
- How can I write a streaming tar file from a generator?
- Excluding files from top level directory when extracting tar archives
- Tar: Cannot stat: No such file or directory
- Error installing package in Octave Portable on Windows 10
- I received a 'no space left on device' error during the untarring process, even though I have enough space and sufficient inodes
- Dynamic tar/archive creation in Mojolicious
- yarn install starts failing randomly with tar content of undefined failed
- libarchive error code -30 opening a tarball: Unrecognized archive format
- Is there a library in React Native for compressing to tar and then zipping with gzip to create a tar.gz?
- Extract specific folders from tar.gz archive
- Create tar from multiple folders and change folder name
- Why reading a compressed TAR file in reverse order is 100x slower?
Related Questions in APACHE-COMMONS-COMPRESS
- Example of extracting a zip file in memory to CMIS using Java
- How to get list of files in an archive file without download
- Libgdx and android studio
- FileOutputStream(No such file or directory)(No such file or directory)
- How to create a .tar.gz file, RETAINING the same folder/directory structure, in Java
- How to locally download a .tar.gz file on the server created using TarArchiveOutputStream
- SXSSFWorkbook "File contains corrupted data" Error using OpenXml after upgrading from 3.17 to 5.2 or 5.2.2
- Apache Commons Compress as solution to Zip Bomb
- BZip2 "selectorMtf value too big" error when decompressing
- I'm getting a problem with apache commons compress
- What is this package source starting with gav:// and how to upgrade a package from this source?
- org.tukaani.xz.CorruptedInputException: Compressed data is corrupt while extracting 7z archive File in java
- Apache Commons Compress: ZipArchiveEntry.getUnixMode() always returns 0
- How to convert TarArchiveOutputStream to byte array without saving into file system
- Random file access from a tar archive in java
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
I would typically agree that unit testing is no place for testing Archives, but the code that is being tested manages the creation of archives, so in my mind it is not only appropriate but necessary. The code below is pretty ugly, and I would never want to use something like this in production code, but for testing I guess it's ok.... here's the code I'm using for assertArchiveEquals, it supports both tar and zip files.... as always all feedback is welcome.