bug 421611 - need to be able to run tests on an arbitrary build. add a package target for mochitest. r=bsmedberg

This commit is contained in:
Ted Mielczarek 2009-02-02 08:53:24 -05:00
parent 18849f5bc2
commit ba0adfda23
4 changed files with 57 additions and 2 deletions

View File

@ -146,3 +146,40 @@ GARBAGE += runtests.py automation.py
libs:: $(_SERV_FILES)
$(INSTALL) $^ $(_DEST_DIR)
# Binaries that don't get packaged with the build,
# but that we need for the test harness
TEST_HARNESS_BINS := \
xpcshell$(BIN_SUFFIX) \
ssltunnel$(BIN_SUFFIX) \
certutil$(BIN_SUFFIX) \
pk12util$(BIN_SUFFIX) \
$(NULL)
# Components / typelibs that don't get packaged with
# the build, but that we need for the test harness.
TEST_HARNESS_COMPONENTS := \
test_necko.xpt \
$(NULL)
# We need the test plugin as some tests rely on it
ifeq (Darwin,$(OS_TARGET))
TEST_HARNESS_PLUGINS := \
Test.plugin/
else
TEST_HARNESS_PLUGINS := \
$(DLL_PREFIX)nptest$(DLL_SUFFIX)
endif
# Rules for staging the necessary harness bits for a test package
PKG_STAGE = $(DIST)/test-package-stage
stage-package:
$(NSINSTALL) -D $(PKG_STAGE)/mochitest && $(NSINSTALL) -D $(PKG_STAGE)/plugins
@(cd $(DEPTH)/_tests/testing/mochitest/ && tar $(TAR_CREATE_FLAGS) - *) | (cd $(PKG_STAGE)/mochitest && tar -xf -)
@(cd $(DIST)/bin && tar $(TAR_CREATE_FLAGS) - $(TEST_HARNESS_BINS)) | (cd $(PKG_STAGE)/bin && tar -xf -)
@(cd $(DIST)/bin/components && tar $(TAR_CREATE_FLAGS) - $(TEST_HARNESS_COMPONENTS)) | (cd $(PKG_STAGE)/bin/components && tar -xf -)
@(cd $(topsrcdir)/build/pgo/certs && tar $(TAR_CREATE_FLAGS) - *) | (cd $(PKG_STAGE)/certs && tar -xf -)
ifdef MOZ_PLUGINS
@(cd $(DIST)/bin/plugins && tar $(TAR_CREATE_FLAGS) - $(TEST_HARNESS_PLUGINS)) | (cd $(PKG_STAGE)/plugins && tar -xf -)
endif

View File

@ -70,4 +70,19 @@ mochitest-a11y:
$(RUN_MOCHITEST) --a11y $(MOCHITEST_PATH)
$(CHECK_TEST_ERROR)
.PHONY: mochitest mochitest-plain mochitest-chrome mochitest-a11y
# Package up the tests and test harnesses
include $(topsrcdir)/toolkit/mozapps/installer/package-name.mk
PKG_STAGE = $(DIST)/test-package-stage
package-tests: stage-mochitest
@(cd $(PKG_STAGE) && tar $(TAR_CREATE_FLAGS) - *) | bzip2 -f > $(DIST)/$(PKG_PATH)$(TEST_PACKAGE)
make-stage-dir:
rm -rf $(PKG_STAGE) && $(NSINSTALL) -D $(PKG_STAGE) && $(NSINSTALL) -D $(PKG_STAGE)/bin && $(NSINSTALL) -D $(PKG_STAGE)/bin/components && $(NSINSTALL) -D $(PKG_STAGE)/certs
stage-mochitest: make-stage-dir
$(MAKE) -C $(DEPTH)/testing/mochitest stage-package
.PHONY: mochitest mochitest-plain mochitest-chrome mochitest-a11y \
package-tests make-stage-dir stage-mochitest

View File

@ -147,3 +147,5 @@ PKG_SRCPACK_BASENAME = $(MOZ_PKG_APPNAME_LC)-$(MOZ_PKG_VERSION).source
PKG_SRCPACK_PATH = source/
endif # MOZ_PKG_PRETTYNAMES
TEST_PACKAGE = $(PKG_BASENAME).tests.tar.bz2

View File

@ -494,9 +494,10 @@ QUOTED_WILDCARD = $(if $(wildcard $(subst $(space),?,$(1))),"$(1)")
upload:
$(PYTHON) $(topsrcdir)/build/upload.py --base-path $(DIST) \
$(call QUOTED_WILDCARD,$(DIST)/$(PACKAGE)) \
$(call QUOTED_WILDCARD,$(DIST)/$(PACKAGE)) \
$(call QUOTED_WILDCARD,$(INSTALLER_PACKAGE)) \
$(call QUOTED_WILDCARD,$(DIST)/$(COMPLETE_MAR)) \
$(call QUOTED_WILDCARD,$(DIST)/$(PKG_PATH)$(TEST_PACKAGE)) \
$(if $(UPLOAD_EXTRA_FILES), $(foreach f, $(UPLOAD_EXTRA_FILES), $(wildcard $(DIST)/$(f))))
ifndef MOZ_PKG_SRCDIR