diff options
Diffstat (limited to 'jack-tests/Android.mk')
-rw-r--r-- | jack-tests/Android.mk | 308 |
1 files changed, 308 insertions, 0 deletions
diff --git a/jack-tests/Android.mk b/jack-tests/Android.mk new file mode 100644 index 0000000..7b358a3 --- /dev/null +++ b/jack-tests/Android.mk @@ -0,0 +1,308 @@ +# Copyright (C) 2012 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +private_jack_tests_mk := $(lastword $(MAKEFILE_LIST)) + +LOCAL_PATH:= $(call my-dir) + +test-jack-incremental: $(JACK_JAR) + $(hide) $(eval TEMPDIR := $(shell mktemp -d)) + $(hide) $(JACK) -D jack.jackfile.generate=true -D jack.jackfile.output.container=dir \ + -D jack.jackfile.output.dir=$(TEMPDIR)/jackIncrementalOutput -o \ + $(TEMPDIR)/coreDexFromJava.dex \ + --ecj -nowarn @$(ANDROID_BUILD_TOP)/out/target/common/obj/JAVA_LIBRARIES/core_intermediates/sources.list + $(hide) $(JACK) \ + --output $(TEMPDIR)/coreDexFromJack.dex --import-jack $(TEMPDIR)/jackIncrementalOutput + $(hide) dexdump -d $(TEMPDIR)/coreDexFromJava.dex | tail -n +3 &> $(TEMPDIR)/coreDexFromJava.dex.txt + $(hide) dexdump -d $(TEMPDIR)/coreDexFromJack.dex | tail -n +3 &> $(TEMPDIR)/coreDexFromJack.dex.txt + $(hide) diff --side-by-side --suppress-common-lines $(TEMPDIR)/coreDexFromJava.dex.txt \ + $(TEMPDIR)/coreDexFromJack.dex.txt + $(hide) rm -rf $(TEMPDIR) + +.PHONY: test-jack +test-jack: test-jack-unit test-jack-incremental + +.PHONY: test-jack-all +test-jack-all: test-jack-unit-all test-jack-incremental test-jack-regression + +################# +# tests executing the created dex +################# +JACK_PATH := $(LOCAL_PATH) +include $(LOCAL_PATH)/build/run-test-common.mk + +# tests suites + +# Annotation +$(call declare-test-with-name,annotation/test001) +$(call declare-test-with-name,annotation/test002) +$(call declare-test-with-name,annotation/test003) +# Annotation on package are not supported in dex format: http://code.google.com/p/android/issues/detail?id=16149 +#$(call declare-test-with-name,annotation/test005) +$(call declare-test-with-name,annotation/test006) +$(call declare-test-with-name,annotation/test007) +$(call declare-test-with-name,annotation/test008) +$(call declare-test-with-name,annotation/test009) + +# Arithmetic +$(call declare-test-with-name,arithmetic/test001) +$(call declare-test-with-name,arithmetic/test002) +$(call declare-test-with-name,arithmetic/test003) + +# Array +$(call declare-test-with-name,array/test001) + +# Assertions +# this test must be run with assertions enabled (for now, use dalvik) +#$(call declare-test-with-name,assertion/test001) +$(call declare-test-with-name,assertion/test002) +$(call declare-test-with-name,assertion/test003) + +# Assign +$(call declare-test-with-name,assign) + +# Box +$(call declare-test-with-name,box/test001) + +# Bridge +$(call declare-test-with-name,bridge/test001) +$(call declare-test-with-name,bridge/test002) +$(call declare-test-with-name,bridge/test003) +$(call declare-test-with-name,bridge/test004) +$(call declare-test-with-name,bridge/test005) +$(call declare-test-with-name,bridge/test006) +$(call declare-test-with-name,bridge/test007) + +# Cast +$(call declare-test-with-name,cast/explicit001) +$(call declare-test-with-name,cast/implicit001) +$(call declare-test-with-name,cast/implicit002) +$(call declare-test-with-name,cast/implicit003) +$(call declare-test-with-name,cast/implicit004) +$(call declare-test-with-name,cast/useless001) +$(call declare-test-with-name,cast/useless002) + +# Comparisons +$(call declare-test-with-name,comparison/test001) + +# Constant +$(call declare-test-with-name,constant/test001) +$(call declare-test-with-name,constant/test002) +$(call declare-test-with-name,constant/test003) +$(call declare-test-with-name,constant/test004) +$(call declare-test-with-name,constant/test005) +$(call declare-test-with-name,constant/test006) +$(call declare-test-with-name,constant/test007) +$(call declare-test-with-name,constant/clazz) + +# Debug info +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/debug/test001/test.mk) +$(call declare-test-with-name,debug/test002) +$(call declare-test-with-name,debug/test004) + +# Dx compiler and optimizer tests +$(call declare-test-with-name,dx/compiler) +$(call declare-test-with-name,dx/optimizer) +$(call declare-test-with-name,dx/overlapping) + +# Enum +$(call declare-test-with-name,enums/test001) +$(call declare-test-with-name,enums/test002) +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/enums/test003/test.mk) + +# Conditional +$(call declare-test-with-name,conditional/test001) +$(call declare-test-with-name,conditional/test002) +$(call declare-test-with-name,conditional/test003) +$(call declare-test-with-name,conditional/test004) +$(call declare-test-with-name,conditional/test005) +$(call declare-test-with-name,conditional/test006) +$(call declare-test-with-name,conditional/test007) + +# External +$(call declare-test-with-name,external/test001) + +# Field +$(call declare-test-with-name,field/static001) +$(call declare-test-with-name,field/static002) +$(call declare-test-with-name,field/static004) +$(call declare-test-with-name,field/static005) +$(call declare-test-with-name,field/instance001) +$(call declare-test-with-name,field/instance002) +$(call declare-test-with-name,field/instance003) +$(call declare-test-with-name,field/instance004) + +# Finally +$(call declare-test-with-name,tryfinally/finallyblock) +$(call declare-test-with-name,tryfinally/finally002) +$(call declare-test-with-name,tryfinally/finally003) +$(call declare-test-with-name,tryfinally/finally004) + +# Fibonacci +$(call declare-test-with-name,fibonacci) + +# Flow +$(call declare-test-with-name,flow/loop) +$(call declare-test-with-name,flow/cfg001) + +# If +$(call declare-test-with-name,ifstatement/simpleTest) +$(call declare-test-with-name,ifstatement/advancedTest) +$(call declare-test-with-name,ifstatement/cfgTest) +$(call declare-test-with-name,ifstatement/fastpath) + +# Init +$(call declare-test-with-name,init/test002) + +# Inner +$(call declare-test-with-name,inner/test001) +$(call declare-test-with-name,inner/test002) +$(call declare-test-with-name,inner/test003) +$(call declare-test-with-name,inner/test004) +$(call declare-test-with-name,inner/test005) +$(call declare-test-with-name,inner/test006) +$(call declare-test-with-name,inner/test007) +$(call declare-test-with-name,inner/test008) +$(call declare-test-with-name,inner/test009) +$(call declare-test-with-name,inner/test010) +$(call declare-test-with-name,inner/test011) +$(call declare-test-with-name,inner/test012) +$(call declare-test-with-name,inner/test013) +$(call declare-test-with-name,inner/test014) +$(call declare-test-with-name,inner/test015) +$(call declare-test-with-name,inner/test016) +$(call declare-test-with-name,inner/test017) +$(call declare-test-with-name,inner/test018) +$(call declare-test-with-name,inner/test019) +$(call declare-test-with-name,inner/test020) +$(call declare-test-with-name,inner/test021) +$(call declare-test-with-name,inner/test022) +$(call declare-test-with-name,inner/test023) +$(call declare-test-with-name,inner/test024) +$(call declare-test-with-name,inner/test026) + +# Invoke +$(call declare-test-with-name,invoke/test001) +$(call declare-test-with-name,invoke/test002) +$(call declare-test-with-name,invoke/test003) +$(call declare-test-with-name,invoke/test004) +$(call declare-test-with-name,invoke/test005) +$(call declare-test-with-name,invoke/test006) + +# Jarjar +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/jarjar/test001/test.mk) +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/jarjar/test003/test.mk) + +# Newarray +$(call declare-test-with-name,newarray/test001) +$(call declare-test-with-name,newarray/test002) +$(call declare-test-with-name,newarray/test003) +$(call declare-test-with-name,newarray/test004) + +# Not simplifier +$(call declare-test-with-name,optimizations/notsimplifier/test001) +$(call declare-test-with-name,optimizations/exprsimplifier/test001) + +# Opcode +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/opcodes/test-opcodes.mk) + +# Order +$(call declare-test-with-name,order) + +# Return +$(call declare-test-with-name,returnstatement/returnvoid) +$(call declare-test-with-name,returnstatement/returns) + +# Shrob +#$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/shrob/test011/test.mk) +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/shrob/test011/test2.mk) +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/shrob/test016/test.mk) +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/shrob/test025/test.mk) +$(call declare-test,$(LOCAL_PATH)/tests/com/android/jack/shrob/test030/test.mk) + +# String +$(call declare-test-with-name,string/concat001) +$(call declare-test-with-name,string/concat002) + +# Switches +$(call declare-test-with-name,switchstatement/test001) +$(call declare-test-with-name,switchstatement/test002) +$(call declare-test-with-name,switchstatement/test003) +# TODO uncomment when bug 7439926 is corrected +#$(call declare-test-with-name,switchstatement/test004) +$(call declare-test-with-name,switchstatement/test005) +$(call declare-test-with-name,switchstatement/test006) +$(call declare-test-with-name,switchstatement/test007) +$(call declare-test-with-name,switchstatement/test008) + +# Synchronize +$(call declare-test-with-name,synchronize/test001) + +# Three Address +$(call declare-test-with-name,threeaddress) + +# Throws +$(call declare-test-with-name,throwstatement/test001) + +# Try/Catch +$(call declare-test-with-name,trycatch/test001) +$(call declare-test-with-name,trycatch/test002) +$(call declare-test-with-name,trycatch/test003) +$(call declare-test-with-name,trycatch/test005) + +# Type +$(call declare-test-with-name,type/test001) +$(call declare-test-with-name,type/test002) + +# Unary +$(call declare-test-with-name,unary/test001) +$(call declare-test-with-name,unary/test002) +$(call declare-test-with-name,unary/test003) +$(call declare-test-with-name,unary/test004) + +# Verify +$(call declare-test-with-name,verify/test001) + +#Java7 +$(call declare-java7-test-with-name,java7/switches/test001) +$(call declare-java7-test-with-name,java7/switches/test002) +$(call declare-java7-test-with-name,java7/switches/test003) +$(call declare-java7-test-with-name,java7/exceptions/test001) +$(call declare-java7-test-with-name,java7/exceptions/test002) +$(call declare-java7-test-with-name,java7/exceptions/test003) +$(call declare-java7-test-with-name,java7/exceptions/test004) +$(call declare-java7-test-with-name,java7/exceptions/test005) +$(call declare-java7-test-with-name,java7/trywithresources/test001) +$(call declare-java7-test-with-name,java7/trywithresources/test002) +$(call declare-java7-test-with-name,java7/parser/literals/test001) +$(call declare-java7-test-with-name,java7/parser/literals/test002) + +# define global regression test +include $(JACK_CLEAR_VARS) + +JACKTEST_MODULE := regression +JACKTEST_WITHJACK_SRC := $(JACKREGRESSIONTEST_WITHJACK_SRC) +JACKTEST_WITHDX_SRC := $(JACKREGRESSIONTEST_WITHDX_SRC) +JACKTEST_LIB_SRC := $(JACKREGRESSIONTEST_LIB_SRC) +JACKTEST_LINK_SRC := $(JACKREGRESSIONTEST_LINK_SRC) +JACKTEST_JUNIT := $(JACKREGRESSIONTEST_JUNIT) +PRIVATE_TEST_MK := $(JACKREGRESSIONTEST_TEST_MK) $(private_jack_tests_mk) +JAVA_COMPILER := $(COMMON_JAVAC) + +include $(JACK_RUN_TEST) +test-jack: test-jack-$(JACKTEST_MODULE) + $(hide) echo test-jack: PASSED +ifeq ($(JAVA7_COMPILER),) + $(hide) echo test-jack: Missing Java 7 compiler, Java 7 tests Skipped, export Java 7 compiler into JAVA7_COMPILER +endif |