unexpected
Version:
Extensible BDD assertion toolkit
83 lines (64 loc) • 2.23 kB
Plain Text
REPORTER = dot
TARGETS ?= unexpected.js
lint:
@./node_modules/.bin/jshint --exclude test/documentation.spec.js lib/*.js test/*.js
unexpected.js: lib/*
(echo '/*!' && <LICENSE sed -e's/^/ * /' | sed -e's/\s+$$//' && echo ' */' && ./node_modules/.bin/browserify -p bundle-collapser/plugin -e lib -s weknowhow.expect) > $@
test-phantomjs: ${TARGETS}
@$(eval QUERY=$(shell node -e "console.log(decodeURIComponent(process.argv.pop()))" "${grep}")) \
./node_modules/.bin/mocha-phantomjs test/tests.html?grep=${QUERY}
test: lint
mocha
coverage: lib/*
NODE_ENV=development ./node_modules/.bin/istanbul cover \
-x unexpected.js \
-x **/vendor/** \
-x **/site/** \
-x **/documentation/** \
--include-all-sources ./node_modules/mocha/bin/_mocha -- --reporter dot
test-browser: unexpected.js
@./node_modules/.bin/serve .
travis: lint test coverage
<coverage/lcov.info ./node_modules/coveralls/bin/coveralls.js
git-dirty-check:
ifneq ($(shell git describe --always --dirty | grep -- -dirty),)
$(error Working tree is dirty, please commit or stash your changes, then try again)
endif
deploy-site: git-dirty-check site-build
git fetch origin site-build
git checkout -B site-build origin/site-build
rm `git ls-files | grep -v '^\.gitignore$$'`
cp -r site-build/* .
if [ "`git status --porcelain`" != "" ]; then \
(git add -A . && \
git commit -m "Updated site" && \
git push origin +site-build:site-build && \
git push git@github.com:unexpectedjs/unexpectedjs.github.io.git +site-build:master) ; \
fi
git checkout master
commit-unexpected: unexpected.js
git add unexpected.js
if [ "`git status --porcelain`" != "" ]; then \
git commit -m "Build unexpected.js" ; \
fi
release-%: git-dirty-check lint ${TARGETS} test-phantomjs commit-unexpected deploy-site
npm version $*
@echo $* release ready to be publised to NPM
@echo Remember to push tags
clean:
-rm -fr ${TARGETS} coverage
site-build:
node site/build.js
update-examples:
node site/update-examples.js