Skip to content

Conversation

@dmarcotte
Copy link
Contributor

Similar to our JsonTestSuite integration, we now also integrate the JSON-Schema-Test-Suite tests towards our goal of supporting Json Schema in Kson

As of 8ab1c53, `ensure_suite.sh` no longer exists, so reword
this comment to remove the misleading note
In preparation for our work to parse and enforce schemas defined in
[JsonSchema](https://json-schema.org/), extend our build to pull in the
[JSON-Schema-Test-Suite](https://github.com/nst/JSONTestSuite)
project in alongside our checkout of the
[JsonTestSuite](https://github.com/json-schema-org/JSON-Schema-Test-Suite)
project.

This commit also refactors the main git utility, `ensureCleanCheckout`
into its own class.  This isn't strictly necessary, but was done as
part of an early draft of this commit, and I like how it separates
the Json-agnostic Git code into its own class, so I kept it in.

Next up, generating Kson tests from the JSON-Schema-Test-Suite
tests...
Was TODONE in 38e9753!
Improve on the work in 17468a3 by refactoring
`GitOps.ensureCleanCheckout` into the `CleanGitCheckout` class, giving
us a cleaner interface for the clean checkouts these suites require
and facilitating improved testing, particularly in
`JsonTestSuiteGeneratorTest`, including restoring a more robust version
of the integation test that we removed in ecdaab7
Generate `SchemaSuiteTest`, native Kotlin Kson tests, from the [Json
Schema Test Suite](https://github.com/json-schema-org/JSON-Schema-Test-Suite)
tests.  These are currently all disabled (see `schemaTestSuiteExclusionsList`)
but will come online as support as Json Schema Support is implemented
in Kson.
This handful of tests exercises the "accept everything" schema, so we're
trivially compliant and can enable these as our initial Json Schema
Suite tests.
@dmarcotte dmarcotte merged commit 153136a into kson-org:main Jan 28, 2025
1 check passed
@dmarcotte dmarcotte deleted the json-schema-suite branch January 28, 2025 18:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant