testaro
testaro copied to clipboard
Add tests with clean-room development
The management of this application at CVS Health wishes to enhance the testaro
tool with 5 new rules, using clean-room development, to avoid potential claims of misuse of software owned by others.
One contributor may perform this work, or two or more may do it in collaboration.
The work involves these steps:
- Clone
testaro
onto your development host. - Get training on creating
testaro
rules by adding 5 training rules. This does not require clean-room development. That means that you can consult me as you create these rules. These training rules are not only for training; they are actual contributions to Testaro, adding functionality that is currently not present. - Add the 5 clean-room rules. This must be done without consulting me.
All 10 rules are listed in a comment at the start of the CONSTANTS
section of tests/testaro.js
.
Adding a rule involves these steps:
- Verify that the rule fails validation by executing
npm test xyz
(replacingxyz
with the rule ID). - Read
CONTRIBUTING.md
to learn how to create a Testaro rule. - Create a file in the
testaro
directory for the rule and implement the rule in that file. - Validate the rule by executing
npm test xyz
again. - Correct the rule to cure any failures and revalidate, until there are no failures.
- Submit a pull request for the addition.
- Move the entry for the rule out of its comments block into
evalRules
.
If you wish to participate in the work on this issue, please comment below.
You may notice that the CONTRIBUTING.md
document describes validator construction as step 2 of adding a test to testaro
. However, for this issue, all 10 validators have already been created. You can inspect the validation targets (in validation/tests/targets
) to understand what the rules must permit and prohibit.