summaryrefslogtreecommitdiffstats
path: root/harmony-tests/src
diff options
context:
space:
mode:
Diffstat (limited to 'harmony-tests/src')
-rw-r--r--harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ProcessManagerTest.java4
-rw-r--r--harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ref/SoftReferenceTest.java4
-rw-r--r--harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/reflect/GenericSignatureFormatErrorTest.java7
-rw-r--r--harmony-tests/src/test/java/org/apache/harmony/tests/java/util/jar/JarFileTest.java74
-rw-r--r--harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java7
5 files changed, 47 insertions, 49 deletions
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ProcessManagerTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ProcessManagerTest.java
index 3930b59..9f7474a 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ProcessManagerTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ProcessManagerTest.java
@@ -16,8 +16,6 @@
package org.apache.harmony.tests.java.lang;
-import dalvik.annotation.BrokenTest;
-
import junit.framework.TestCase;
import java.io.BufferedReader;
@@ -47,7 +45,7 @@ public class ProcessManagerTest extends TestCase {
assertEquals(greeting, readLine(process));
}
- @BrokenTest("Sporadic failures in CTS, but not in CoreTestRunner")
+ // BrokenTest: Sporadic failures in CTS, but not in CoreTestRunner
public void testSleep() throws IOException {
String[] commands = { "sleep", "1" };
process = Runtime.getRuntime().exec(commands, null, null);
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ref/SoftReferenceTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ref/SoftReferenceTest.java
index cfc5d0d..f66cbbf 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ref/SoftReferenceTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/ref/SoftReferenceTest.java
@@ -16,8 +16,6 @@
*/
package org.apache.harmony.tests.java.lang.ref;
-import dalvik.annotation.SideEffect;
-
import java.lang.ref.Reference;
import java.lang.ref.ReferenceQueue;
import java.lang.ref.SoftReference;
@@ -79,7 +77,7 @@ public class SoftReferenceTest extends junit.framework.TestCase {
assertTrue("Same object not returned.", bool == sr.get());
}
- @SideEffect("Causes OutOfMemoryError to test finalization")
+ // SideEffect: Causes OutOfMemoryError to test finalization
public void test_get_SoftReference() {
class TestObject {
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/reflect/GenericSignatureFormatErrorTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/reflect/GenericSignatureFormatErrorTest.java
index 9cd4947..0cad681 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/reflect/GenericSignatureFormatErrorTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/lang/reflect/GenericSignatureFormatErrorTest.java
@@ -1,7 +1,6 @@
package org.apache.harmony.tests.java.lang.reflect;
import dalvik.annotation.AndroidOnly;
-import dalvik.annotation.SideEffect;
import dalvik.system.DexFile;
import junit.framework.TestCase;
@@ -34,9 +33,9 @@ public class GenericSignatureFormatErrorTest extends TestCase{
@AndroidOnly("Uses Android specific class dalvik.system.DexFile " +
"for loading classes.")
- @SideEffect("strange issue (exception: 'could not open dex file', " +
- "dalvikvm: 'waitpid failed' log msg - only occurs when @SideEffect is removed " +
- "and this test is run via running tests.luni.AllTestsLang TestSuite")
+ // SideEffect: strange issue (exception: 'could not open dex file',
+ // dalvikvm: 'waitpid failed' log msg - only occurs when @SideEffect is removed
+ // and this test is run via running tests.luni.AllTestsLang TestSuite
public void test_signatureFormatError() throws Exception {
/*
* dex1.bytes is a jar file with a classes.dex in it.
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/jar/JarFileTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/jar/JarFileTest.java
index 740340e..d5d8191 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/jar/JarFileTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/jar/JarFileTest.java
@@ -23,6 +23,7 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
+import java.security.CodeSigner;
import java.security.Permission;
import java.security.cert.Certificate;
import java.security.cert.X509Certificate;
@@ -98,6 +99,8 @@ public class JarFileTest extends TestCase {
private static final String INVALID_CHAIN_JAR = "hyts_signed_invalidChain.jar";
+ private static final String AMBIGUOUS_SIGNERS_JAR = "hyts_signed_ambiguousSignerArray.jar";
+
private File resources;
// custom security manager
@@ -647,13 +650,18 @@ public class JarFileTest extends TestCase {
+ jarName + "\"", foundCerts);
}
- private Certificate[] getSignedJarCerts(String jarName, boolean chainCheck) throws Exception {
+ private static class Results {
+ public Certificate[] certificates;
+ public CodeSigner[] signers;
+ }
+
+ private Results getSignedJarCerts(String jarName) throws Exception {
Support_Resources.copyFile(resources, null, jarName);
File file = new File(resources, jarName);
- Certificate[] foundCerts = null;
+ Results results = new Results();
- JarFile jarFile = new JarFile(file, true, ZipFile.OPEN_READ, chainCheck);
+ JarFile jarFile = new JarFile(file, true, ZipFile.OPEN_READ);
try {
Enumeration<JarEntry> e = jarFile.entries();
@@ -664,8 +672,10 @@ public class JarFileTest extends TestCase {
is.skip(entry.getSize());
is.close();
Certificate[] certs = entry.getCertificates();
+ CodeSigner[] signers = entry.getCodeSigners();
if (certs != null && certs.length > 0) {
- foundCerts = certs;
+ results.certificates = certs;
+ results.signers = signers;
break;
}
}
@@ -673,42 +683,38 @@ public class JarFileTest extends TestCase {
jarFile.close();
}
- return foundCerts;
- }
-
- public void testJarFile_Signed_ValidChain_NoCheck() throws Exception {
- Certificate[] certs = getSignedJarCerts(VALID_CHAIN_JAR, false);
- assertNotNull(certs);
- assertEquals(Arrays.deepToString(certs), 3, certs.length);
- assertEquals("CN=fake-chain", ((X509Certificate) certs[0]).getSubjectDN().toString());
- assertEquals("CN=intermediate1", ((X509Certificate) certs[1]).getSubjectDN().toString());
- assertEquals("CN=root1", ((X509Certificate) certs[2]).getSubjectDN().toString());
+ return results;
}
- public void testJarFile_Signed_ValidChain_Check() throws Exception {
- Certificate[] certs = getSignedJarCerts(VALID_CHAIN_JAR, true);
- assertNotNull(certs);
- assertEquals(Arrays.deepToString(certs), 3, certs.length);
- assertEquals("CN=fake-chain", ((X509Certificate) certs[0]).getSubjectDN().toString());
- assertEquals("CN=intermediate1", ((X509Certificate) certs[1]).getSubjectDN().toString());
- assertEquals("CN=root1", ((X509Certificate) certs[2]).getSubjectDN().toString());
+ public void testJarFile_Signed_ValidChain() throws Exception {
+ Results result = getSignedJarCerts(VALID_CHAIN_JAR);
+ assertNotNull(result);
+ assertEquals(Arrays.deepToString(result.certificates), 3, result.certificates.length);
+ assertEquals(Arrays.deepToString(result.signers), 1, result.signers.length);
+ assertEquals(3, result.signers[0].getSignerCertPath().getCertificates().size());
+ assertEquals("CN=fake-chain", ((X509Certificate) result.certificates[0]).getSubjectDN().toString());
+ assertEquals("CN=intermediate1", ((X509Certificate) result.certificates[1]).getSubjectDN().toString());
+ assertEquals("CN=root1", ((X509Certificate) result.certificates[2]).getSubjectDN().toString());
}
- public void testJarFile_Signed_InvalidChain_NoCheck() throws Exception {
- Certificate[] certs = getSignedJarCerts(INVALID_CHAIN_JAR, false);
- assertNotNull(certs);
- assertEquals(Arrays.deepToString(certs), 3, certs.length);
- assertEquals("CN=fake-chain", ((X509Certificate) certs[0]).getSubjectDN().toString());
- assertEquals("CN=intermediate1", ((X509Certificate) certs[1]).getSubjectDN().toString());
- assertEquals("CN=root1", ((X509Certificate) certs[2]).getSubjectDN().toString());
+ public void testJarFile_Signed_InvalidChain() throws Exception {
+ Results result = getSignedJarCerts(INVALID_CHAIN_JAR);
+ assertNotNull(result);
+ assertEquals(Arrays.deepToString(result.certificates), 3, result.certificates.length);
+ assertEquals(Arrays.deepToString(result.signers), 1, result.signers.length);
+ assertEquals(3, result.signers[0].getSignerCertPath().getCertificates().size());
+ assertEquals("CN=fake-chain", ((X509Certificate) result.certificates[0]).getSubjectDN().toString());
+ assertEquals("CN=intermediate1", ((X509Certificate) result.certificates[1]).getSubjectDN().toString());
+ assertEquals("CN=root1", ((X509Certificate) result.certificates[2]).getSubjectDN().toString());
}
- public void testJarFile_Signed_InvalidChain_Check() throws Exception {
- Certificate[] certs = getSignedJarCerts(INVALID_CHAIN_JAR, true);
- assertNotNull(certs);
- assertEquals(Arrays.deepToString(certs), 2, certs.length);
- assertEquals("CN=fake-chain", ((X509Certificate) certs[0]).getSubjectDN().toString());
- assertEquals("CN=intermediate1", ((X509Certificate) certs[1]).getSubjectDN().toString());
+ public void testJarFile_Signed_AmbiguousSigners() throws Exception {
+ Results result = getSignedJarCerts(AMBIGUOUS_SIGNERS_JAR);
+ assertNotNull(result);
+ assertEquals(Arrays.deepToString(result.certificates), 2, result.certificates.length);
+ assertEquals(Arrays.deepToString(result.signers), 2, result.signers.length);
+ assertEquals(1, result.signers[0].getSignerCertPath().getCertificates().size());
+ assertEquals(1, result.signers[1].getSignerCertPath().getCertificates().size());
}
/*
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java
index e937db9..64bfbb3 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java
@@ -22,9 +22,6 @@
package tests.api.javax.security.cert;
-import dalvik.annotation.BrokenTest;
-import dalvik.annotation.SideEffect;
-
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
@@ -661,7 +658,7 @@ public class X509CertificateTest extends TestCase {
* @throws CertificateException
* {@link Certificate#verify(PublicKey)}
*/
- @SideEffect("Destroys MD5 provider, hurts succeeding tests")
+ // Side Effect: Destroys MD5 provider, hurts succeeding tests
public void testVerifyPublicKey() throws InvalidKeyException,
NoSuchAlgorithmException, NoSuchProviderException,
SignatureException, CertificateException {
@@ -744,7 +741,7 @@ public class X509CertificateTest extends TestCase {
* @throws CertificateException
* {@link Certificate#verify(PublicKey, String)}
*/
- @SideEffect("Destroys MD5 provider, hurts succeeding tests")
+ // SideEffect: Destroys MD5 provider, hurts succeeding tests
public void testVerifyPublicKeyString() throws InvalidKeyException,
java.security.cert.CertificateException, NoSuchAlgorithmException,
NoSuchProviderException, SignatureException, IOException,