CANVE / extractor

Extracts and normalizes the type relationships and call graph of scala sbt projects.
4 stars 1 forks source link

integrationTest sbt task - streamline access to outputs #4

Open matanox opened 8 years ago

matanox commented 8 years ago

At present time, running the the integrationTest task ends up creating files in two locations, which aren't referred to by the task's sbt output:

1) Canve output files are written to canve-data under

/sbt-plugin-integration-test/target/scala-2.11/classes/integration-test-projects/PROJECT_NAME

2) stdout & stderr are piped to /out at the root directory of the overall repo

This may seem a little disconcerted, especially given, that there are at present no links between the two - nor an interface for navigating all of the integration test's triggered outputs.

Suggested Changes

It would be good to link to these outputs from the summary shown in sbt for the integrationTest task. I.e. add a terminal hyperlink (file:/// pointing at the outputs, at least it will work on linux) to an html report that doesn't look ugly, the html report hosting a row per project, each row comprising:

  1. the project's name
  2. test status for/with it
  3. elapsed time run or anything I've forgotten here
  4. link to its run's standard output file (currently being produced in /out).
  5. link to its resulting canve-data directory (currently under /sbt-plugin-integration-test/target/scala-2.11/classes/integration-test-projects/PROJECT_NAME)

If you're aware of a framework for hosting and proper navigation of test results, which seamlessly affords the above without sucking, it can be implemented with/in such framework, but otherwise simple html and css would do and avoid all the boilerplate and dependencies coming with a framework.

Also out is a sucky name for an integration tests output directory in the root of the project, and should be changed to something like integration-test-log or canve-integration-test-log, it it remains written to the root of the integration test project.

matanox commented 8 years ago

Maybe just rename out to integration-test-out at first, providing scripted access to a project's canve-data/ with the project name as argument or such..