Mercurial > hg > ThermostatQA
changeset 161:308d55883a24
Makefile refactoring
author | Zdenek Zambersky <zzambers@redhat.com> |
---|---|
date | Wed, 22 Oct 2014 16:41:20 +0200 |
parents | 35c1e2abeb9d |
children | e8ad3e5e4893 |
files | Makefile |
diffstat | 1 files changed, 84 insertions(+), 69 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile Thu Sep 11 12:55:50 2014 +0200 +++ b/Makefile Wed Oct 22 16:41:20 2014 +0200 @@ -8,6 +8,7 @@ REPORT_DIR=reports LOGS_DIR=logs TEMPLATE_DIR=templates + JAVAC=javac JAVA=java @@ -52,6 +53,9 @@ DBGuiHeapDumpTest \ DBCommandsHeapDumpTest +# targets for all test suites +TESTSUITES = $(shell ls -1 $(SOURCE_DIR)/$(TEST_PACKAGE) | sed -n -e 's/\([A-Za-z0-9]*\)\.java/\1/p') + ALL_CLASSES = \ $(BUILD_DIR)/$(ANNOTATIONS_PACKAGE)/TestTypes.class \ $(BUILD_DIR)/$(ANNOTATIONS_PACKAGE)/TestType.class \ @@ -106,10 +110,45 @@ all: build runtests +#### clean #### + +clean: + rm -rf $(BUILD_DIR)/org + rm -rf $(TEMPLATE_DIR)/flotr + rm -rf $(JAVADOC_DIR) + rmdir $(BUILD_DIR) + +cleanlogs: clean_logs + +clean_logs: + rm -rf $(LOGS_DIR)/$(DATE) + +clean_all_logs: + rm -rf $(LOGS_DIR) + +#### build #### + build: builddir $(ALL_CLASSES) builddir: mkdir -p ${BUILD_DIR} + +$(BUILD_DIR)/$(ROOT_PACKAGE)/%.class: $(SOURCE_DIR)/$(ROOT_PACKAGE)/%.java + $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< + +$(BUILD_DIR)/$(COMMON_PACKAGE)/%.class: $(SOURCE_DIR)/$(COMMON_PACKAGE)/%.java + $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< + +$(BUILD_DIR)/$(FRAMEWORK_PACKAGE)/%.class: $(SOURCE_DIR)/$(FRAMEWORK_PACKAGE)/%.java + $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< + +$(BUILD_DIR)/$(REPORTER_PACKAGE)/%.class: $(SOURCE_DIR)/$(REPORTER_PACKAGE)/%.java + $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< + +$(BUILD_DIR)/$(TEST_PACKAGE)/%.class: $(SOURCE_DIR)/$(TEST_PACKAGE)/%.java + $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< + +#### test #### runtests: $(ALL_CLASSES) mkdir -p screenshots @@ -119,6 +158,47 @@ $(JAVA) -cp $(BUILD_DIR) org.thermostat.qa.testsuites.$$tst 2>&1 | tee $(LOGS_DIR)/$(DATE)/$$tst.log ; \ done +$(TESTSUITES): $(BUILD_DIR) + mkdir -p $(LOGS_DIR) + mkdir -p $(LOGS_DIR)/$(DATE) + $(JAVA) -cp $(BUILD_DIR) $(TEST_PACKAGE).$@ 2>&1 | tee $(LOGS_DIR)/$(DATE)/$@.log + +listtests: + for tst in $(TESTS); do \ + echo $$tst ; \ + done + +#### reports & javadoc #### + +report: $(ALL_CLASSES) flotr javadoc + mkdir -p $(REPORT_DIR) + cp -u $(TEMPLATE_DIR)/style.css $(REPORT_DIR)/style.css + cp -r $(TEMPLATE_DIR)/flotr $(REPORT_DIR) + $(JAVA) -cp $(BUILD_DIR) org.thermostat.qa.reporter.Reporter -template-dir=$(TEMPLATE_DIR) -log-dir=$(LOGS_DIR) -report-dir=$(REPORT_DIR) -date=$(DATE) -tests="$(TESTS)" + sed -i 's/ignored/not applicable/g' $(REPORT_DIR)/log_$(DATE).html + sed -i 's/IGNORED/NOT APPLICABLE/g' $(REPORT_DIR)/log_$(DATE).html + links -dump $(REPORT_DIR)/index.html 2>/dev/null > $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ + w3m -dump $(REPORT_DIR)/index.html 2>/dev/null > $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ + lynx -dump $(REPORT_DIR)/index.html -force_html 2>/dev/null > $(REPORT_DIR)/$(DAILY_REPORT_NAME) + echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) + echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) + links -dump $(REPORT_DIR)/log_$(DATE).html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ + w3m -dump $(REPORT_DIR)/log_$(DATE).html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ + lynx -dump $(REPORT_DIR)/log_$(DATE).html -force_html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) + echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) + echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) + links -dump $(REPORT_DIR)/hist_10.html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ + w3m -dump $(REPORT_DIR)/hist_10.html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ + lynx -dump $(REPORT_DIR)/hist_10.html -force_html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) + +javadoc: + mkdir -p $(JAVADOC_DIR) + javadoc -d $(JAVADOC_DIR) -classpath src org.thermostat.qa.testsuites + cp -r patterns $(JAVADOC_DIR)/org/thermostat/qa/testsuites/ + cp -r scripts $(JAVADOC_DIR)/org/thermostat/qa/testsuites/ + +#### other #### + #webstoragetests: # cp # cp @@ -142,40 +222,11 @@ patternsdef: $(ALL_CLASSES) java -cp $(BUILD_DIR) org.thermostat.qa.framework.PatternDefinitionsGenerator -# targets for all test suites -TESTSUITES = $(shell ls -1 $(SOURCE_DIR)/$(TEST_PACKAGE) | sed -n -e 's/\([A-Za-z0-9]*\)\.java/\1/p') -$(TESTSUITES): $(BUILD_DIR) - mkdir -p $(LOGS_DIR) - mkdir -p $(LOGS_DIR)/$(DATE) - $(JAVA) -cp $(BUILD_DIR) $(TEST_PACKAGE).$@ 2>&1 | tee $(LOGS_DIR)/$(DATE)/$@.log - -listtests: - for tst in $(TESTS); do \ - echo $$tst ; \ - done - -report: $(ALL_CLASSES) flotr javadoc - mkdir -p $(REPORT_DIR) - cp -u $(TEMPLATE_DIR)/style.css $(REPORT_DIR)/style.css - cp -r $(TEMPLATE_DIR)/flotr $(REPORT_DIR) - $(JAVA) -cp $(BUILD_DIR) org.thermostat.qa.reporter.Reporter -template-dir=$(TEMPLATE_DIR) -log-dir=$(LOGS_DIR) -report-dir=$(REPORT_DIR) -date=$(DATE) -tests="$(TESTS)" - sed -i 's/ignored/not applicable/g' $(REPORT_DIR)/log_$(DATE).html - sed -i 's/IGNORED/NOT APPLICABLE/g' $(REPORT_DIR)/log_$(DATE).html - links -dump $(REPORT_DIR)/index.html 2>/dev/null > $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ - w3m -dump $(REPORT_DIR)/index.html 2>/dev/null > $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ - lynx -dump $(REPORT_DIR)/index.html -force_html 2>/dev/null > $(REPORT_DIR)/$(DAILY_REPORT_NAME) - echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) - echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) - links -dump $(REPORT_DIR)/log_$(DATE).html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ - w3m -dump $(REPORT_DIR)/log_$(DATE).html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ - lynx -dump $(REPORT_DIR)/log_$(DATE).html -force_html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) - echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) - echo "" >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) - links -dump $(REPORT_DIR)/hist_10.html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ - w3m -dump $(REPORT_DIR)/hist_10.html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) || \ - lynx -dump $(REPORT_DIR)/hist_10.html -force_html 2>/dev/null >> $(REPORT_DIR)/$(DAILY_REPORT_NAME) - +#### OTHER SOFTWARE #### + +#### FLOTR #### + flotr: $(FLOTR_DIR)/flotr-0.2.0-alpha.js $(FLOTR_LIB_DIR)/canvas2image.js $(FLOTR_LIB_DIR)/canvastext.js $(FLOTR_LIB_DIR)/prototype-1.6.0.2.js $(FLOTR_DIR)/flotr-0.2.0-alpha.js: $(FLOTR_ARCHIVE) @@ -196,39 +247,3 @@ prototype.flotr-0.2.0-alpha.zip: wget $(FLOTR_ADDRESS) - -javadoc: - mkdir -p $(JAVADOC_DIR) - javadoc -d $(JAVADOC_DIR) -classpath src org.thermostat.qa.testsuites - cp -r patterns $(JAVADOC_DIR)/org/thermostat/qa/testsuites/ - cp -r scripts $(JAVADOC_DIR)/org/thermostat/qa/testsuites/ - -clean: - rm -rf $(BUILD_DIR)/org - rm -rf $(TEMPLATE_DIR)/flotr - rm -rf $(JAVADOC_DIR) - rmdir $(BUILD_DIR) - -cleanlogs: clean_logs - -clean_logs: - rm -rf $(LOGS_DIR)/$(DATE) - -clean_all_logs: - rm -rf $(LOGS_DIR) - -$(BUILD_DIR)/$(ROOT_PACKAGE)/%.class: $(SOURCE_DIR)/$(ROOT_PACKAGE)/%.java - $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< - -$(BUILD_DIR)/$(COMMON_PACKAGE)/%.class: $(SOURCE_DIR)/$(COMMON_PACKAGE)/%.java - $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< - -$(BUILD_DIR)/$(FRAMEWORK_PACKAGE)/%.class: $(SOURCE_DIR)/$(FRAMEWORK_PACKAGE)/%.java - $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< - -$(BUILD_DIR)/$(REPORTER_PACKAGE)/%.class: $(SOURCE_DIR)/$(REPORTER_PACKAGE)/%.java - $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< - -$(BUILD_DIR)/$(TEST_PACKAGE)/%.class: $(SOURCE_DIR)/$(TEST_PACKAGE)/%.java - $(JAVAC) -d $(BUILD_DIR) -sourcepath $(SOURCE_DIR)/ $< -