Skip to content

GSoC 2026 - Unify the test suite #994

@jdesrosiers

Description

@jdesrosiers

Unify the test suite

Brief Description

In the official test suite, we don't manage the tests for different versions of JSON Schema very well. Each time there's a new release, we make a copy of the previous version and make updates to that copy. Because of this, we have multiple copies of most of the tests and every time we need to add a new test, we usually have to add a copy in several places.

The annotations test suite takes a different approach. Tests have a compatibility property indicting which versions of JSON Schema the test applies to. That allows test runners to filter the tests to which one's apply to them.

The goal of this project is to collapse the per version validation tests into one test suite using a similar approach to the annotations test suite. This will allow us to manage tests in a single suite with no more copies of identical tests.

Expected Outcomes

  • A single test suite for all versions of JSON Schema
  • No more copies of tests
  • Tests can be easily filtered by test runners to the ones that apply to them
  • Update any scripts/action in the test suite repo to use the new suite
  • Update bowtie to use the new suite
  • Update bowtie implementation test runners to use the new suite

Skills Required

  • Good attention to detail
  • Ability to work in unfamiliar programming languages. (Updating bowtie implementation test runners.)

Mentors

@jdesrosiers and @Julian as co-mentor

Expected Difficulty

small

Expected Time Commitment

90 hours

Pinned by Honyii

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: AcceptedIt's clear what the subject of the issue is about, and what the resolution should be.gsocGoogle Summer of Code Project Idea

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions