15

I've written a small command line program with nodejs and I want to be able to type npm run test and run the program with the arguments below.

Typing the following command directly works, node.exe scrappee.js -u 'https://github.com/matutter/{}' -us 'cloggie, AirRocks-Flightcontroller' -s '$commit=li.commits > a > span, $sha=.right .commit-tease-sha' -pm .\test\example_parse_module.js

But with the contents of my package.json as follows there is no output whatsoever.

"scripts": {
 "test" : "node.exe scrappee.js -u 'https://github.com/matutter/{}' -us 'cloggie, AirRocks-Flightcontroller' -s '$commit=li.commits > a > span, $sha=.right .commit-tease-sha' -pm .\\test\\example_parse_module.js"
}

How can I get the command npm run test to run the scrappee.js script with the these arguments?

asked May 28, 2016 at 15:21

1 Answer 1

26

The issue was from the single quote ' being converted to "'" by npm when the arguments are forwarded, the solution was to replace them with double quotes like below.

"test" : "node.exe scrappee.js -u \"https://github.com/matutter/{}\" -us \"cloggie, AirRocks-Flightcontroller\" -s \"$commit=li.commits > a > span, $sha=.right .commit-tease-sha\" -pm \".\\test\\example_parse_module.js\""
answered May 28, 2016 at 15:49
Sign up to request clarification or add additional context in comments.

2 Comments

if you are using cross-env unfortunately this does not help. Does not work on mac cross-env-shell mocha --require ts-node/register \"testUnit/**/*.test.ts\"", still runs tests only if the first subdirectory. Work on mac mocha --require ts-node/register \"testUnit/**/*.test.ts\""
How did you figure out that single quotes were converted to 2 double quotes?

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.