Makefile.module 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. BUILD_DIR_NAME ?= web
  2. MODULE_NAME := $(notdir $(shell pwd))
  3. MODULE_DIR := modules/$(MODULE_NAME)
  4. PROJECT_NAME = web
  5. DOCKER_COMPOSE_FLAGS ?= -f docker-compose.yml --log-level ERROR
  6. DOCKER_COMPOSE := cd ../../ && \
  7. MODULE_DIR=$(MODULE_DIR) \
  8. BUILD_NUMBER=$(BUILD_NUMBER) \
  9. BRANCH_NAME=$(BRANCH_NAME) \
  10. PROJECT_NAME=$(PROJECT_NAME) \
  11. MOCHA_GREP=${MOCHA_GREP} \
  12. SHARELATEX_CONFIG=/app/$(MODULE_DIR)/test/acceptance/config/settings.test.coffee \
  13. docker-compose ${DOCKER_COMPOSE_FLAGS}
  14. DOCKER_COMPOSE_TEST_ACCEPTANCE := \
  15. export COMPOSE_PROJECT_NAME=acceptance_test_$(BUILD_DIR_NAME)_$(MODULE_NAME) \
  16. && $(DOCKER_COMPOSE)
  17. DOCKER_COMPOSE_TEST_UNIT := \
  18. export COMPOSE_PROJECT_NAME=unit_test_$(BUILD_DIR_NAME)_$(MODULE_NAME) \
  19. && $(DOCKER_COMPOSE)
  20. ifeq (,$(wildcard test/unit))
  21. test_unit:
  22. else
  23. test_unit:
  24. ${DOCKER_COMPOSE_TEST_UNIT} run --rm test_unit npm -q run test:unit:run_dir -- ${MOCHA_ARGS} $(MODULE_DIR)/test/unit/src
  25. ${DOCKER_COMPOSE_TEST_UNIT} down
  26. endif
  27. ifeq (,$(wildcard test/acceptance))
  28. test_acceptance:
  29. clean_test_acceptance:
  30. else
  31. test_acceptance:
  32. $(MAKE) --no-print-directory clean_test_acceptance
  33. ${DOCKER_COMPOSE_TEST_ACCEPTANCE} run --rm test_acceptance npm -q run test:acceptance:run_dir -- ${MOCHA_ARGS} $(MODULE_DIR)/test/acceptance/src
  34. $(MAKE) --no-print-directory clean_test_acceptance
  35. clean_test_acceptance:
  36. ${DOCKER_COMPOSE_TEST_ACCEPTANCE} down -v -t 0
  37. endif