Testbed tool, conformance report table and reference datasets - #91
Draft
xulman wants to merge 17 commits into
Draft
Testbed tool, conformance report table and reference datasets#91xulman wants to merge 17 commits into
xulman wants to merge 17 commits into
Conversation
…d final output table
...the display of it will trigger pixel loading, so reduce the load to the least possible. But than the opened underlying Dataset is typicaly not the one at the highest/best/base resolution... However! maxPreferred must a decent number because the openers are complaining if no res. level _smaller_ than this number is available.
RAI = RandomAccessibleInterval, a representation of an image in Imglib2 the way we obtain/construct this RAI avoids loading of pixel data
…solution of pixels
...calls the original testOpenAndCheckDatasetParams(), which is a standard unit test method, and monitors its exceptions to figure out if the test passed or failed. This is logged into an ASCII table, and X/Y passed is printed as the line of the report. Thanks Claude.AI for the initial help.
… Column, Time axes)
xulman
marked this pull request as draft
June 9, 2026 14:14
|
xulman
pushed a commit
that referenced
this pull request
Sep 2, 2026
Reconstructs PR #91 ("Testbed tool, conformance report table and reference datasets") on top of the five-module split (PR #95). The original commits predate that refactoring and no longer apply, so this is a fresh, equivalent port rather than a git-rebase. Changes vs. the original PR: - ConformanceTest moved to the ome-zarr-fiji-ui test module and repackaged sc.fiji.ome.zarr.open -> ome.zarr.fijiui.open. - Imports updated for the renamed packages (ome.zarr.fijiui.open.options.*, ome.zarr.fiji.PyramidalDataset). - Adapted to the new data model: the removed rich PyramidalDataset API (numChannels/numTimepoints/numResolutions/voxelDimensions/asSources) is now reached via PyramidContents (getPyramidContents()): * base-resolution sizes read from contents.asImg(0) with axis lookup by name (axisIndex/hasAxis) instead of a fixed 0/1/2 BDV source order; * per-axis pixel scale read from contents.axesPerLevel[0]; * pixel type read from contents.type. - ZarrOpenActions is constructed with the 3-arg (uri, context, settings) constructor; the old 4-arg errorHandler variant is gone and the captured error was unused. - ascii-table test dependency moved from the root pom to the ui module pom. - Reference data moved from the repo-root testing/ folder to the shared test resources at test-shared/resources/ome/zarr/testdata/conformance_testing/ (alongside the other testdata folders), and the .csv is now loaded from the test classpath via ZarrTestUtils.resourcePath(...) instead of a hardcoded absolute path. Both tests remain @disabled (run manually). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



This PR is currently a work-in-progress.
Its purpose is to have two entry test methods
testCasesFeeder().The first method is clearly the workhorse here. Additionally, the class
TestDatasetis crucial to the method's testing capability, as it contains a pointer to the source dataset and numerous dataset parameters, such as axis sizes, the number of resolution levels, pixel resolutions, axis order, etc. The workhorse method only verifies matches between the actual values (from thePyramidDatasetobject created at runtime) and the reference values (from theTestDatasetobject) over the said parameters.The folder
/testingcurrently holds aux tools to create a.csvtable, see also #88, that feeds and arrives intoTestDatasetobjects.The second method
reportSuccessRateAndPrintTable()can give an output like this:TODO