Skip to main content
Topic: Archive tester - Tool to facilitate testing collections of archives, incl. FLAC (Read 2043 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Archive tester - Tool to facilitate testing collections of archives, incl. FLAC

"Archive tester" is a tool to facilitate testing of massive collections of mixed archive files such as *.7z, *.bz2, *.gz , *.rar *.tar, *.xz, *.zip, *.exe, *.r00/r01, *.z00/z01, *.001... and *.flac. I think that it may be useful to other people so I recently made it a little cleaner and made it available.

Originally, it tested *.rar, *.7z and *.zip files. Recently I include support for more types supported by 7z.exe, and the support for *.flac files. *

It is still a very fresh project and (constructive) feedback is welcome.

You may find it at: http://thomasconte.net/it/tools/archive-tester/


* You need to give it the path to flac.exe and 7z.exe in the Settings tab. Requires .NET 4.0+. Tested with 7z.exe 16.04 [64], flac.exe 1.3.2 win32/win64. UnRAR.exe is included in the application files.

Re: Archive tester 0.1.3.2 – Including FLAC testing

Reply #1
Version 0.1.4.0 available:
- Skip button (skips current file being tested)
- Timeout setting (skips current file being tested)
- Progress bar now based on byte progress instead of file progress.

Re: Archive tester 0.1.3.2 – Including FLAC testing

Reply #2
Version 0.1.4.1 available

Some bug fixes and improvements, see section "Version history" after following link in original post.

Re: Archive tester 0.1.3.2 – Including FLAC testing

Reply #3
Does it use FLAC files own md5 checksum tag or what does it check to know if they are alright?

Re: Archive tester 0.1.3.2 – Including FLAC testing

Reply #4
The output of flac.exe test function. So it's flac.exe that is performing the largest part of the test, I guess it's using it's MD5 but "Archive tester" doesn't access it directly (I could give it a try for future versions but that is not planned for now).

 

Re: Archive tester - Tool to facilitate testing collections of archives, incl. FLAC

Reply #5
Version 0.2.0.0 is available (big update).

Change log
Parallel testing (~multithreading)
  • Testing processes can now be ran in parallel (multithreaded). Default thread count is based on .NET's "Environment.ProcessorCount" which counts your computer's logical cores. There is a setting to change this manually too.
    Previous version was singlethreaded, relying on the fact the algorithms such as RAR5 are multithreaded. But some, for instance RAR4, are not multithreaded. This should bring a huge performance gain when testing a large number of files encoded with singlethreaded algorithms (or at least when testing algorithms are singlethreaded).
Multivolume: I still have a more flexible file extension/tester matching system in mind, but here is already something that should solve many cases.
  • *.001 are now testable through 7z.exe
  • *.r00 and *.r01 are now testable through UnRAR.exe, *.r01 is considered non testable if matching *.z00 exists in the same folder.
  • *.z00 and *.z01 are now testable through 7z.exe, *.z01 is considered non testable if matching *.z00 exists in the same folder.
  • Prevented case when all files ending with *.rar but belonging to the same multivolume archive would get tested along with each other. Which resulted in n2-1 redundant tests (if I got the formula right). Files ending with ".part1.rar" are still considered testable while all other volume, following pattern ".part[N].rar" are now considered non-testable.
  • ?: Should multivolume non-first volumes be counted as non-testable or simply ignored? For now they are counted as non-testable.
Self-extracting I still have a more flexible file extension/tester matching system in mind, but here is already something that should solve many cases.
  • *.exe are now optionally testable. *.exe first get tested with UnRAR.exe, if not a RAR archive, a *.exe file will then be tested by 7z.exe, if failed, it will be counted as failed test. There is a checkbox to test or ignore *.exe files. Default value: false.
Benchmarking:
  • Added "kB/s" indicator.
Targeting tuning:
  • In the "Inputs: Paths to be tested" field, you may now include/exclude specific files, the same way you would include/exclude a folder.
  • There is now a setting to automatically skip some folders by name (separated with "|"). Default value: System Volume Information | $RECYCLE.BIN. (In previous versions, "$RECYCLE.BIN" was hard-coded.)
  • Prevented cases when some file could be tester multiple times or counted multiple times as non testable files (typically if a folder and its parent folder were both set as inputs).
Stability and efficiency
  • Closing main form/application now more efficiently closes background threads.
  • Stopping during discovery process will now be much faster (kind of instant).
UI:
  • At first start, the input text field is now filled with a demo/tutorial, that should be able to scan you all computer if started.
  • Tests that have been stopped by clicking on "Stop" now count as skipped.
  • Possible future improvement: Progress indicators work fine is the full process is ran. Using "Skip" or "Stop" buttons result in skipping files, which may make progress indicators interpretation arguable. This does not look like a priority but may possibly be re-thought in the future. Probably in a smaller update.
UI consistency:
  • "Skip" button is now disabled during the discovery process and only activated during testing process.
  • Progress indicators that can only be evaluated after at least one file has been tested (such as "Est. total time") now read "?" before they can be evaluated, instead of "00:00:00.0000000".
  • "Launch/Testing" button now reads "Scanning" during the scanning process (instead of "Testing").
  • "Time spent on current file" is replaced with the count of active parallel tests when parallel testing.
  • .exe path text boxes and most setting buttons are now disabled while processing.
Dependencies and compatibility:
  • Tested with UnRAR.exe 5.60 and 7-Zip 18.05.
  • Update UnRAR.exe to version 5.60
Possible issue(s):
  • On my Win7 computer, stopping the testing process ("Stop" button") gets the application stuck with one running parallel test running (according to UI). This did not happen on the Win10 computer where I write the code. Cause unidentified so far.

 
SimplePortal 1.0.0 RC1 © 2008-2018