Skip to content

Conversation

@0x3at
Copy link

@0x3at 0x3at commented Oct 15, 2025

Removed enforced implementation of the COLORS data type to comply with CONTRIBUTING.md

No test should force a specific implementation

COLORS type should not be asserted as stated by contributing MD which requires tests do not enforce a specific implementation.

By asserting the structure of the data type this prevents correct solutions from passing the test and restricts developer freedom.

Asserting that colors is a string array makes the following data structure trigger a failure even if the colorCode method produces the correct result;

export const COLORS: { color: string; code: number }[] = [
  { color: "black", code: 0 },
  { color: "brown", code: 1 },
  { color: "red", code: 2 },
  { color: "orange", code: 3 },
  { color: "yellow", code: 4 },
  { color: "green", code: 5 },
  { color: "blue", code: 6 },
  { color: "violet", code: 7 },
  { color: "grey", code: 8 },
  { color: "white", code: 9 },
];

0x3at added 3 commits October 15, 2025 10:58
Removed enforced implementation of the COLORS data type to comply with CONTRIBUTING.md

```markdown
No test should force a specific implementation
```
@github-actions
Copy link
Contributor

Hello. Thanks for opening a PR on Exercism 🙂

We ask that all changes to Exercism are discussed on our Community Forum before being opened on GitHub. To enforce this, we automatically close all PRs that are submitted. That doesn't mean your PR is rejected but that we want the initial discussion about it to happen on our forum where a wide range of key contributors across the Exercism ecosystem can weigh in.

You can use this link to copy this into a new topic on the forum. If we decide the PR is appropriate, we'll reopen it and continue with it, so please don't delete your local branch.

If you're interested in learning more about this auto-responder, please read this blog post.


Note: If this PR has been pre-approved, please link back to this PR on the forum thread and a maintainer or staff member will reopen it.

@github-actions github-actions bot closed this Oct 15, 2025
@github-actions
Copy link
Contributor

This PR touches files which potentially affect the outcome of the tests of an exercise. This will cause all students' solutions to affected exercises to be re-tested.

If this PR does not affect the result of the test (or, for example, adds an edge case that is not worth rerunning all tests for), please add the following to the merge-commit message which will stops student's tests from re-running. Please copy-paste to avoid typos.

[no important files changed]

For more information, refer to the documentation. If you are unsure whether to add the message or not, please ping @exercism/maintainers-admin in a comment. Thank you!

@SleeplessByte
Copy link
Member

No test should force a specific implementation

The tests do not force a specific implementation as we have at least 3 variants of people building the colours array at the moment.

@0x3at
Copy link
Author

0x3at commented Oct 15, 2025

Appreciate the response! Apologies for the misinterpretation on my part!

@0x3at 0x3at deleted the 0x3at/remove-resistor-colors-forced-implementation branch October 15, 2025 20:14
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.

2 participants