tame/progtest
Mike Gerwitz 2f7ad95a2c TestRunner: Recognize error as failure 2018-02-23 15:45:54 -05:00
..
bin progtest: bug: constants are not initialized until rating 2018-02-19 15:21:14 -05:00
build-aux progtest: Generate index.js files 2018-02-19 15:21:14 -05:00
src TestRunner: Recognize error as failure 2018-02-23 15:45:54 -05:00
test TestRunner: Recognize error as failure 2018-02-23 15:45:54 -05:00
.gitignore progtest: .gitignore: ignore compiled output 2018-02-19 15:21:14 -05:00
Makefile Makefile: run modindex first 2018-02-23 13:45:38 -05:00
README.md progtest/README.md: Basic test case format documentation 2018-02-23 14:30:02 -05:00
package.json progtest/package.json (devDependencies): Add mocha and chai 2018-02-23 10:34:38 -05:00

README.md

Program Testing

A /program/ is a top-level package (either marked as with @program="true", or with a root rater node). This system provides a means of writing and running test cases.

Test Case Format

Test cases must be provided in a YAML file. Each test case has a description (description), input data (data), and expected results (expect).

- description: >-
    Example test case    
  data:
    state:              [ STATE_AK ]
    prem_total:         [ 9000 ]
    effective_date:     12/05/2017
  expect:
    premTaxStamping: [ 1234 ]
    premTaxSurplus:  [ 1010 ]

A file may contain any number of test cases. All identifiers in data and expect must be valid inputs (params) and outputs (classifications and calculations) respectively. Inputs are passed as-is to the program, and outputs are recursively (deeply) compared.