Previously, when trying to import an example into the flow editor on
Windows, the load attempt would fail with an HTTP 404 error in the
browser client, with a `TypeError: path must be absolute or specify
root to res.sendFile` error being written to the Node-RED log. This was
due to the path being passed to the `res.sendFile` function not being
fully-qualified (for example, `\Users\myuser\...\example.json`).
With the changes in this commit, the path to the example file is
resolved to a fully-qualified path before being passed into the
`res.sendFile` call. For example, a path on Windows of
`\Users\myuser\...\example.json` would be transformed to
`C:\\Users\\myuser\\...\\example.json` before being passed along to the
`sendFile` function. This change allows the file to be loaded and sent
properly to the browser client and for the embedded flows in the example
to be loaded in the flow editor.
* fix many test problems
- adds [stoppable](https://npm.im/stoppable) to force-stop net & http
servers
- upgrades to latest mocha
- much cleanup of servers
- some removal of useless code
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
* increase wait time to hack at race condition
* PoC with fork of stoppable
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
* fix custom stoppable url for newer npm
* make travis go faster; attempt to avoid npm troubles
* fix coveralls executable path
* add extra time for flake to trigger spec
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
This commit allows an example from an npm package that has
an org scoped name (which includes an @ character) to be retrieved and
loaded properly through the flows endpoint.