Let the test harness and CI select Virtuoso or sbol-db#1743
Open
marpaia wants to merge 5 commits into
Open
Conversation
get_end_of_error_log() docker-cp'd container logs from a hardcoded container name (testsuiteproject_synbiohub_1) and raised if the log could not be read. Under a different stack (e.g. the sbol-db harness) the container name differs, so the helper raised inside file_diff() before the actual page diff was reported, masking every real test failure behind a FileNotFoundError. Read the container name from SBH_TEST_CONTAINER (defaulting to the existing name) and make log retrieval best-effort, so a missing log can never hide the test diff it was meant to annotate.
The admin graphs page ran SELECT DISTINCT ?graph over every named graph in the triplestore. A triplestore may expose internal graphs of its own (for example Virtuoso's system graphs: virtrdf#, ldp#, the DAV and sparql graphs), which are an implementation detail rather than SynBioHub data and which differ from one backend to another. Order the results and keep only graphs under the configured databasePrefix, so the page lists exactly this instance's SBOL data graphs and renders the same content on any standards-compliant triplestore.
The suite always brought up the Virtuoso docker-compose stack. Read the backend from SBH_TRIPLESTORE (virtuoso by default, or sboldb), resolved to the matching docker-compose files by a helper in testutil.sh; the start scripts also accept it as their first argument. The same SynBioHub image and the same fixtures gate both backends, so only genuine triplestore-behavior differences show up. stop_containers.sh and testcleanup.sh now drive docker compose by project instead of hardcoded Virtuoso container names, so teardown works for either stack.
Add sboltests-sboldb and sbhtests-sboldb jobs that run the existing SBOL conformance and SynBioHub suites with SBH_TRIPLESTORE=sboldb, and gate the snapshot publish on all four test jobs. The Virtuoso jobs are unchanged.
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.
NOTE: Before this is merged, SynBioHub/synbiohub-docker#24 must be merged to the
snapshotbranchAdds SBH_TRIPLESTORE=virtuoso|sboldb to the test harness (one image and one fixture set gate both backends), filters the admin graphs page to the instance's own data graphs so it renders identically on any backend, and adds CI jobs that run both suites against sbol-db. Verified locally: full suite + persistence green on both backends, SBOLTestRunner 189/189 on sbol-db.