purenix icon indicating copy to clipboard operation
purenix copied to clipboard

add support for running tests with `spago test`

Open cdepillabout opened this issue 2 years ago • 0 comments

Spago has a test command that makes it easy to run tests. PureNix probably needs something added to be able to work with spago test.

This hasn't really been a problem up until now, since none of the PureNix libraries have tests. But now there is a tasty-like testing framework for PureNix (https://github.com/thought2/purescript-miraculix by @thought2), so it would be really convenient to be able to run tests directly with spago test.

Someone interested in implementing this may want to do the following:

  • Investigate the Spago codebase to find out exactly what it does when running spago test.

    I imagine this function is a good place to start: https://github.com/purescript/spago/blob/aa7c0de6d903262f69452663c09fad9c441af8d3/src/Spago/Build.hs#L241-L256

    Keep in mind that it is quite possible there are two different code-paths here, one for the normal JS backend and one for alternative backends (like PureNix).

    It would be great if you could leave a comment on this issue with exactly what you figured out.

  • Optionally go on the PureScript Discord and ask in #compiler or #purerl how the Erlang backend handles spago test. They may have some good suggestions.

  • Decide on how PureNix should handle spago test, and leave a short comment here with how you see this working.

  • Send a PR implementing whatever is necessary.

cdepillabout avatar Jan 01 '22 03:01 cdepillabout