Makefile.module 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  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. test_unit:
  21. ${DOCKER_COMPOSE_TEST_UNIT} run --rm test_unit npm -q run test:unit:run_dir -- ${MOCHA_ARGS} $(MODULE_DIR)/test/unit/src
  22. ifeq (,$(wildcard test/acceptance))
  23. test_acceptance:
  24. clean_test_acceptance:
  25. else
  26. test_acceptance:
  27. $(MAKE) --no-print-directory clean_test_acceptance
  28. ${DOCKER_COMPOSE_TEST_ACCEPTANCE} run --rm test_acceptance npm -q run test:acceptance:run_dir -- ${MOCHA_ARGS} $(MODULE_DIR)/test/acceptance/src
  29. $(MAKE) --no-print-directory clean_test_acceptance
  30. clean_test_acceptance:
  31. ${DOCKER_COMPOSE_TEST_ACCEPTANCE} down -v -t 0
  32. endif