/*
 * This file contains expectations for tests that we'd like to eventually fix, but aren't urgent.
 */
[
{
  description: "libcore.java.io.OldFileTest#test_deleteOnExit fails on IRM05 mysid-user",
  name: "libcore.java.io.OldFileTest#test_deleteOnExit",
  bug: 5834665
},
{
  description: "FIONREAD/SIOCINQ returns the wrong result on sockets (5731252 is the root cause of 5534202)",
  name: "libcore.java.net.SocketTest#testAvailable",
  bug: 5731252
},
{
  description: "libcore.java.net.URLConnectionTest#testServerShutdownInput fails on ICL27 mysid-userdebug (5534202 is caused by 5731252)",
  name: "libcore.java.net.URLConnectionTest#testServerShutdownInput",
  bug: 5534202
},
{
  description: "Support digest authentication in HttpURLConnection",
  name: "libcore.net.http.ParsedHeadersTest#testParseChallengesWithManyParameters",
  bug: 6156454
},
{
  description: "Without no security manager, we don't care if checkPermission's argument is null",
  name: "org.apache.harmony.security.tests.java.security.AccessController2Test#test_checkPermission_NullParameter",
  result: EXEC_FAILED
},
{
  description: "This test and testGetKeepAlive have been failing in our continuous build recently.",
  names: [
    "libcore.java.net.URLConnectionTest#testConnectTimeouts",
    "libcore.java.net.URLConnectionTest#testGetKeepAlive"
  ],
  bug: 3441111
},
{
  description: "on the RI, writing the two halves of the surrogate pair in separate writes
          is an error because the CharsetEncoder doesn't remember it's half-way through a
          surrogate pair across the two calls!",
  result: EXEC_FAILED,
  names: [
    "libcore.java.nio.charset.CharsetEncoderTest#testCharsetEncoderSurrogatesBrokenByDesign_IGNORE_RI",
    "libcore.java.nio.charset.CharsetEncoderTest#testCharsetEncoderSurrogatesBrokenByDesign_REPLACE_RI",
    "libcore.java.nio.charset.CharsetEncoderTest#testCharsetEncoderSurrogatesBrokenByDesign_REPORT_RI"
  ]
},
{
  description: "We're retiring the security manager. Unfortunately, tests all over the place
                need to check that they're secure, so they all fail when we refuse to install
                a security manager. This suppresses all of these failures.",
  result: EXEC_FAILED,
  failure: "disable securityManager",
  pattern: ".*java.lang.SecurityException\\s+at java.lang.System.setSecurityManager.*",
  bug: 2585285
},
{
  description: "ignore compilation errors due to different available APIs",
  result: COMPILE_FAILED,
  failure: "ignore compilation errors",
  pattern: ".*\\.java:\\d+: cannot find symbol.*"
},
{
  description: "The RI avoids blocking calls when '\\r' is the last character. We don't
                bother since that adds complexity to every other read call, and '\\r' as the
                last character will be diminishingly rare anyway.",
  result: EXEC_FAILED,
  name: "java.io.BufferedReader.ReadLine",
  substring: "java.lang.RuntimeException: Read past limit"
},
{
  description: "The RI avoids blocking calls when '\\r' is the last character. We don't
                bother since that adds complexity to every other read call, and '\\r' as the
                last character will be diminishingly rare anyway.",
  result: EXEC_FAILED,
  name: "java.io.BufferedReader.Ready",
  substring: "Hit infinite wait condition"
},
{
  description: "The test is checking that the implementation doesn't read any characters
                earlier than it absolutely needs to. This is a bogus requirement; streams
                are allowed to buffer input as necessary.",
  result: EXEC_FAILED,
  name: "java.io.StreamTokenizer.Reset",
  substring: "Test failed: should get token [, but get -1"
},
{
  description: "These tests only pass if the root logger hasn't yet been initialized. They
                incorrectly assume that resetting the LogManager will clear the root logger's
                resource bundle; this isn't the case.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.logging.tests.java.util.logging.OldLoggerTest#testGetLoggerWithRes_InvalidResourceBundle",
  substring: "java.lang.IllegalArgumentException: Resource bundle name 'impossible_not_existing' is inconsistent"
},
{
  description: "These tests only pass if the root logger hasn't yet been initialized. They
                incorrectly assume that resetting the LogManager will clear the root logger's
                resource bundle; this isn't the case.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.logging.tests.java.util.logging.LoggerTest#testGetLogger_Empty",
  substring: "junit.framework.AssertionFailedError"
},
{
  description: "This tests implementation details",
  result: UNSUPPORTED,
  name: "java.util.EnumSet.OneUniverse"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.Cipher.AES.Test4513830",
    "com.sun.crypto.provider.Cipher.AES.Test4512704",
    "com.sun.crypto.provider.Cipher.AES.Test4512524",
    "com.sun.crypto.provider.Cipher.AES.Test4511676",
    "com.sun.crypto.provider.Cipher.AES.Test4517355"
  ],
  substring: "NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.AES.TestISO10126Padding",
  substring: " java.security.NoSuchProviderException: SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.AES.Test4626070",
  substring: "NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.Cipher.AES.TestShortBuffer",
    "com.sun.crypto.provider.Cipher.CTS.CTSMode"
  ],
  substring: "Provider SunJCE is not available"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.Cipher.DES.DesAPITest",
    "com.sun.crypto.provider.Cipher.DES.DoFinalReturnLen",
    "com.sun.crypto.provider.Cipher.DES.FlushBug"
  ],
  substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.DES.KeyWrapping",
  substring: "Provider SunJCE is not available"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.Cipher.DES.PaddingTest",
    "com.sun.crypto.provider.Cipher.DES.Sealtest",
    "com.sun.crypto.provider.Cipher.DES.PerformanceTest"
  ],
  substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.Cipher.PBE.DecryptWithoutParameters",
    "com.sun.crypto.provider.Cipher.PBE.PBEInvalidParamsTest"
  ],
  substring: "Provider SunJCE is not available"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.PBE.PBEKeysAlgorithmNames",
  substring: "java.security.NoSuchProviderException: SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.Cipher.PBE.PBEParametersTest",
    "com.sun.crypto.provider.Cipher.PBE.PKCS12Oid",
    "com.sun.crypto.provider.Cipher.UTIL.StrongOrUnlimited",
    "com.sun.crypto.provider.Cipher.KeyWrap.NISTWrapKAT"
  ],
  substring: "Provider SunJCE is not available"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.KeyAgreement.DHGenSecretKey",
  substring: "java.security.NoSuchProviderException: SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.KeyAgreement.DHGenSharedSecret",
    "com.sun.crypto.provider.KeyAgreement.DHKeyAgreement3",
    "com.sun.crypto.provider.KeyAgreement.DHKeyFactory",
    "com.sun.crypto.provider.KeyAgreement.DHKeyGenSpeed"
  ],
  substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.KeyAgreement.TestExponentSize",
    "com.sun.crypto.provider.KeyFactory.TestProviderLeak",
    "com.sun.crypto.provider.KeyFactory.PBKDF2HmacSHA1FactoryTest"
  ],
  substring: "java.security.NoSuchProviderException: SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  names: [
    "com.sun.crypto.provider.KeyGenerator.Test4628062",
    "com.sun.crypto.provider.KeyGenerator.TestExplicitKeyLength"
  ],
  substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Mac.HmacPBESHA1",
  substring: "java.security.NoSuchProviderException: SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Mac.HmacMD5",
  substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Mac.MacClone",
  substring: "java.security.NoSuchProviderException: SunJCE"
},
{
  description: "Dalvik doesn't include the SunJCE crypto provider",
  result: EXEC_FAILED,
  failure: "JKS keystore not found",
  substring: "KeyStore JKS implementation not found"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.PBE.PKCS12Cipher",
  pattern: ".*PKCS12Cipher.java\\:87\\).*NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.PBE.PKCS12CipherKAT",
  pattern: ".*NullPointerException.*PKCS12CipherKAT.java\\:183\\).*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.RC2ArcFour.CipherKAT",
  pattern: ".*NullPointerException.*CipherKAT.java\\:205\\).*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.RSA.TestOAEP_KAT",
  pattern: ".*TestOAEP_KAT.java\\:62\\).*NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.RSA.TestOAEP",
  pattern: ".*TestOAEP.java\\:50\\).*NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.RSA.TestOAEPParameterSpec",
  pattern: ".*TestOAEPParameterSpec.java\\:124\\).*NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.RSA.TestOAEPWithParams",
  pattern: ".*TestOAEPWithParams.java\\:58\\).*NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Cipher.RSA.TestRSA",
  pattern: ".*TestRSA.java\\:171\\).*NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Mac.HmacSaltLengths",
  pattern: ".*HmacSaltLengths.java\\:83\\).*java.lang.NullPointerException.*"
},
{
  description: "These NPEs all happen while calling Provider#getName on the result of
                Security#getProvider(). Unfortunately, that method is permitted to return
                null if the system has no provider with the requested name. And since we don't
                have the SunJCE provider, tests fail",
  result: EXEC_FAILED,
  name: "com.sun.crypto.provider.Mac.MacKAT",
  pattern: ".*MacKAT.java\\:228\\).*java.lang.NullPointerException.*"
},
{
  description: "These tests call into misc Sun classes that we don't have",
  result: COMPILE_FAILED,
  name: "com.sun.crypto.provider.KeyAgreement.DHKeyAgreement2",
  pattern: ".*cannot find symbol.*sun.misc.HexDumpEncoder.*"
},
{
  description: "These tests call into misc Sun classes that we don't have",
  result: COMPILE_FAILED,
  name: "com.sun.crypto.provider.Cipher.KeyWrap.XMLEncKAT",
  pattern: ".*cannot find symbol.*sun.misc.BASE64Decoder.*"
},
{
  description: "These tests call into misc Sun classes that we don't have",
  result: COMPILE_FAILED,
  names: [
    "com.sun.crypto.provider.TLS.TestKeyMaterial",
    "com.sun.crypto.provider.TLS.TestMasterSecret",
    "com.sun.crypto.provider.TLS.TestPremaster",
    "com.sun.crypto.provider.TLS.TestPRF"
  ],
  substring: "package sun.security.internal.spec does not exist"
},
{
  description: "We don't have most com.sun packages.",
  result: COMPILE_FAILED,
  failure: "Dalvik doesn't include Sun packages",
  pattern: ".*package (com\\.)?sun\\.[\\w\\.]+ does not exist.*"
},
{
  description: "We don't have several Java packages either.",
  result: COMPILE_FAILED,
  failure: "Dalvik doesn't include applets",
  substring: "package java.applet does not exist"
},
{
  description: "We don't have several Java packages either.",
  result: COMPILE_FAILED,
  failure: "Dalvik doesn't include AWT (bug it has java.awt.font)",
  pattern: ".*package java.awt(\\.image)? does not exist.*"
},
{
  description: "We don't have several Java packages either.",
  result: "COMPILE_FAILED",
  failure: "Dalvik doesn't include NIO.2",
  substring: "package java.nio.file does not exist"
},
{
  description: "We don't have several Java packages either.",
  result: "COMPILE_FAILED",
  failure: "Dalvik doesn't include RMI",
  substring: "package java.rmi does not exist"
},
{
  description: "We don't have several Java packages either.",
  result: "COMPILE_FAILED",
  failure: "Dalvik doesn't include JNDI",
  substring: "package javax.naming does not exist"
},
{
  description: "We don't have several Java packages either.",
  result: "COMPILE_FAILED",
  failure: "Dalvik doesn't include JMX",
  substring: "package java.lang.management does not exist"
},
{
  description: "We don't have several Java packages either.",
  result: "COMPILE_FAILED",
  failure: "Dalvik doesn't include Swing",
  substring: "package javax.swing.tree does not exist"
},
{
  description: "We don't have several Java packages either.",
  result: "COMPILE_FAILED",
  failure: "Dalvik doesn't include javax.crypto",
  substring: "package javax.xml.crypto does not exist"
},
{
  description: "Dalvik doesn't include a com.sun.net HTTP server",
  result: UNSUPPORTED,
  names: [
    "com.sun.net.httpserver",
    "sun.net.www"
  ]
},
{
  description: "Dalvik doesn't include AWT except the font package",
  result: UNSUPPORTED,
  name: "java.awt"
},
{
  description: "Dalvik doesn't include AWT except the font package",
  result: "SUCCESS",
  names: [
    "java.awt.FontClass",
    "java.awt.font"
  ]
},
{
  description: "Dalvik doesn't include java.beans except for property listeners",
  result: UNSUPPORTED,
  name: "java.beans"
},
{
  description: "Dalvik doesn't include java.beans except for property listeners",
  result: "SUCCESS",
  name: "java.beans.PropertyChangeSupport"
},
{
  description: "Dalvik doesn't include java.lang.instrument",
  result: UNSUPPORTED,
  name: "java.lang.instrument"
},
{
  description: "Dalvik doesn't include java.lang.management",
  result: UNSUPPORTED,
  name: "java.lang.management"
},
{
  description: "Dalvik doesn't include RMI",
  result: UNSUPPORTED,
  names: [
    "java.rmi",
    "sun.rmi"
  ]
},
{
  description: "Dalvik doesn't include javax.imageio",
  result: UNSUPPORTED,
  name: "javax.imageio"
},
{
  description: "Dalvik doesn't include javax.management",
  result: UNSUPPORTED,
  name: "javax.management"
},
{
  description: "Dalvik doesn't include javax.naming",
  result: UNSUPPORTED,
  name: "javax.naming"
},
{
  description: "Dalvik doesn't include javax.print",
  result: UNSUPPORTED,
  name: "javax.print"
},
{
  description: "Dalvik doesn't include javax.script",
  result: UNSUPPORTED,
  name: "javax.script"
},
{
  description: "Dalvik doesn't include javax.sound",
  result: UNSUPPORTED,
  name: "javax.sound"
},
{
  description: "Dalvik doesn't include javax.swing",
  result: UNSUPPORTED,
  name: "javax.swing"
},
{
  description: "Dalvik doesn't include sun.management",
  result: UNSUPPORTED,
  name: "sun.management"
},
{
  description: "Dalvik doesn't include javax.smartcardio",
  result: UNSUPPORTED,
  name: "sun.security.smartcardio"
},
{
  description: "Our exception messages don't match the RIs",
  result: EXEC_FAILED,
  names: [
    "java.lang.StringBuilder.Exceptions",
    "java.lang.StringBuffer.Exceptions"
  ],
  substring: "got java.lang.StringIndexOutOfBoundsException: null - FAILED"
},
{
  description: "ICU doesn't like 3-letter names like CST because they're ambiguous.
                Harmony prefers them because they're more human readable. We'll be
                consistent with ICU, since that seems least fragile.
                See https://issues.apache.org/jira/browse/HARMONY-5468
                and http://bugs.icu-project.org/trac/ticket/6174",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.DateTest#test_toString",
  substring: "GMT-07:00"
},
{
  description: "These Harmony tests are enforcing a buggy behavior in TreeMap, presumably to be bug-compatible
                with the RI. Our implementation is more conservative and throws on the bogus inputs.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_AscendingSubMapKeySet_headSet",
  substring: "java.lang.IllegalArgumentException: 100 not in range (100..109]"
},
{
  description: "These Harmony tests are enforcing a buggy behavior in TreeMap, presumably to be bug-compatible
                with the RI. Our implementation is more conservative and throws on the bogus inputs.",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_AscendingSubMapKeySet_tailSet",
    "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_DescendingSubMapKeySet_headSet"
  ],
  substring: "java.lang.IllegalArgumentException: null not in range [100..109)"
},
{
  description: "These Harmony tests are enforcing a buggy behavior in TreeMap, presumably to be bug-compatible
                with the RI. Our implementation is more conservative and throws on the bogus inputs.",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_DescendingSubMap_tailMap",
    "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_DescendingSubMapKeySet_tailSet",
    "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_SubMap_headMap"
  ],
  substring: "java.lang.IllegalArgumentException: 100 not in range (100..109]"
},
{
  description: "why are they using reflection to test implementation details?",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.ArraysTest#test_swap_I_I_$Ljava_lang_Object",
  substring: "java.lang.NoSuchMethodException"
},
{
  description: "all these tests rely on a Harmony bug where TreeMaps may have a singleton null, which we choose
                to disallow.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.SimpleImmutableEntryTest#test_SimpleImmutableEntry_Constructor_LEntry",
  pattern: ".*java.lang.NullPointerException.*at java.util.TreeMap.find.*"
},
{
  description: "all these tests rely on a Harmony bug where TreeMaps may have a singleton null, which we choose
                to disallow.",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_ceilingEntry",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_ceilingKey",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_floorEntry",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_floorKey",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_higherEntry",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_higherKey",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_lowerEntry",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_lowerKey"
  ],
  substring: "java.lang.NullPointerException"
},
{
  description: "all these tests rely on a Harmony bug where TreeMaps may have a singleton null, which we choose
                to disallow.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_illegalFirstNullKey",
  pattern: ".*java.lang.NullPointerException.*at java.util.TreeMap.find.*"
},
{
  description: "this is testing exception priorities",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_subMapLjava_lang_ObjectLjava_lang_Object",
  substring: "java.lang.ClassCastException: java.lang.Object"
},
{
  description: "the null-friendly comparator isn't symmetric",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_subMapLjava_lang_ObjectZLjava_lang_ObjectZ",
  substring: "java.lang.NullPointerException"
},
{
  description: "we fail fast on not-comparable objects",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_equals",
    "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_putLjava_lang_ObjectLjava_lang_Object"
  ],
  substring: "java.lang.ClassCastException: java.lang.Object"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.CollectionsTest#test_unmodifiable_toString_methods",
  substring: "expected:<...one=1, two=2...> but was:<...two=2, one=1...>"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_keySet_subtest1",
  pattern: ".*java.lang.IllegalStateException.*at java.util.Hashtable.*"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_elements_subtest0",
  substring: "junit.framework.AssertionFailedError: unexpected: b"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashMapTest#test_rehash",
  substring: "junit.framework.AssertionFailedError: expected same"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.PropertiesTest#test_SequentialpropertyNames",
  substring: "expected:<current.b.key> but was:<current.a.key>"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.PropertiesTest#test_SequentialstringPropertyNames",
  substring: "junit.framework.ComparisonFailure"
},
{
  description: "tests that depend on the iteration order of a hash",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.PropertiesTest#test_propertyNames_sequence",
  substring: "junit.framework.AssertionFailedError: expected:<current.b.key> but was:<current.a.key>"
},
{
  description: "tests that use secret type information to reason about behavior",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_keySet",
  substring: "junit.framework.ComparisonFailure: Not synchronized expected:<...Collections$Synchronized...> but was:<...Hashtable$Key...>"
},
{
  description: "tests that use secret type information to reason about behavior",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_entrySet",
  substring: "junit.framework.ComparisonFailure: Not synchronized expected:<...Collections$Synchronized...> but was:<...Hashtable$Entry...>"
},
{
  description: "tests that use secret type information to reason about behavior",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_values",
  substring: "junit.framework.ComparisonFailure: Not synchronized expected:<...Collections$SynchronizedCollection> but was:<...Hashtable$Values>"
},
{
  description: "this test is invalid, proxy.equals isn't symmetric",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashMapTest#test_proxies"
},
{
  description: "this test is invalid, the mock map's entry set isn't to spec",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashMapTest#test_putAllLjava_util_Map",
  substring: "java.lang.NullPointerException"
},
{
  description: "this test assumes remove acts on equals() equality, not comparator equality",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.PriorityQueueTest#test_remove_Ljava_lang_Object_using_comparator",
  substring: "junit.framework.AssertionFailedError"
},
{
  description: "tests that violate the API and then guess about the outcomes",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_getLjava_lang_Object",
  substring: "junit.framework.AssertionFailedError"
},
{
  description: "this test assumes Integer.toString() always returns a new instance",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.IdentityHashMap2Test#test_containsKeyLjava_lang_Object",
  substring: "junit.framework.AssertionFailedError: Returned true for copy of valid key"
},
{
  description: "tests that cast to Harmony-specific types",
  result: EXEC_FAILED,
  failure: "bogus cast to harmony Hashtable$KeyEnumeration",
  substring: "java.util.Hashtable$KeyEnumeration"
},
{
  description: "tests that cast to Harmony-specific types",
  result: EXEC_FAILED,
  failure: "bogus cast to Hashtable$ValueEnumeration",
  substring: "java.util.Hashtable$ValueEnumeration"
},
{
  description: "test doesn't expect it, but the spec permits the exception. RI also throws here.",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.luni.tests.java.util.PriorityQueueTest#test_remove_Ljava_lang_Object_not_Compatible",
    "org.apache.harmony.luni.tests.java.util.PriorityQueueTest#test_remove_Ljava_lang_Object_not_exists"
  ],
  substring: "java.lang.ClassCastException"
},
{
  description: "localization tests where our data disagree",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.LocaleTest#test_getAvailableLocales",
  substring: "Wrong number of locales"
},
{
  description: "test that enforce redundant implements clauses",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.LinkedHashMapTest#test_getInterfaces",
  substring: "junit.framework.AssertionFailedError: expected:<3> but was:<2>"
},
{
  description: "we don't support the CharsetProvider spi, so we don't have \"mockCharset00\".",
  result: EXEC_FAILED,
  name: "org.apache.harmony.tests.java.nio.charset.CharsetTest#test_availableCharsets",
  substring: "junit.framework.AssertionFailedError"
},
{
  description: "we don't support the CharsetProvider spi, so we don't have \"mockCharset00\".",
  result: EXEC_FAILED,
  name: "org.apache.harmony.tests.java.nio.charset.CharsetTest#test_forNameLString",
  substring: "java.nio.charset.UnsupportedCharsetException: mockCharset00"
},
{
  description: "the average length of possible UTF-8 sequences is 2 bytes.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.tests.java.nio.charset.UTFCharsetEncoderTest#testSpecificDefaultValue",
  substring: "junit.framework.AssertionFailedError: expected:<1.1> but was:<2.0>"
},
{
  description: "this test needs external interaction",
  result: UNSUPPORTED,
  names: [
    "com.sun.tools.attach.Application",
    "java.io.SystemInAvailable",
    "sun.jvmstat.testlibrary.Sleeper"
  ]
},
{
  description: "these benchmarks take a long time and don't demonstrate correctness",
  result: UNSUPPORTED,
  names: [
    "java.lang.Class.TypeCheckMicroBenchmark",
    "java.nio.Buffer.SwapMicroBenchmark",
    "java.util.ArrayList.RangeCheckMicroBenchmark",
    "java.util.ArrayList.IteratorMicroBenchmark"
  ]
},
{
  description: "The RI is still on Unicode 4.0, we're on 5.2, and Harmony is inconsistent
                between its test for isJavaIdentifierPart(char) and isJavaIdentifierPart(int).",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.lang.CharacterTest#test_isJavaIdentifierPartC"
},
{
  description: "We removed this: we don't support Pack200.",
  result: UNSUPPORTED,
  name: "org.apache.harmony.archive.tests.java.util.jar.Pack200Test"
},
{
  description: "We removed this: we don't cache canonical paths.",
  result: UNSUPPORTED,
  name: "org.apache.harmony.luni.tests.java.io.FileCanonPathCacheTest"
},
{
  description: "We removed this: we don't throw NotYetImplementedException.",
  result: UNSUPPORTED,
  name: "org.apache.harmony.luni.tests.util.NYITest"
},
{
  description: "We removed this: we don't support localized exceptions.",
  result: UNSUPPORTED,
  name: "org.apache.harmony.luni.tests.internal.nls.MessagesTest"
},
{
  description: "These format specifiers are documented to not take flags, but the RI accepts and ignores them.",
  result: EXEC_FAILED,
  name: "org.apache.harmony.luni.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_LineSeparator",
  substring: "java.util.IllegalFormatFlagsException: %n doesn't take an argument"
},
{
  description: "These format specifiers are documented to not take flags, but the RI accepts and ignores them.",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.luni.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_Percent",
    "org.apache.harmony.luni.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_Width"
  ],
  substring: "java.util.IllegalFormatFlagsException: %% doesn't take an argument"
},
{
  description: "Some tests (ExcludedProxyTest) connect to a public webserver to check that the HTTP client works",
  result: EXEC_FAILED,
  failure: "connect to the Internet",
  pattern: ".*java.net.UnknownHostException:.*jcltest.apache.org.*"
},
{
  description: "These tests violate visibility rules when trying to unit test internal classes",
  result: EXEC_FAILED,
  name: "javax.net.ssl.DefaultSSLSocketFactoryTest",
  substring: "java.lang.IllegalAccessError: tried to access class javax.net.ssl.DefaultSSLSocketFactory from class javax.net.ssl.DefaultSSLSocketFactoryTest"
},
{
  description: "These tests expect to be called with commandline arguments",
  result: EXEC_FAILED,
  name: "java.io.FileOutputStream.FileOpenNeg",
  substring: "java.lang.ArrayIndexOutOfBoundsException"
},
{
  description: "",
  result: EXEC_FAILED,
  name: "java.io.FileOutputStream.FileOpenPos",
  substring: "java.lang.ArrayIndexOutOfBoundsException"
},
{
  description: "Some tests depend on ICU data, which has changed. Others make assumptions about floating point rounding",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_BigDecimalExceptionOrder",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_DateTimeConversion",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_FloatConversionE",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_FloatConversionF",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_FloatConversionG",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_FloatDoubleBigDecimalExceptionOrder",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_GeneralConversionOther",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_LineSeparator",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_Percent",
    "org.apache.harmony.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_Width"
  ]
},
{
  description: "(Needs investigation) Some tests make assertions that don't make sense, others use broken port allocation logic.",
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.tests.java.net.Inet6AddressTest#test_getByNameLjava_lang_String",
    "org.apache.harmony.tests.java.net.InetAddressTest#test_equalsLjava_lang_Object",
    "org.apache.harmony.tests.java.net.InetAddressTest#test_getByNameLjava_lang_String",
    "org.apache.harmony.tests.java.net.InetAddressTest#test_isReachableLjava_net_NetworkInterfaceII_loopbackInterface"
  ]
},
{
  description: "(Needs investigation) Test failures from the harmony import of external/apache-harmony/archive",
  bug: 12189307,
  result: EXEC_FAILED,
  names: [
    "org.apache.harmony.tests.java.util.jar.ManifestTest#testNul",
    "org.apache.harmony.tests.java.util.jar.ManifestTest#testRead",
    "org.apache.harmony.tests.java.util.jar.ManifestTest#testStreamConstructor"
  ]
}
]
