Skip to content

Upgrade to version 3 spec #37

Open
@ErikSchierboom

Description

@ErikSchierboom
Member

If possible, this test runner should be updated to version 3 of the test runner interface specification. In version 3, one additional feature is enabled: the ability to link individual tests to tasks. This allows the website to show which tests belong to which tasks.

The way tests are linked to tasks is via an (optional) task_id field (see the specification), which is an integer that matches the number of the task as defined in the exercise's instructions.md file (note: the instructions start at index 1).

This is an example of a test in the results.json file:

{
  "name": "Expected oven time in minutes",
  "status": "pass",
  "task_id": 1,
  "test_code": "Assert.Equal(40, Lasagna.ExpectedMinutesInOven());"
}

You are completely free in how to implement this. Some options are:

  1. Add metadata to a test that the test runner can then discover while running the tests (e.g. an attribute or annotation)
  2. Define a test name/task id mapping (e.g. in the exercise's .meta/config.json file)
  3. Any other option you can think of...

Let me know if there are any questions.

Activity

added
x:action/improveImprove existing functionality/content
x:knowledge/advancedComprehensive Exercism knowledge required
x:type/codingWrite code that is not student-facing content (e.g. test-runners, generators, but not exercises)
on Aug 18, 2021
theomelo

theomelo commented on Nov 6, 2022

@theomelo

I want to work on this one 🤚

kotp

kotp commented on Nov 7, 2022

@kotp
Member

I want to work on this one raised_back_of_hand

Absolutely!

Link your PR here, or any ongoing questions can be asked here as well.

kotp

kotp commented on Mar 11, 2023

@kotp
Member

@theomelo I hope the last few months have treated you well. Any news on this, or should I unassign and make it available to someone else to pick up?

added a commit that references this issue on Jun 27, 2023

exercism#37 - Upgrade to version 3 spec

linked a pull request that will close this issue on Jun 27, 2023
added a commit that references this issue on Jul 4, 2023

exercism#37 - fix rubocop warning

petrenkorf

petrenkorf commented on Oct 20, 2023

@petrenkorf

@kotp Any news on this? I'm looking for some task for my first PR, is this a good one?

kotp

kotp commented on Oct 21, 2023

@kotp
Member

Look at #100 and the comment there, for whatever reason I have not seen the forum post that @iHiD requested. But I think it is work that is approved since @ErikSchierboom created the issue, it just has not been followed up on by @Hunk13 as of yet.

theomelo

theomelo commented on Feb 1, 2024

@theomelo

@kotp, my apologies for disappearing. It's been a rollercoaster ever since, but I appreciate @Hunk13 taking this on. I'll unassign myself from this issue.

removed their assignment
on Feb 1, 2024
added a commit that references this issue on Feb 14, 2024

exercism#37 - fix json tests fixtures

added 2 commits that reference this issue on Apr 9, 2024

exercism#37 - memoize body_line_numbers method

exercism#37 - fix Smoke tests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    x:action/improveImprove existing functionality/contentx:knowledge/advancedComprehensive Exercism knowledge requiredx:module/test-runnerWork on Test Runnersx:size/largeLarge amount of workx:type/codingWrite code that is not student-facing content (e.g. test-runners, generators, but not exercises)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      Participants

      @kotp@ErikSchierboom@petrenkorf@theomelo

      Issue actions

        Upgrade to version 3 spec · Issue #37 · exercism/ruby-test-runner