Makefile 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. RABBITMQ_SRC_VERSION=v3.12.13
  2. JSON=amqp-rabbitmq-0.9.1.json
  3. AMQP_JSON=https://raw.githubusercontent.com/rabbitmq/rabbitmq-server/$(RABBITMQ_SRC_VERSION)/deps/rabbitmq_codegen/$(JSON)
  4. NODEJS_VERSIONS='10.21' '11.15' '12.18' '13.14' '14.5' '15.8' '16.3.0' '18.1.0' '20.10.0'
  5. MOCHA=./node_modules/.bin/mocha
  6. _MOCHA=./node_modules/.bin/_mocha
  7. UGLIFY=./node_modules/.bin/uglifyjs
  8. NYC=./node_modules/.bin/nyc
  9. .PHONY: test test-all-nodejs coverage lib/defs.js
  10. error:
  11. @echo "Please choose one of the following targets: test, test-all-nodejs, coverage, lib/defs.js"
  12. @exit 1
  13. test:
  14. $(MOCHA) --check-leaks -u tdd --exit test/
  15. test-all-nodejs:
  16. for v in $(NODEJS_VERSIONS); \
  17. do echo "-- Node version $$v --"; \
  18. nave use $$v $(MOCHA) -u tdd --exit -R progress test; \
  19. done
  20. coverage: $(NYC)
  21. $(NYC) --clean --reporter=lcov --reporter=text $(_MOCHA) -u tdd --exit -R progress test/
  22. @echo "HTML report at file://$$(pwd)/coverage/lcov-report/index.html"
  23. lib/defs.js: clean bin/generate-defs test
  24. clean:
  25. rm -f lib/defs.js bin/amqp-rabbitmq-0.9.1.json
  26. bin/generate-defs: $(UGLIFY) bin/generate-defs.js bin/amqp-rabbitmq-0.9.1.json
  27. (cd bin; node ./generate-defs.js > ../lib/defs.js)
  28. $(UGLIFY) ./lib/defs.js -o ./lib/defs.js \
  29. -c 'sequences=false' --comments \
  30. -b 'indent-level=2' 2>&1 | (grep -v 'WARN' || true)
  31. bin/amqp-rabbitmq-0.9.1.json:
  32. curl -L $(AMQP_JSON) > $@
  33. $(ISTANBUL):
  34. npm install
  35. $(UGLIFY):
  36. npm install