shop3 icon indicating copy to clipboard operation
shop3 copied to clipboard

Test should build `validate` from the repo rather than relying on it being in `$PATH`

Open gefjon opened this issue 4 years ago • 2 comments

The ASDF system shop3/test should depend on a validate binary as a component, and include a recipe to build it from the shop3 repo, obeying output filename translations to put the binary an ASDF build directory. Tests which invoke shop3:validate-plan should do so using :validator-progname (asdf:output-file (asdf:make-operation 'compile-op) (asdf:find-component (asdf:find-system :shop3/test) :validate)) or a similar invocation, rather than leaving :validator-progname unsupplied and expecting validate to be in the system path. This will allow contributors to run (asdf:test-system :shop3) on a fresh machine without first manually compiling and globally installing validate, and will reduce variation in Jenkins compared to testing locally.

gefjon avatar Oct 28 '20 19:10 gefjon

If you want to submit an MR for this, please do it in the form of a sub-system (e.g., "shop3/validator") that users who want to validate plans, but don't want to run the test suite, can use.

rpgoldman avatar Oct 30 '20 20:10 rpgoldman

Note that validate is built by the Travis tests https://github.com/shop-planner/shop3/blob/536d646e2a967f27e9ad79eca4f8444702d8aac2/.travis.yml#L52 which provides a pattern.

rpgoldman avatar Nov 14 '20 17:11 rpgoldman