changeset 207:934543b8084d

Backout 4f195bca0dc8 - unapproved patch
author Andrew John Hughes <ahughes@redhat.com>
date Mon, 11 Apr 2011 16:03:44 +0100
parents 123f69dacbe4
children c84f2e5b039f
files ChangeLog Makefile.am configure.ac
diffstat 3 files changed, 86 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Apr 11 16:02:25 2011 +0100
+++ b/ChangeLog	Mon Apr 11 16:03:44 2011 +0100
@@ -1,7 +1,3 @@
-2011-04-11  Jiri Vanek  <jvanek@redhat.com>
-
-	* removed junit (1/2 from mooving to testNG)
-
 2011-04-08  Omair Majid  <omajid@redhat.com>
 
 	* README: Update to add notes on rhino and junit.
--- a/Makefile.am	Mon Apr 11 16:02:25 2011 +0100
+++ b/Makefile.am	Mon Apr 11 16:03:44 2011 +0100
@@ -6,6 +6,17 @@
 NETX_EXTRA_DIR=$(abs_top_srcdir)/extra/net/sourceforge/javaws/about/resources
 NETX_EXTRA_DIST_DIR=$(abs_top_builddir)/extra-lib/net/sourceforge/javaws/about/resources
 
+TESTS_SRCDIR=$(abs_top_srcdir)/tests
+TESTS_DIR=$(abs_top_builddir)/tests.build
+
+NETX_UNIT_TEST_SRCDIR=$(TESTS_SRCDIR)/netx/unit
+NETX_UNIT_TEST_DIR=$(TESTS_DIR)/netx/unit
+
+JUNIT_RUNNER_DIR=$(TESTS_DIR)/junit-runner
+JUNIT_RUNNER_SRCDIR=$(TESTS_SRCDIR)/junit-runner
+
+JUNIT_RUNNER_JAR=$(abs_top_builddir)/junit-runner.jar
+
 # Build directories
 
 BOOT_DIR = $(abs_top_builddir)/bootstrap/jdk1.6.0
@@ -80,6 +91,19 @@
 endif
 endif
 
+if WITH_RHINO
+  RHINO_TESTS=check-pac-functions
+else
+  RHINO_TESTS=
+endif
+
+if WITH_JUNIT
+  JUNIT_TESTS=run-netx-unit-tests
+else
+  JUNIT_TESTS=
+endif
+
+
 PLUGIN_VERSION = IcedTea-Web $(FULL_VERSION)
 
 EXTRA_DIST = $(top_srcdir)/netx $(top_srcdir)/plugin javaws.png javaws.desktop.in extra launcher \
@@ -100,7 +124,7 @@
 all-local: stamps/netx-dist.stamp extra-lib/about.jar stamps/plugin.stamp launcher.build/javaws \
  javaws.desktop stamps/docs.stamp launcher.build/itweb-settings itweb-settings.desktop
 
-check-local: check-pac-functions
+check-local: $(RHINO_TESTS) $(JUNIT_TESTS)
 
 clean-local: clean-netx clean-plugin clean-liveconnect clean-extra clean-bootstrap-directory \
  clean-native-ecj clean-launchers clean-desktop-files clean-docs clean-tests
@@ -110,7 +134,8 @@
 
 .PHONY: clean-IcedTeaPlugin clean-add-netx clean-add-netx-debug clean-add-plugin clean-add-plugin-debug \
  clean-bootstrap-directory clean-native-ecj clean-desktop-files clean-netx-docs clean-docs clean-plugin-docs \
- clean-tests check-local clean-launchers 
+ clean-tests check-local clean-launchers check-pac-functions run-netx-unit-tests clean-netx-tests \
+ clean-junit-runner clean-netx-unit-tests
 
 install-exec-local:
 	${mkinstalldirs} $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/$(PACKAGE_NAME)/ $(DESTDIR)$(libdir)
@@ -398,11 +423,67 @@
 # check
 # ==========================
 
+clean-tests: clean-netx-tests
+	if [ -e $(TESTS_DIR) ]; then \
+		rmdir $(TESTS_DIR) ; \
+	fi
+
 check-pac-functions: stamps/bootstrap-directory.stamp
 	./jrunscript $(abs_top_srcdir)/tests/netx/pac/pac-funcs-test.js \
 	  $$(readlink -f $(abs_top_srcdir)/netx/net/sourceforge/jnlp/runtime/pac-funcs.js)
 
--clean-tests:
+junit-runner-source-files.txt:
+	find $(JUNIT_RUNNER_SRCDIR) -name '*.java' | sort > $@
+
+$(JUNIT_RUNNER_JAR): junit-runner-source-files.txt
+	mkdir -p $(JUNIT_RUNNER_DIR) && \
+	$(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
+	  -d $(JUNIT_RUNNER_DIR) \
+	  -classpath $(JUNIT_JAR) \
+	  @junit-runner-source-files.txt && \
+	$(BOOT_DIR)/bin/jar cf $@  -C $(JUNIT_RUNNER_DIR) .
+
+netx-unit-tests-source-files.txt:
+	find $(NETX_UNIT_TEST_SRCDIR) -name '*.java' | sort > $@
+
+stamps/netx-unit-tests-compile.stamp: stamps/netx.stamp \
+ netx-unit-tests-source-files.txt
+	mkdir -p $(NETX_UNIT_TEST_DIR) && \
+	$(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
+	 -d $(NETX_UNIT_TEST_DIR) \
+	 -classpath $(JUNIT_JAR):$(NETX_DIR)/lib/classes.jar \
+	 @netx-unit-tests-source-files.txt && \
+	mkdir -p stamps && \
+	touch $@
+
+run-netx-unit-tests: stamps/netx-unit-tests-compile.stamp \
+ $(JUNIT_RUNNER_JAR)
+	cp {$(NETX_UNIT_TEST_SRCDIR),$(NETX_UNIT_TEST_DIR)}/net/sourceforge/jnlp/basic.jnlp
+	cd $(NETX_UNIT_TEST_DIR) ; \
+	class_names= ; \
+	for test in `find -type f` ; do \
+	  class_name=`echo $$test | sed -e 's|\.class$$||' -e 's|^\./||'` ; \
+	  class_name=`echo $$class_name | sed -e 's|/|.|g' ` ; \
+	  class_names="$$class_names $$class_name" ; \
+	done ; \
+	echo $$class_names ; \
+	CLASSPATH=$(NETX_DIR)/lib/classes.jar:$(JUNIT_JAR):$(JUNIT_RUNNER_JAR):. \
+	  $(BOOT_DIR)/bin/java -Xbootclasspath:$(RUNTIME) CommandLine $$class_names
+
+clean-netx-tests: clean-netx-unit-tests clean-junit-runner
+	if [ -e $(TESTS_DIR)/netx ]; then \
+	  rmdir $(TESTS_DIR)/netx ; \
+	fi
+
+clean-junit-runner:
+	rm -f junit-runner-source-files.txt
+	rm -rf $(JUNIT_RUNNER_DIR)
+	rm -f $(JUNIT_RUNNER_JAR)
+
+clean-netx-unit-tests:
+	rm -f netx-unit-tests-source-files.txt
+	rm -rf $(NETX_UNIT_TEST_DIR)
+	rm -f stamps/netx-unit-tests-compile.stamp
 
 # plugin tests
 
--- a/configure.ac	Mon Apr 11 16:02:25 2011 +0100
+++ b/configure.ac	Mon Apr 11 16:03:44 2011 +0100
@@ -85,6 +85,8 @@
 
 IT_FIND_OPTIONAL_JAR([rhino], RHINO,
     [/usr/share/java/js.jar /usr/share/rhino-1.6/lib/js.jar])
+IT_FIND_OPTIONAL_JAR([junit], JUNIT,
+    [/usr/share/java/junit4.jar])
 
 AC_CONFIG_FILES([jrunscript], [chmod u+x jrunscript])
 AC_CONFIG_FILES([build.properties])