Я разработал модуль node.js npm, разрабатываемый под Windows. Сегодня я написал несколько тестов Mocha. После многих проблем казалось, что для работы npm test
package.json
должен выглядеть следующим образом: (могут быть и другие варианты???)
"scripts": { "test": "node node_modules/mocha/bin/mocha" }
вместо того, что во всех книгах, основанных на Unix,
"scripts": { "test": "./node_modules/.bin/mocha" }
Как я могу установить package.json для работы как с Windows, так и с Unix? Я предполагаю, что Travis-CI запускает Unix, поэтому, если мне нужно связать сборку с ней, она взорвется версией Windows.
Я нашел двухлетний поток, где кто-то запросил функцию для этого. Эта нить, казалось, вымерла. Этот вопрос SO > кажется близким, но это не совсем то, что я хочу, и, честно говоря, я не могу понять ответ.:-( Кто-нибудь может уточнить?
Пока я иду
"scripts": {
"test": "node node_modules/mocha/bin/mocha",
"testOnUnixUseThis" : "./node_modules/.bin/mocha (I think)",
"testOnWindowsUseThis" : "node node_modules/mocha/bin/mocha"
},
К сожалению, вы не можете пойти npm test testOnWindowsUseThis
или npm testOnWindowsUseThis
. И это не устраняет проблему Трэвиса-CI. Но, по крайней мере, человек, который загружает модуль, может (надеюсь) увидеть, что происходит.
Любые лучшие идеи? Я единственный человек, который все еще развивается под Windows???: -)