diff options
author | Jean-Marie Henaff <jmhenaff@google.com> | 2014-12-12 10:57:35 +0100 |
---|---|---|
committer | Jean-Marie Henaff <jmhenaff@google.com> | 2015-01-14 09:17:30 +0100 |
commit | 09f9bf059547d1123dc53009282acd796dd4219a (patch) | |
tree | e3848c2bbdae936d940e27a50c9cb8557ea451cd /jack/tests | |
parent | c12881d6cf4f3389568ad7e5ae47d49d10451f87 (diff) | |
download | toolchain_jack-09f9bf059547d1123dc53009282acd796dd4219a.tar.gz toolchain_jack-09f9bf059547d1123dc53009282acd796dd4219a.tar.bz2 toolchain_jack-09f9bf059547d1123dc53009282acd796dd4219a.zip |
Adapt more tests to new test framework
Change-Id: Id409d03f887ce20dbcf1a04792df75e3acafd499
Diffstat (limited to 'jack/tests')
14 files changed, 0 insertions, 1219 deletions
diff --git a/jack/tests/com/android/jack/AllTests.java b/jack/tests/com/android/jack/AllTests.java index 68d67592..74ae7838 100644 --- a/jack/tests/com/android/jack/AllTests.java +++ b/jack/tests/com/android/jack/AllTests.java @@ -36,8 +36,6 @@ import org.junit.runners.Suite.SuiteClasses; @RunWith(Suite.class) @SuiteClasses(value = { com.android.jack.cfg.AllTests.class, - com.android.jack.compile.androidtree.AllTests.class, - com.android.jack.compile.androidtree.dalvik.AllTests.class, com.android.jack.frontend.AllTests.class, com.android.jack.gwt.AllTests.class, com.android.jack.shrob.AllTests.class, @@ -52,17 +50,14 @@ import org.junit.runners.Suite.SuiteClasses; MarkerCollectorTest.class, /* MultiDexOverflowTests.class, */ /* MultiDexTests.class, */ - NoClasspathTest.class, PreProcessorTest.class, // ReachingDefsTest.class, RopRegisterManagerTest.class, StaticValuesTest.class, StringSplittingTest.class, - ToolchainTest.class, Types.class, UnaryTest.class, UselessCastRemoverTest.class, - WithPhantomTest.class, TracingTest.class}) public class AllTests { } diff --git a/jack/tests/com/android/jack/NoClasspathTest.java b/jack/tests/com/android/jack/NoClasspathTest.java deleted file mode 100644 index aee0f335..00000000 --- a/jack/tests/com/android/jack/NoClasspathTest.java +++ /dev/null @@ -1,182 +0,0 @@ -/* - * Copyright (C) 2013 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. - */ - -package com.android.jack; - -import com.android.jack.backend.dex.DexFileWriter; -import com.android.jack.category.SlowTests; -import com.android.jack.config.id.JavaVersionPropertyId.JavaVersion; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; - -@Ignore("Tree") -@Category(SlowTests.class) -public class NoClasspathTest { - - private static Sourcelist CORE_SOURCELIST; - - private static Sourcelist BOUNCY_SOURCELIST; - - private static Sourcelist CONSCRYPT_SOURCELIST; - - private static Sourcelist OKHTTP_SOURCELIST; - - private static Sourcelist EXT_SOURCELIST; - - private static Sourcelist CORE_JUNIT_SOURCELIST; - - private static Sourcelist FRAMEWORK_SOURCELIST; - - protected static File FRAMEWORK_JAR ; - - private static File GUAVA_JAR; - - private static File SERVICES_JAR; - - private static File ARITY_JAR; - - private static File PLAY_SERVICE_JAR; - - private static String corePath; - - @BeforeClass - public static void setup() throws Exception { - CORE_SOURCELIST = TestTools.getTargetLibSourcelist("core-libart"); - BOUNCY_SOURCELIST = TestTools.getTargetLibSourcelist("bouncycastle"); - CONSCRYPT_SOURCELIST = TestTools.getTargetLibSourcelist("conscrypt"); - OKHTTP_SOURCELIST = TestTools.getTargetLibSourcelist("okhttp"); - EXT_SOURCELIST = TestTools.getTargetLibSourcelist("ext"); - CORE_JUNIT_SOURCELIST = - TestTools.getTargetLibSourcelist("core-junit"); - FRAMEWORK_SOURCELIST = - TestTools.getTargetLibSourcelist("framework"); - - FRAMEWORK_JAR = TestTools.getFromAndroidTree( - "/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/" + "classes.zip"); - - GUAVA_JAR = TestTools - .getFromAndroidTree("out/target/common/obj/JAVA_LIBRARIES/guava_intermediates/classes.zip"); - SERVICES_JAR = TestTools - .getFromAndroidTree("out/target/common/obj/JAVA_LIBRARIES/services_intermediates/" - + "classes.zip"); - ARITY_JAR = TestTools - .getFromAndroidTree("out/target/common/obj/JAVA_LIBRARIES/libarity_intermediates/" - + "classes.zip"); - PLAY_SERVICE_JAR = TestTools - .getFromAndroidTree("out/target/common/obj/JAVA_LIBRARIES/" - + "google-play-services-first-party_intermediates/classes.zip"); - - File coreOut = TestTools.createTempFile("core", ".zip"); - Options options = new Options(); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.compileSourceToJack(options, CORE_SOURCELIST, null, coreOut, true); - corePath = coreOut.getAbsolutePath(); - } - - @Test - public void ext() throws Exception { - File extJack = TestTools.createTempFile("ext", ".zip"); - TestTools.compileSourceToJack(new Options(), EXT_SOURCELIST, corePath, extJack, true); - - File extFolder = TestTools.createTempDir("ext", "dex"); - TestTools.compileJackToDex(new Options(), extJack, extFolder, false); - } - - @Test - public void frameworkFromJack() throws Exception { - - File conscryptJack = TestTools.createTempFile("conscrypt", ".zip"); - TestTools.compileSourceToJack(new Options(), CONSCRYPT_SOURCELIST, corePath, conscryptJack, - true); - File conscryptRenamedJack = TestTools.createTempFile("conscryptrenamed", ".zip"); - File conscyptRules = - new JarJarRules(TestTools.getFromAndroidTree("external/conscrypt/jarjar-rules.txt")); - TestTools.jarjarJackToJack( - new Options(), conscryptJack, null, conscryptRenamedJack, conscyptRules, true); - - File okhttpJack = TestTools.createTempFile("okkttp", ".zip"); - TestTools.compileSourceToJack(new Options(), OKHTTP_SOURCELIST, - corePath + File.pathSeparatorChar + conscryptRenamedJack.getAbsolutePath(), okhttpJack, - true); - File okhttpRenamedJack = TestTools.createTempFile("okhttprenamed", ".zip"); - File okhttpRules = - new JarJarRules(TestTools.getFromAndroidTree("external/okhttp/jarjar-rules.txt")); - TestTools.jarjarJackToJack( - new Options(), okhttpJack, null, okhttpRenamedJack, okhttpRules, true); - - File extJack = TestTools.createTempFile("ext", ".zip"); - TestTools.compileSourceToJack(new Options(), EXT_SOURCELIST, corePath, extJack, true); - - File bouncyCastleJack = TestTools.createTempFile("bouncyjack", ".zip"); - TestTools.compileSourceToJack(new Options(), BOUNCY_SOURCELIST, corePath, bouncyCastleJack, - true); - - File coreJunitJack = TestTools.createTempFile("corejunitjack", ".zip"); - TestTools.compileSourceToJack(new Options(), CORE_JUNIT_SOURCELIST, corePath, coreJunitJack, - true); - - File bouncyCastleRenamedJack = TestTools.createTempFile("bouncyjackrenamed", ".zip"); - File jarjarRules = - new JarJarRules(TestTools.getFromAndroidTree("external/bouncycastle/jarjar-rules.txt")); - TestTools.jarjarJackToJack( - new Options(), bouncyCastleJack, null, bouncyCastleRenamedJack, jarjarRules, true); - - String classpath = corePath + File.pathSeparatorChar + conscryptRenamedJack.getAbsolutePath() - + File.pathSeparatorChar + okhttpRenamedJack.getAbsolutePath() - + File.pathSeparatorChar + extJack.getAbsolutePath() - + File.pathSeparatorChar + bouncyCastleRenamedJack.getAbsolutePath() - + File.pathSeparatorChar + coreJunitJack.getAbsolutePath(); - File frameworkJackZip = TestTools.createTempFile("framework", ".zip"); - Options options = new Options(); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.compileSourceToJack( - options, FRAMEWORK_SOURCELIST, classpath, frameworkJackZip, true); - - Options dexOptions = new Options(); - dexOptions.addProperty(DexFileWriter.DEX_WRITING_POLICY.getName(), "multidex"); - File frameworkDexFolder = TestTools.createTempDir("framework", "dex"); - TestTools.compileJackToDex(dexOptions, frameworkJackZip, frameworkDexFolder, false); - } - - @Test - public void guava() throws Exception { - File guavaDexFolder = TestTools.createTempDir("guava", "dex"); - TestTools.compileJackToDex(new Options(), GUAVA_JAR, guavaDexFolder, false); - } - - @Test - public void services() throws Exception { - File servicesDexFolder = TestTools.createTempDir("service", "dex"); - TestTools.compileJackToDex(new Options(), SERVICES_JAR, servicesDexFolder, false); - } - - @Test - public void arity() throws Exception { - File arityDexFolder = TestTools.createTempDir("arity", "dex"); - TestTools.compileJackToDex(new Options(), ARITY_JAR, arityDexFolder, false); - } - - @Test - public void playservices() throws Exception { - File playServiceDexFolder = TestTools.createTempDir("playservices", "dex"); - TestTools.compileJackToDex(new Options(), PLAY_SERVICE_JAR, playServiceDexFolder, false); - } -} diff --git a/jack/tests/com/android/jack/ToolchainTest.java b/jack/tests/com/android/jack/ToolchainTest.java deleted file mode 100644 index 9577aa10..00000000 --- a/jack/tests/com/android/jack/ToolchainTest.java +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Copyright (C) 2013 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. - */ - -package com.android.jack; - -import com.android.jack.config.id.JavaVersionPropertyId.JavaVersion; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -/** - * Tests that test different steps of the Jack toolchain. - * These tests only rely on the Android tree for source lists. - * They are supposed to be run in test-jack (ideally before each commit). - */ -@Ignore("Tree") -public class ToolchainTest { - - private static Sourcelist CORE_SOURCELIST; - - private static Sourcelist BOUNCY_SOURCELIST; - - private static Sourcelist JUNIT_SOURCELIST; - - private static File corePath; - - @BeforeClass - public static void setup() throws Exception { - CORE_SOURCELIST = TestTools.getTargetLibSourcelist("core-libart"); - BOUNCY_SOURCELIST = - TestTools.getTargetLibSourcelist("bouncycastle"); - JUNIT_SOURCELIST = TestTools.getHostLibSourcelist("junit4-hostdex-jack"); - - File coreOut = TestTools.createTempFile("core", ".zip"); - Options options = new Options(); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.compileSourceToJack(options, CORE_SOURCELIST, null, coreOut, true); - corePath = coreOut; - } - - @Test - public void shrobTestNoZip() throws Exception { - File shrobTestJackOut = TestTools.createTempDir("shrobtest", "dir"); - String testName = "shrob/test001"; - String classpath = corePath.getAbsolutePath(); - File sourceDir = TestTools.getJackTestsWithJackFolder(testName); - TestTools.compileSourceToJack( - new Options(), sourceDir, classpath, shrobTestJackOut, false); - - File shrobTestShrunkOut = TestTools.createTempDir("shrobshrunk", "dir"); - List<ProguardFlags> flagFiles = new ArrayList<ProguardFlags>(); - File testFolder = TestTools.getJackTestFolder(testName); - flagFiles.add(new ProguardFlags(testFolder, "proguard.flags001")); - flagFiles.add(new ProguardFlags(testFolder, "proguard.flags004")); - TestTools.shrobJackToJack( - new Options(), shrobTestJackOut, classpath, shrobTestShrunkOut, flagFiles, false); - - File shrobTestDexOutFolder = TestTools.createTempDir("shrobbed", "dex"); - TestTools.compileJackToDex(new Options(), shrobTestShrunkOut, shrobTestDexOutFolder, false); - } - - @Test - public void shrobTestZip() throws Exception { - File shrobTestJackOut = TestTools.createTempFile("shrobtest", ".zip"); - String testName = "shrob/test001"; - String classpath = corePath.getAbsolutePath(); - File sourceDir = TestTools.getJackTestsWithJackFolder(testName); - TestTools.compileSourceToJack( - new Options(), sourceDir, classpath, shrobTestJackOut, true); - - File shrobTestShrunkOut = TestTools.createTempFile("shrunk", ".zip"); - List<ProguardFlags> flagFiles = new ArrayList<ProguardFlags>(); - File testFolder = TestTools.getJackTestFolder(testName); - flagFiles.add(new ProguardFlags(testFolder, "proguard.flags001")); - flagFiles.add(new ProguardFlags(testFolder, "proguard.flags004")); - TestTools.shrobJackToJack( - new Options(), shrobTestJackOut, classpath, shrobTestShrunkOut, flagFiles, true); - - File shrobTestDexOut = TestTools.createTempFile("shrobbed", ".dex.zip"); - TestTools.compileJackToDex(new Options(), shrobTestShrunkOut, shrobTestDexOut, true); - } - - @Test - public void bouncyCastle() throws Exception { - File bouncyCastleJack = TestTools.createTempFile("bouncyjack", ".zip"); - TestTools.compileSourceToJack( - new Options(), BOUNCY_SOURCELIST, corePath.getAbsolutePath(), bouncyCastleJack, true); - - File bouncyCastleOutFolder = TestTools.createTempDir("bouncy", "dex"); - TestTools.compileJackToDex(new Options(), bouncyCastleJack, bouncyCastleOutFolder, false); - } - - @Test - public void core() throws Exception { - File coreOutFolder = TestTools.createTempDir("core", "dex"); - TestTools.compileJackToDex(new Options(), corePath, coreOutFolder, false); - } - - @Test - public void junit() throws Exception { - File junitJack = TestTools.createTempFile("junit", ".zip"); - TestTools.compileSourceToJack( - new Options(), JUNIT_SOURCELIST, corePath.getAbsolutePath() + File.pathSeparator + - TestTools.getFromAndroidTree( - "out/host/common/obj/JAVA_LIBRARIES/hamcrest-core-hostdex-jack_intermediates/classes.zip"), junitJack, true); - - File junitOutFolder = TestTools.createTempDir("junit", "dex"); - TestTools.compileJackToDex(new Options(), junitJack, junitOutFolder, false); - } - - @Test - public void jarjarTest() throws Exception { - File jarjarTestJackOut = TestTools.createTempFile("jarjartest", ".zip"); - String testName = "jarjar/test003"; - String classpath = corePath.getAbsolutePath(); - File sourceDir = TestTools.getJackTestsWithJackFolder(testName); - TestTools.compileSourceToJack( - new Options(), sourceDir, classpath, jarjarTestJackOut, true); - - File dalvikAnnotations = TestTools.getFromAndroidTree("libcore/dalvik/src/main/java/"); - File dalvikAnnotationsJackOut = TestTools.createTempFile("dalvikannotations", ".zip"); - TestTools.compileSourceToJack( - new Options(), dalvikAnnotations, classpath, dalvikAnnotationsJackOut, true); - - File jarjarTestRenamedOut = TestTools.createTempFile("jarjartestrenamed", ".zip"); - File jarjarRules = new File(TestTools.getJackTestFolder(testName), "jarjar-rules.txt"); - TestTools.jarjarJackToJack( - new Options(), jarjarTestJackOut, classpath, jarjarTestRenamedOut, jarjarRules, true); - - File jarjarTestDexOutFolder = TestTools.createTempDir("jarjared", "dex"); - TestTools.compileJackToDex(new Options(), jarjarTestRenamedOut, jarjarTestDexOutFolder, false); - } -} diff --git a/jack/tests/com/android/jack/WithPhantomTest.java b/jack/tests/com/android/jack/WithPhantomTest.java deleted file mode 100644 index 3043f3bc..00000000 --- a/jack/tests/com/android/jack/WithPhantomTest.java +++ /dev/null @@ -1,224 +0,0 @@ -/* - * Copyright (C) 2014 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. - */ - -package com.android.jack; - -import com.android.jack.category.KnownBugs; -import com.android.jack.library.FileType; -import com.android.sched.util.collect.Lists; - -import junit.framework.Assert; - -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; -import java.io.FilenameFilter; - -import javax.annotation.Nonnull; - -/** - * Test compilation involving phantoms. - */ -public class WithPhantomTest { - - @Nonnull - private static final String CLASSPATH = TestTools.getDefaultClasspathString(); - @Nonnull - private static final String TEST001 = "withphantom/test001"; - @Nonnull - private static final String TEST002 = "withphantom/test002"; - - @Nonnull - private static String fixPath(@Nonnull String unixPath) { - return unixPath.replace('/', File.separatorChar); - } - - @Test - public void testPhantomOuter() throws Exception { - File tempJackFolder = TestTools.createTempDir("jack", "dir"); - TestTools.compileSourceToJack(new Options(), - TestTools.getJackTestsWithJackFolder(TEST001), - CLASSPATH, tempJackFolder, false /* non-zipped */); - boolean deleted = - new File(tempJackFolder, FileType.JAYCE.getPrefix() + File.separatorChar - + fixPath("com/android/jack/withphantom/test001/jack/A.jayce")).delete(); - Assert.assertTrue(deleted); - - File testFolder = TestTools.getJackTestFolder(TEST001); - - File tempOut1 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut1, - Lists.create( - new ProguardFlags(testFolder, "shrink1.flags")), - false /* non-zipped */); - - File tempOut2 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut2, - Lists.create( - new ProguardFlags(testFolder, "shrink2.flags")), - false /* non-zipped */); - - File tempOut3 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut3, - Lists.create( - new ProguardFlags(testFolder, "obf1.flags")), - false /* non-zipped */); - - File tempOut4 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut4, - Lists.create( - new ProguardFlags(testFolder, "obf2.flags")), - false /* non-zipped */); - - File tempOut5 = TestTools.createTempDir("jack", "dex"); - TestTools.compileJackToDex(new Options(), tempJackFolder, tempOut5, false /* non-zipped */); - - } - - @Test - public void testPhantomInner() throws Exception { - File tempJackFolder = TestTools.createTempDir("jack", "dir"); - TestTools.compileSourceToJack(new Options(), - TestTools.getJackTestsWithJackFolder(TEST001), - CLASSPATH, tempJackFolder, false /* non-zipped */); - boolean deleted = - new File(tempJackFolder, fixPath(FileType.JAYCE.getPrefix() + File.separatorChar - + "com/android/jack/withphantom/test001/jack/A$Inner1.jayce")).delete(); - Assert.assertTrue(deleted); - deleted = - new File(tempJackFolder, fixPath(FileType.DEX.getPrefix() + File.separatorChar - + "com/android/jack/withphantom/test001/jack/A$Inner1.dex")).delete(); - Assert.assertTrue(deleted); - - File testFolder = TestTools.getJackTestFolder(TEST001); - - File tempOut1 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut1, - Lists.create( - new ProguardFlags(testFolder, "shrink1.flags")), - false /* non-zipped */); - - File tempOut2 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut2, - Lists.create( - new ProguardFlags(testFolder, "shrink2.flags")), - false /* non-zipped */); - - File tempOut3 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut3, - Lists.create( - new ProguardFlags(testFolder, "obf1.flags")), - false /* non-zipped */); - - File tempOut4 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut4, - Lists.create( - new ProguardFlags(testFolder, "obf2.flags")), - false /* non-zipped */); - - File tempOutFolder = TestTools.createTempDir("jack", "dex"); - TestTools.compileJackToDex(new Options(), tempJackFolder, tempOutFolder, - false /* non-zipped */); - } - - @Category(value = KnownBugs.class) - @Test - public void testPhantomLocal() throws Exception { - File tempJackFolder = TestTools.createTempDir("jack", "dir"); - TestTools.compileSourceToJack(new Options(), - TestTools.getJackTestsWithJackFolder(TEST002), - CLASSPATH, tempJackFolder, false /* non-zipped */); - File[] inners = - new File(tempJackFolder, fixPath(FileType.JAYCE.getPrefix() + File.separatorChar - + "com/android/jack/withphantom/test002/jack/")).listFiles(new FilenameFilter() { - @Override - public boolean accept(File dir, String name) { - return name.startsWith("A$"); - } - }); - for (File file : inners) { - Assert.assertTrue(file.delete()); - } - - File testFolder = TestTools.getJackTestFolder(TEST002); - - File tempOut1 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut1, - Lists.create( - new ProguardFlags(testFolder, "obf1.flags")), - false /* non-zipped */); - - File tempOutFolder = TestTools.createTempDir("jack", "dex"); - TestTools.compileJackToDex(new Options(), tempJackFolder, tempOutFolder, - false /* non-zipped */); - } - - @Test - public void testPhantomLocalOuter() throws Exception { - File tempJackFolder = TestTools.createTempDir("jack", "dir"); - TestTools.compileSourceToJack(new Options(), - TestTools.getJackTestsWithJackFolder(TEST002), - CLASSPATH, tempJackFolder, false /* non-zipped */); - boolean deleted = - new File(tempJackFolder, fixPath(FileType.JAYCE.getPrefix() + File.separatorChar - + "com/android/jack/withphantom/test002/jack/A.jayce")).delete(); - Assert.assertTrue(deleted); - - File testFolder = TestTools.getJackTestFolder(TEST002); - - File tempOut1 = TestTools.createTempDir("jack", "dir"); - TestTools.shrobJackToJack(new Options(), - tempJackFolder, - CLASSPATH, - tempOut1, - Lists.create( - new ProguardFlags(testFolder, "obf1.flags")), - false /* non-zipped */); - - File tempOutFolder = TestTools.createTempDir("jack", "dex"); - TestTools.compileJackToDex(new Options(), tempJackFolder, tempOutFolder, - false /* non-zipped */); - } - -} diff --git a/jack/tests/com/android/jack/compile/androidtree/AllTests.java b/jack/tests/com/android/jack/compile/androidtree/AllTests.java deleted file mode 100644 index ec3bacca..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/AllTests.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * 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. - */ -package com.android.jack.compile.androidtree; - -import com.android.jack.compile.androidtree.bouncycastle.BouncycastleCompilationTest; -import com.android.jack.compile.androidtree.core.CoreCompilationTest; -import com.android.jack.compile.androidtree.ext.ExtCompilationTest; -import com.android.jack.compile.androidtree.frameworks.FrameworksBaseCompilationTest; - -import org.junit.runner.RunWith; -import org.junit.runners.Suite; -import org.junit.runners.Suite.SuiteClasses; - -@RunWith(Suite.class) -@SuiteClasses(value = {FrameworksBaseCompilationTest.class, CoreCompilationTest.class, - BouncycastleCompilationTest.class, ExtCompilationTest.class}) -public class AllTests { -}
\ No newline at end of file diff --git a/jack/tests/com/android/jack/compile/androidtree/bouncycastle/BouncycastleCompilationTest.java b/jack/tests/com/android/jack/compile/androidtree/bouncycastle/BouncycastleCompilationTest.java deleted file mode 100644 index e098477c..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/bouncycastle/BouncycastleCompilationTest.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.bouncycastle; - -import com.android.jack.JarJarRules; -import com.android.jack.Options; -import com.android.jack.ProguardFlags; -import com.android.jack.TestTools; -import com.android.jack.category.RedundantTests; -import com.android.jack.category.SlowTests; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; - -@Ignore("Tree") -public class BouncycastleCompilationTest { - - private static File[] CLASSPATH; - - private static File SOURCELIST; - - private static JarJarRules JARJAR_RULES; - - @BeforeClass - public static void setUpClass() { - BouncycastleCompilationTest.class.getClassLoader().setDefaultAssertionStatus(true); - CLASSPATH = new File[] { - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.zip") - }; - SOURCELIST = TestTools.getTargetLibSourcelist("bouncycastle"); - JARJAR_RULES = new JarJarRules( - TestTools.getFromAndroidTree("external/bouncycastle/jarjar-rules.txt")); - } - - @Test - @Category(RedundantTests.class) - public void compileBouncycastle() throws Exception { - File outDexFolder = TestTools.createTempDir("bouncycastle", ".dex"); - Options options = new Options(); - options.disableDxOptimizations(); - TestTools.compileSourceToDex(options, - SOURCELIST, - TestTools.getClasspathAsString(CLASSPATH), - outDexFolder, - false /* zip */, - JARJAR_RULES, - null /* flagFiles */, - false /* emitDebugInfo */); - } - - @Test - @Category(SlowTests.class) - public void compareBouncycastleStructure() throws Exception { - TestTools.checkStructure( - new Options(), - /* classpath = */ null, - /* refClasspath = */ null, - SOURCELIST, - /* compareDebugInfoBinary = */ false, - /* compareInstructionNumber = */ true, - 0.4f, - JARJAR_RULES, - (ProguardFlags[]) null); - } -} diff --git a/jack/tests/com/android/jack/compile/androidtree/core/CoreCompilationTest.java b/jack/tests/com/android/jack/compile/androidtree/core/CoreCompilationTest.java deleted file mode 100644 index 1341c435..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/core/CoreCompilationTest.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.core; - -import com.android.jack.DexAnnotationsComparator; -import com.android.jack.DexComparator; -import com.android.jack.JarJarRules; -import com.android.jack.Options; -import com.android.jack.ProguardFlags; -import com.android.jack.TestTools; -import com.android.jack.backend.dex.DexFileWriter; -import com.android.jack.category.RedundantTests; -import com.android.jack.category.SlowTests; -import com.android.jack.config.id.JavaVersionPropertyId.JavaVersion; -import com.android.sched.vfs.Container; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; - -@Ignore("Tree") -public class CoreCompilationTest { - - private static File SOURCELIST; - - @BeforeClass - public static void setUpClass() { - CoreCompilationTest.class.getClassLoader().setDefaultAssertionStatus(true); - SOURCELIST = TestTools.getTargetLibSourcelist("core-libart"); - } - - @Test - @Category(RedundantTests.class) - public void compileCore() throws Exception { - File outDexFolder = TestTools.createTempDir("core", ".dex"); - Options options = new Options(); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.compileSourceToDex(options, SOURCELIST, null, outDexFolder, false); - } - - @Test - public void compareLibCoreStructure() throws Exception { - Options options = new Options(); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.checkStructure(options, - /* classpath = */ null, - /* refClasspath = */ null, - SOURCELIST, - /* withDebugInfo = */ false, - /* compareInstructionNumber = */ false, - 0.1f, - (JarJarRules) null, - (ProguardFlags[]) null); - } - - @Test - @Category(SlowTests.class) - public void compileCoreWithJackAndDex() throws Exception { - File coreDexFolderFromJava = TestTools.createTempDir("coreFromJava", "dex"); - File coreDexFromJava = new File(coreDexFolderFromJava, DexFileWriter.DEX_FILENAME); - - Options options = new Options(); - options.addProperty(Options.GENERATE_JACK_LIBRARY.getName(), "true"); - File outputFile = new File("/tmp/jackIncrementalOutput"); - options.addProperty( - Options.DEX_OUTPUT_CONTAINER_TYPE.getName(), Container.DIR.toString()); - options.addProperty(Options.LIBRARY_OUTPUT_DIR.getName(), outputFile.getAbsolutePath()); - options.addProperty( - Options.LIBRARY_OUTPUT_CONTAINER_TYPE.getName(), Container.DIR.toString()); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.compileSourceToDex(options, SOURCELIST, null, coreDexFolderFromJava, false); - - File coreDexFolderFromJack = TestTools.createTempDir("coreFromJack", "dex"); - File coreDexFromJack = new File(coreDexFolderFromJack, DexFileWriter.DEX_FILENAME); - TestTools.compileJackToDex(new Options(), outputFile, coreDexFolderFromJack, - false); - - // Compare dex files structures and number of instructions - new DexComparator(false /* withDebugInfo */, false /* strict */, - false /* compareDebugInfoBinary */, true /* compareInstructionNumber */, 0).compare( - coreDexFromJava, coreDexFromJack); - new DexAnnotationsComparator().compare(coreDexFromJava, coreDexFromJack); - } -} diff --git a/jack/tests/com/android/jack/compile/androidtree/dalvik/AllTests.java b/jack/tests/com/android/jack/compile/androidtree/dalvik/AllTests.java deleted file mode 100644 index dab444a2..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/dalvik/AllTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.dalvik; - - -import com.android.jack.compile.androidtree.dalvik.compilerregressions.CompilerRegressionsTest; -import com.android.jack.compile.androidtree.dalvik.finalizer.FinalizerTest; -import com.android.jack.compile.androidtree.dalvik.omnibus.OmnibusCompilationTest; - -import org.junit.runner.RunWith; -import org.junit.runners.Suite; -import org.junit.runners.Suite.SuiteClasses; - -@RunWith(Suite.class) -@SuiteClasses(value = {CompilerRegressionsTest.class, - FinalizerTest.class, - OmnibusCompilationTest.class}) -public class AllTests { -} diff --git a/jack/tests/com/android/jack/compile/androidtree/dalvik/compilerregressions/CompilerRegressionsTest.java b/jack/tests/com/android/jack/compile/androidtree/dalvik/compilerregressions/CompilerRegressionsTest.java deleted file mode 100644 index 63ea06e0..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/dalvik/compilerregressions/CompilerRegressionsTest.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.dalvik.compilerregressions; - -import com.android.jack.Options; -import com.android.jack.TestTools; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -import java.io.File; - -@Ignore("Tree") -public class CompilerRegressionsTest { - - private static File[] BOOTCLASSPATH; - - @BeforeClass - public static void setUpClass() { - CompilerRegressionsTest.class.getClassLoader().setDefaultAssertionStatus(true); - BOOTCLASSPATH = new File[] {TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.zip")}; - } - - @Test - public void compileRegressions() throws Exception { - File out = TestTools.createTempFile("out", ".zip"); - String classpath = TestTools.getClasspathAsString(BOOTCLASSPATH); - TestTools.compileSourceToDex(new Options(), - TestTools.getArtTestFolder("083-compiler-regressions"), classpath, out, /* zip = */ true); - } -} diff --git a/jack/tests/com/android/jack/compile/androidtree/dalvik/finalizer/FinalizerTest.java b/jack/tests/com/android/jack/compile/androidtree/dalvik/finalizer/FinalizerTest.java deleted file mode 100644 index 8704893b..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/dalvik/finalizer/FinalizerTest.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.dalvik.finalizer; - -import com.android.jack.Options; -import com.android.jack.TestTools; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -import java.io.File; - -@Ignore("Tree") -public class FinalizerTest { - - private static File[] BOOTCLASSPATH; - - @BeforeClass - public static void setUpClass() { - FinalizerTest.class.getClassLoader().setDefaultAssertionStatus(true); - BOOTCLASSPATH = new File[] {TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.zip")}; - } - - @Test - public void compileFinalizer() throws Exception { - File out = TestTools.createTempFile("out", ".zip"); - String classpath = TestTools.getClasspathAsString(BOOTCLASSPATH); - TestTools.compileSourceToDex(new Options(), TestTools.getArtTestFolder("036-finalizer"), - classpath, out, /* zip = */ true); - } -} diff --git a/jack/tests/com/android/jack/compile/androidtree/dalvik/omnibus/OmnibusCompilationTest.java b/jack/tests/com/android/jack/compile/androidtree/dalvik/omnibus/OmnibusCompilationTest.java deleted file mode 100644 index ac768f05..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/dalvik/omnibus/OmnibusCompilationTest.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.dalvik.omnibus; - -import com.android.jack.Options; -import com.android.jack.TestTools; -import com.android.jack.category.SlowTests; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; - -@Ignore("Tree") -public class OmnibusCompilationTest { - - private static File[] BOOTCLASSPATH; - - @BeforeClass - public static void setUpClass() { - OmnibusCompilationTest.class.getClassLoader().setDefaultAssertionStatus(true); - BOOTCLASSPATH = new File[] {TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.zip")}; - } - - @Test - @Category(SlowTests.class) - public void compileOmnibus() throws Exception { - File out = TestTools.createTempFile("out", ".zip"); - String classpath = TestTools.getClasspathAsString(BOOTCLASSPATH); - TestTools.compileSourceToDex(new Options(), - TestTools.getArtTestFolder("003-omnibus-opcodes"), classpath, out, /* zip = */ true); - } -} diff --git a/jack/tests/com/android/jack/compile/androidtree/ext/ExtCompilationTest.java b/jack/tests/com/android/jack/compile/androidtree/ext/ExtCompilationTest.java deleted file mode 100644 index 9248a5a5..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/ext/ExtCompilationTest.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.ext; - -import com.android.jack.JarJarRules; -import com.android.jack.Options; -import com.android.jack.ProguardFlags; -import com.android.jack.TestTools; -import com.android.jack.category.RedundantTests; -import com.android.jack.category.SlowTests; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; - -@Ignore("Tree") -public class ExtCompilationTest { - - private static File[] CLASSPATH; - - private static File SOURCELIST; - - @BeforeClass - public static void setUpClass() { - ExtCompilationTest.class.getClassLoader().setDefaultAssertionStatus(true); - CLASSPATH = new File[] { - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.zip") - }; - SOURCELIST = TestTools.getTargetLibSourcelist("ext"); - } - - @Test - @Category(RedundantTests.class) - public void compileExt() throws Exception { - File outDexFolder = TestTools.createTempDir("ext", ".dex"); - TestTools.compileSourceToDex(new Options(), SOURCELIST, - TestTools.getClasspathAsString(CLASSPATH), outDexFolder, false); - } - - @Test - @Category(SlowTests.class) - public void compareExtStructure() throws Exception { - TestTools.checkStructure(new Options(), - /* classpath = */ null, - /* refClasspath = */ null, - SOURCELIST, - /* compareDebugInfoBinary = */ false, - /* compareInstructionNumber = */ true, - 0.4f, - (JarJarRules) null, - (ProguardFlags[]) null); - } -} diff --git a/jack/tests/com/android/jack/compile/androidtree/frameworks/FrameworksBaseCompilationTest.java b/jack/tests/com/android/jack/compile/androidtree/frameworks/FrameworksBaseCompilationTest.java deleted file mode 100644 index b12b7cb8..00000000 --- a/jack/tests/com/android/jack/compile/androidtree/frameworks/FrameworksBaseCompilationTest.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * 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. - */ - -package com.android.jack.compile.androidtree.frameworks; - -import com.android.jack.Options; -import com.android.jack.TestTools; -import com.android.jack.backend.dex.DexFileWriter; -import com.android.jack.category.SlowTests; -import com.android.jack.config.id.JavaVersionPropertyId.JavaVersion; - -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import java.io.File; - -@Ignore("Tree") -public class FrameworksBaseCompilationTest { - - private static File[] BOOTCLASSPATH; - - private static File[] CLASSPATH; - - private static File SOURCELIST; - - @BeforeClass - public static void setUpClass() { - FrameworksBaseCompilationTest.class.getClassLoader().setDefaultAssertionStatus(true); - BOOTCLASSPATH = new File[] { - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.zip") - }; - CLASSPATH = new File[] { - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/conscrypt_intermediates/classes.zip"), - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/okhttp_intermediates/classes.zip"), - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/core-junit_intermediates/classes.zip"), - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/bouncycastle_intermediates/classes.zip"), - TestTools.getFromAndroidTree( - "out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/classes.zip")}; - SOURCELIST = TestTools.getTargetLibSourcelist("framework"); - } - - @Test - @Category(SlowTests.class) - public void compileFrameworks() throws Exception { - File outDexFolder = TestTools.createTempDir("frameworks", "dex"); - String classpathString = TestTools.getClasspathsAsString(BOOTCLASSPATH, CLASSPATH); - - Options options = new Options(); - options.addProperty(DexFileWriter.DEX_WRITING_POLICY.getName(), "multidex"); - options.addProperty(Options.JAVA_SOURCE_VERSION.getName(), JavaVersion.JAVA_7.toString()); - TestTools.compileSourceToDex(options, - SOURCELIST, - classpathString, - outDexFolder, - false); - } -} diff --git a/jack/tests/com/android/jack/library/LibraryTest.java b/jack/tests/com/android/jack/library/LibraryTest.java deleted file mode 100644 index db8f0217..00000000 --- a/jack/tests/com/android/jack/library/LibraryTest.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (C) 2014 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. - */ - -package com.android.jack.library; - -import com.android.jack.Options; -import com.android.jack.TestTools; -import com.android.sched.util.RunnableHooks; -import com.android.sched.util.file.FileOrDirectory.ChangePermission; -import com.android.sched.util.file.FileOrDirectory.Existence; -import com.android.sched.util.file.InputZipFile; -import com.android.sched.vfs.InputVFS; -import com.android.sched.vfs.InputZipVFS; - -import junit.framework.Assert; - -import org.junit.BeforeClass; -import org.junit.Test; - -import java.io.File; -import java.io.IOException; - -import javax.annotation.Nonnull; - -public class LibraryTest { - @BeforeClass - public static void setUpClass() { - LibraryTest.class.getClassLoader().setDefaultAssertionStatus(true); - } - - @Test - public void testEmptyLibraryInClassPath() throws Exception { - File emptyLib = createEmptyLibrary(); - - TestTools.compileSourceToDex(new Options(), - TestTools.getJackTestsWithJackFolder("library/test001"), - TestTools.getDefaultClasspathString() + File.pathSeparator + emptyLib.getPath(), - TestTools.createTempFile("library001", ".zip"), /* zip = */ true); - } - - @Test - public void testRscLibraryInClassPath() throws Exception { - File emptyLib = createRscLibrary(); - - TestTools.compileSourceToDex(new Options(), - TestTools.getJackTestsWithJackFolder("library/test001"), - TestTools.getDefaultClasspathString() + File.pathSeparator + emptyLib.getPath(), - TestTools.createTempFile("library001", ".zip"), /* zip = */ true); - } - - @Test - public void testImportEmptyLibrary() throws Exception { - File lib = createEmptyLibrary(); - Options options = new Options(); - options.addImportedLibrary(lib); - TestTools.compileSourceToDex(options, - TestTools.getJackTestsWithJackFolder("library/test001"), - TestTools.getDefaultClasspathString(), - TestTools.createTempFile("library001", ".zip"), /* zip = */ true); - } - - @Test - public void testImportRscLibrary() throws Exception { - File lib = createRscLibrary(); - Options options = new Options(); - options.addImportedLibrary(lib); - File out = TestTools.createTempFile("library001", ".jack"); - TestTools.compileSourceToJack(options, - TestTools.getJackTestsWithJackFolder("library/test001"), - TestTools.getDefaultClasspathString(), - out, /* zip = */ true); - - RunnableHooks hooks = new RunnableHooks(); - InputVFS vfs = new InputZipVFS(new InputZipFile(out.getPath(), hooks, Existence.MUST_EXIST, - ChangePermission.NOCHANGE)); - try { - InputJackLibrary inputJackLibrary = JackLibraryFactory.getInputLibrary(vfs); - Assert.assertTrue(inputJackLibrary.containsFileType(FileType.RSC)); - } finally { - vfs.close(); - } - - } - - @Nonnull - private File createEmptyLibrary() throws IOException, Exception { - File emptyLib = TestTools.createTempFile("empty", ".jack"); - Options options = new Options(); - options.setJayceOutputZip(emptyLib); - TestTools.runCompilation(options); - return emptyLib; - } - - @Nonnull - private File createRscLibrary() throws IOException, Exception { - File emptyLib = TestTools.createTempFile("rsc", ".jack"); - Options options = new Options(); - options.addResource(TestTools.getJackTestLibFolder("library/test001")); - options.setJayceOutputZip(emptyLib); - TestTools.runCompilation(options); - return emptyLib; - } -} |