Merge "Remove obviously bogus @KnownFailure annotations." into dalvik-dev
diff --git a/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/ManifestTest.java b/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/ManifestTest.java
index 42b2543..a00e480 100644
--- a/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/ManifestTest.java
+++ b/archive/src/test/java/org/apache/harmony/archive/tests/java/util/jar/ManifestTest.java
@@ -418,7 +418,6 @@
             method = "Manifest",
             args = {InputStream.class}
     )
-    @KnownFailure("CharsetDecoder fails with an IllegalStateException")
     public void testDecoding() throws IOException {
         Manifest m = getManifest(attJarName);
         final byte[] bVendor = new byte[] { (byte) 0xd0, (byte) 0x9C,
diff --git a/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/ZipFileTest.java b/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/ZipFileTest.java
index fb326a6..f6c810c 100644
--- a/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/ZipFileTest.java
+++ b/archive/src/test/java/org/apache/harmony/archive/tests/java/util/zip/ZipFileTest.java
@@ -456,7 +456,6 @@
             method = "getInputStream",
             args = {java.util.zip.ZipEntry.class}
     )
-    @KnownFailure("ZipEntry.getInputStream().reset() fails with an IOException")
     public void test_reset() throws IOException {
         // read an uncompressed entry
         ZipEntry zentry = zfile.getEntry("File1.txt");
@@ -503,7 +502,6 @@
             method = "getInputStream",
             args = {java.util.zip.ZipEntry.class}
     )
-    @KnownFailure("ZipEntry.getInputStream().reset() fails with an IOException")
     public void test_reset_subtest0() throws IOException {
         // read an uncompressed entry
         ZipEntry zentry = zfile.getEntry("File1.txt");
diff --git a/crypto/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/KeyAgreementTest.java b/crypto/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/KeyAgreementTest.java
index 220c6c6..6f1db9e 100644
--- a/crypto/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/KeyAgreementTest.java
+++ b/crypto/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/KeyAgreementTest.java
@@ -922,7 +922,6 @@
         method = "engineGenerateSecret",
         args = {java.lang.String.class}
     )})
-    @KnownFailure("Does not throw expected exception")
     public void test_generateSecretLjava_lang_String() throws Exception {
         if (!DEFSupported) {
             fail(NotSupportMsg);
diff --git a/luni/src/test/java/org/apache/harmony/luni/tests/internal/net/www/protocol/https/HttpsURLConnectionTest.java b/luni/src/test/java/org/apache/harmony/luni/tests/internal/net/www/protocol/https/HttpsURLConnectionTest.java
index e26cf74..4825cfb 100644
--- a/luni/src/test/java/org/apache/harmony/luni/tests/internal/net/www/protocol/https/HttpsURLConnectionTest.java
+++ b/luni/src/test/java/org/apache/harmony/luni/tests/internal/net/www/protocol/https/HttpsURLConnectionTest.java
@@ -147,9 +147,6 @@
         method = "setDefaultHostnameVerifier",
         args = {javax.net.ssl.HostnameVerifier.class}
     )
-    @KnownFailure("Handshake fails.")
-    @BrokenTest("Different behavior between cts host and run-core-test")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testHttpsConnection() throws Throwable {
         // set up the properties defining the default values needed by SSL stuff
         setUpStoreProperties();
@@ -202,9 +199,6 @@
             args = {int.class}
         )
     })
-    @KnownFailure("Handshake fails.")
-    @BrokenTest("Different behavior between cts host and run-core-test")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testHttpsConnection_Not_Found_Response() throws Throwable {
         // set up the properties defining the default values needed by SSL stuff
         setUpStoreProperties();
@@ -247,8 +241,6 @@
         method = "setDefaultSSLSocketFactory",
         args = {javax.net.ssl.SSLSocketFactory.class}
     )
-    @AndroidOnly("we only have a .bks key store in the test resources")
-    @KnownFailure("End to end test fails. No response data is transferred from server to client")
     public void testSetDefaultSSLSocketFactory() throws Throwable {
         // create the SSLServerSocket which will be used by server side
         SSLContext ctx = getContext();
@@ -304,8 +296,6 @@
         method = "setSSLSocketFactory",
         args = {javax.net.ssl.SSLSocketFactory.class}
     )
-    @AndroidOnly("we only have a .bks key store in the test resources")
-    @KnownFailure("End to end test fails. No response data is transferred from server to client")
     public void testSetSSLSocketFactory() throws Throwable {
         // create the SSLServerSocket which will be used by server side
         SSLContext ctx = getContext();
@@ -424,9 +414,6 @@
         method = "setHostnameVerifier",
         args = {javax.net.ssl.HostnameVerifier.class}
     )
-    @KnownFailure("Handshake fails.")
-    @BrokenTest("Different behavior between cts host and run-core-test")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testSetHostnameVerifier() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
@@ -470,9 +457,6 @@
         method = "setDoOutput",
         args = {boolean.class}
     )
-    @KnownFailure("Handshake fails.")
-    @BrokenTest("Different behavior between cts host and run-core-test")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void test_doOutput() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
@@ -523,8 +507,6 @@
             args = {int.class}
         )
     })
-    @KnownFailure("Handshake fails.")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testProxyConnection() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
@@ -576,8 +558,6 @@
             args = {int.class}
         )
     })
-    @KnownFailure("Handshake fails.")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testProxyAuthConnection() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
@@ -639,8 +619,6 @@
             args = {}
         )
     })
-    @KnownFailure("Handshake fails.")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testConsequentProxyConnection() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
@@ -707,8 +685,6 @@
             args = {boolean.class}
         )
     })
-    @KnownFailure("Handshake fails.")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testProxyAuthConnection_doOutput() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
@@ -825,8 +801,6 @@
             args = {int.class}
         )
     })
-    @KnownFailure("Handshake fails.")
-    @AndroidOnly("we only have a .bks key store in the test resources")
     public void testProxyConnection_Not_Found_Response() throws Throwable {
         // setting up the properties pointing to the key/trust stores
         setUpStoreProperties();
diff --git a/luni/src/test/java/org/apache/harmony/luni/tests/java/lang/DoubleTest.java b/luni/src/test/java/org/apache/harmony/luni/tests/java/lang/DoubleTest.java
index 3b2d405..44039df 100644
--- a/luni/src/test/java/org/apache/harmony/luni/tests/java/lang/DoubleTest.java
+++ b/luni/src/test/java/org/apache/harmony/luni/tests/java/lang/DoubleTest.java
@@ -541,8 +541,6 @@
         method = "parseDouble",
         args = {java.lang.String.class}
     )
-    @KnownFailure("parseDouble returns different value on Android " +
-            "for 0x44b52d02c7e14af6L, it returns 1.0e23.")
     public void test_parseDoubleLjava_lang_String() {
         assertEquals("Incorrect double returned, expected zero.", 0.0, Double
                 .parseDouble("2.4703282292062327208828439643411e-324"), 0.0);
diff --git a/luni/src/test/java/tests/api/java/io/FileTest.java b/luni/src/test/java/tests/api/java/io/FileTest.java
index adcaccd..09adac6 100644
--- a/luni/src/test/java/tests/api/java/io/FileTest.java
+++ b/luni/src/test/java/tests/api/java/io/FileTest.java
@@ -2154,9 +2154,6 @@
                 args = {}
         )
     })
-    @KnownFailure("canWrite() returns true even when a file is marked " +
-            "read-only (Test 2). It is also possible to open this file " +
-            "for writing (Test 3).")
     public void test_setReadOnly() {
         // Test for method java.io.File.setReadOnly()
 
diff --git a/luni/src/test/java/tests/api/java/io/SerializationStressTest1.java b/luni/src/test/java/tests/api/java/io/SerializationStressTest1.java
index a8621a1..ebfe013 100644
--- a/luni/src/test/java/tests/api/java/io/SerializationStressTest1.java
+++ b/luni/src/test/java/tests/api/java/io/SerializationStressTest1.java
@@ -1354,7 +1354,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("nested writeReplace is not handled")
     public void test_18_28_writeObject() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.lang.Object)
diff --git a/luni/src/test/java/tests/api/java/io/SerializationStressTest2.java b/luni/src/test/java/tests/api/java/io/SerializationStressTest2.java
index d3bbc29..71da321 100644
--- a/luni/src/test/java/tests/api/java/io/SerializationStressTest2.java
+++ b/luni/src/test/java/tests/api/java/io/SerializationStressTest2.java
@@ -1419,7 +1419,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("Executed replacement when it should not: class java.lang.String")
     public void test_18_57_writeObject() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.lang.Object)
@@ -1457,7 +1456,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("Executed replacement when it should not: class java.lang.String")
     public void test_18_58_writeObject() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.lang.Object)
diff --git a/luni/src/test/java/tests/api/java/io/SerializationStressTest3.java b/luni/src/test/java/tests/api/java/io/SerializationStressTest3.java
index ba83ab6..f704819 100644
--- a/luni/src/test/java/tests/api/java/io/SerializationStressTest3.java
+++ b/luni/src/test/java/tests/api/java/io/SerializationStressTest3.java
@@ -1483,7 +1483,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("Serialization of SimpleDateFormat object fails")
     public void test_18_113_writeObject() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.lang.Object)
@@ -1552,7 +1551,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("Serialization of NumberFormat object fails")
     public void test_18_115_writeObject() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.lang.Object)
diff --git a/luni/src/test/java/tests/api/java/io/SerializationStressTest4.java b/luni/src/test/java/tests/api/java/io/SerializationStressTest4.java
index 3b1a063..fbda23d 100644
--- a/luni/src/test/java/tests/api/java/io/SerializationStressTest4.java
+++ b/luni/src/test/java/tests/api/java/io/SerializationStressTest4.java
@@ -2849,7 +2849,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("deserialization of a date fomat field seems to fail")
     public void test_writeObject_DateFormat_Field() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.text.DateFormat.Field)
@@ -2894,7 +2893,6 @@
         method = "!Serialization",
         args = {}
     )
-    @KnownFailure("deserialization of a number fomat field seems to fail")
     public void test_writeObject_NumberFormat_Field() {
         // Test for method void
         // java.io.ObjectOutputStream.writeObject(java.text.NumberFormat.Field)
diff --git a/luni/src/test/java/tests/api/java/net/CookieHandlerTest.java b/luni/src/test/java/tests/api/java/net/CookieHandlerTest.java
index 256c5ba..89f9f3c 100644
--- a/luni/src/test/java/tests/api/java/net/CookieHandlerTest.java
+++ b/luni/src/test/java/tests/api/java/net/CookieHandlerTest.java
@@ -157,7 +157,6 @@
             args = {java.net.URI.class, java.util.Map.class}
         )
     })
-    @KnownFailure("Cache is not used")
     public void test_get_put() {
         MockCookieHandler mch = new MockCookieHandler();
         CookieHandler defaultHandler = CookieHandler.getDefault();
diff --git a/luni/src/test/java/tests/api/java/net/ResponseCacheTest.java b/luni/src/test/java/tests/api/java/net/ResponseCacheTest.java
index 8aeb820..15a0a82 100644
--- a/luni/src/test/java/tests/api/java/net/ResponseCacheTest.java
+++ b/luni/src/test/java/tests/api/java/net/ResponseCacheTest.java
@@ -185,9 +185,6 @@
         method = "put",
         args = {URI.class, URLConnection.class}
     )
-    @KnownFailure("the call to put is made with a wrong uri."
-            + " The RI calls with http://localhost:<port>/test1,"
-            + " but android only calls with http://localhost:<port>")
     public void test_put() throws Exception {
         // Create test ResponseCache
         TestResponseCache cache = new TestResponseCache(
@@ -338,4 +335,4 @@
             return null;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/luni/src/test/java/tests/api/java/util/FormatterTest.java b/luni/src/test/java/tests/api/java/util/FormatterTest.java
index 7709b88..89be2ef 100644
--- a/luni/src/test/java/tests/api/java/util/FormatterTest.java
+++ b/luni/src/test/java/tests/api/java/util/FormatterTest.java
@@ -3165,8 +3165,6 @@
         method = "format",
         args = {java.lang.String.class, java.lang.Object[].class}
     )
-    @KnownFailure("Formatting of Double.MIN_VALUE works improperly")
-    @AndroidOnly("last case fails on RI. See comment below")
     public void test_formatLjava_lang_String$Ljava_lang_Object_FloatConversionE() {
         Formatter f = null;
         final Object[][] tripleE = {
@@ -3400,8 +3398,6 @@
         method = "format",
         args = {java.lang.String.class, java.lang.Object[].class}
     )
-    @KnownFailure("Formatting of Double.MIN_VALUE works improperly")
-    @AndroidOnly("last case fails on RI. See comment below")
     public void test_formatLjava_lang_String$Ljava_lang_Object_FloatConversionG() {
         Formatter f = null;
         final Object[][] tripleG = {
@@ -3652,7 +3648,6 @@
         method = "format",
         args = {java.lang.String.class, java.lang.Object[].class}
     )
-    @KnownFailure("Formatting of Float.MAX_VALUE works improperly")
     public void test_formatLjava_lang_String$Ljava_lang_Object_FloatConversionF() {
         Formatter f = null;
 
@@ -4157,8 +4152,6 @@
         method = "format",
         args = {java.lang.String.class, java.lang.Object[].class}
     )
-    @KnownFailure("Formatting of BigDecimal lost precission sometimes")
-    @AndroidOnly("last case fails on RI. See comment below")
     public void test_formatLjava_lang_String$Ljava_lang_Object_BigDecimalConversionG() {
         Formatter f = null;
         final Object[][] tripleG = {
diff --git a/luni/src/test/java/tests/api/java/util/GregorianCalendarTest.java b/luni/src/test/java/tests/api/java/util/GregorianCalendarTest.java
index aba02a5..b64fcd1 100644
--- a/luni/src/test/java/tests/api/java/util/GregorianCalendarTest.java
+++ b/luni/src/test/java/tests/api/java/util/GregorianCalendarTest.java
@@ -770,8 +770,6 @@
         method = "getMinimalDaysInFirstWeek",
         args = {}
     )
-    @KnownFailure("Some difference in timezones and/or locales data"
-            + "Who is right, the CLDR or the RI?")
     public void test_getMinimalDaysInFirstWeek() {
         // Regression for Harmony-1037
         GregorianCalendar g = new GregorianCalendar(TimeZone
diff --git a/luni/src/test/java/tests/api/java/util/PropertiesTest.java b/luni/src/test/java/tests/api/java/util/PropertiesTest.java
index ddf9994..84a81d2 100644
--- a/luni/src/test/java/tests/api/java/util/PropertiesTest.java
+++ b/luni/src/test/java/tests/api/java/util/PropertiesTest.java
@@ -387,7 +387,6 @@
         method = "loadFromXML",
         args = {java.io.InputStream.class}
     )
-    @KnownFailure("Expected Exception is not thrown.")
     public void test_loadFromXMLLjava_io_InputStream() throws IOException {
         Properties myProps = new Properties();
         myProps.put("Property A", " aye\\\f\t\n\r\b");
diff --git a/luni/src/test/java/tests/api/java/util/ScannerTest.java b/luni/src/test/java/tests/api/java/util/ScannerTest.java
index bd13383..cd6ac09 100644
--- a/luni/src/test/java/tests/api/java/util/ScannerTest.java
+++ b/luni/src/test/java/tests/api/java/util/ScannerTest.java
@@ -1872,7 +1872,6 @@
         method = "nextBigInteger",
         args = {int.class}
     )
-    @KnownFailure("nextBigInteger method doesn't work properly if input string has Arabic-Indic digits")
     public void test_nextBigIntegerI() throws IOException {
         s = new Scanner("123 456");
         assertEquals(new BigInteger("123"), s.nextBigInteger(10));
@@ -2021,7 +2020,6 @@
         method = "nextBigInteger",
         args = {}
     )
-    @KnownFailure("nextBigInteger method doesn't work properly if input string has Arabic-Indic digits")
     public void test_nextBigInteger() throws IOException {
         s = new Scanner("123 456");
         assertEquals(new BigInteger("123"), s.nextBigInteger());
@@ -3380,7 +3378,6 @@
         method = "hasNextBigInteger",
         args = {int.class}
     )
-    @KnownFailure("hasNextBigInteger method doesn't work properly if input string has Arabic-Indic digits")    
     public void test_hasNextBigIntegerI() throws IOException {
         s = new Scanner("123 456");
         assertTrue(s.hasNextBigInteger(10));
@@ -3586,7 +3583,6 @@
         method = "hasNextBigInteger",
         args = {}
     )
-    @KnownFailure("nextBigInteger method doesn't work properly if input string has Arabic-Indic digits")
     public void test_hasNextBigInteger() throws IOException {
         s = new Scanner("123 456");
         assertTrue(s.hasNextBigInteger());
@@ -5452,7 +5448,6 @@
         method = "findWithinHorizon",
         args = {java.util.regex.Pattern.class, int.class}
     )
-    @KnownFailure("findWithinHorizon method doesn't work properly")
     public void test_findWithinHorizon_LPatternI(){
 
         // This method searches through the input up to the specified search
diff --git a/luni/src/test/java/tests/api/java/util/TimeZoneTest.java b/luni/src/test/java/tests/api/java/util/TimeZoneTest.java
index aacf6ce..2919a75 100644
--- a/luni/src/test/java/tests/api/java/util/TimeZoneTest.java
+++ b/luni/src/test/java/tests/api/java/util/TimeZoneTest.java
@@ -63,7 +63,6 @@
         method = "getDSTSavings",
         args = {}
     )
-    @KnownFailure("Might be a difference in data.")
     public void test_getDSTSavings() {
         // Test for method int java.util.TimeZone.getDSTSavings()
 
@@ -138,7 +137,6 @@
         method = "getTimeZone",
         args = {java.lang.String.class}
     )
-    @KnownFailure("Android fails the last test.")
     public void test_getTimeZoneLjava_lang_String() {
         assertEquals("Must return GMT when given an invalid TimeZone id SMT-8.",
                              "GMT", TimeZone.getTimeZone("SMT-8").getID());
@@ -375,7 +373,6 @@
         method = "hasSameRules",
         args = {java.util.TimeZone.class}
     )
-    @KnownFailure("Arizona doesn't observe DST")
     public void test_hasSameRulesLjava_util_TimeZone() {
         TimeZone tz1 = TimeZone.getTimeZone("America/Denver");
         TimeZone tz2 = TimeZone.getTimeZone("America/Phoenix");
diff --git a/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_GB2312.java b/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_GB2312.java
index b9f9bc6..7f83414 100644
--- a/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_GB2312.java
+++ b/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_GB2312.java
@@ -192,7 +192,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is not properly supported in Android!")
     @Override
     public void test_Decode() throws CharacterCodingException {
         super.test_Decode();
@@ -203,7 +202,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is not properly supported in Android!")
     @Override
     public void test_Encode() throws CharacterCodingException {
         super.test_Encode();
@@ -214,7 +212,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is mapped to GBK Android!")
     @Override
     public void test_nameMatch() {
         super.test_nameMatch();
diff --git a/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_ISO_2022_JP.java b/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_ISO_2022_JP.java
index 3f1afb5..bf070c0 100644
--- a/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_ISO_2022_JP.java
+++ b/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_ISO_2022_JP.java
@@ -385,7 +385,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is not properly supported in Android!")
     @Override
     public void test_Decode() throws CharacterCodingException {
         super.test_Decode();
@@ -396,7 +395,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is not properly supported in Android!")
     @Override
     public void test_Encode() throws CharacterCodingException {
         super.test_Encode();
diff --git a/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_x_windows_950.java b/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_x_windows_950.java
index 61685f1..39e7f31 100644
--- a/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_x_windows_950.java
+++ b/nio_char/src/test/java/tests/api/java/nio/charset/Charset_MultiByte_x_windows_950.java
@@ -251,7 +251,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is not properly supported in Android!")
     @Override
     public void test_Encode() throws CharacterCodingException {
         super.test_Encode();
@@ -262,7 +261,6 @@
         method = "functionalCoDec_REPR",
         args = {}
     )
-    @KnownFailure("This Characterset is mapped to Big5 Android!")
     @Override
     public void test_nameMatch() {
         super.test_nameMatch();
diff --git a/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java b/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java
index 122dacd..c6e0861 100644
--- a/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java
+++ b/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java
@@ -213,7 +213,6 @@
             method = "importPreferences",
             args = {java.io.InputStream.class}
         )
-    @KnownFailure("xml validation does not work")
     public void testImportPreferences2() throws Exception {
         InputStream in = PreferencesTest.class
                 .getResourceAsStream("/prefs/java/util/prefs/userprefs-badtype.xml");
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java
index deef841..0360a94 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java
@@ -1778,7 +1778,6 @@
         method = "createLineBidi",
         args = {int.class, int.class}
     )
-    @KnownFailure("Is this a failure or just a different behaviour of ICU?")
     public void testCreateLineBidi_AndroidFailure() {
         Bidi bidi = new Bidi("str", Bidi.DIRECTION_RIGHT_TO_LEFT);
         bidi.createLineBidi(2, 2);
@@ -1983,7 +1982,6 @@
         method = "getRunLimit",
         args = {int.class}
     )
-    @KnownFailure("Doesn't verify any int value between 0 and getRunCount().")
     public void testGetRunLimit() {
         bd = new Bidi("text", Bidi.DIRECTION_LEFT_TO_RIGHT);
         try {
@@ -2061,7 +2059,6 @@
         method = "Bidi",
         args = {java.text.AttributedCharacterIterator.class}
     )
-    @KnownFailure("Doesn't verify any int value between 0 and getRunCount().")
     public void testBidiConstructor_Iterator() {
         AttributedString paragraph = new AttributedString("text");
         bd = new Bidi(paragraph.getIterator());
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/CollatorTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/CollatorTest.java
index 161a2c5..71ee510 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/CollatorTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/CollatorTest.java
@@ -353,7 +353,6 @@
         method = "setDecomposition",
         args = {int.class}
     )
-    @KnownFailure("uses decomposition even if set to NO_DECOMPOSITION")
     public void test_setDecompositionI() {
         Collator c = Collator.getInstance(Locale.FRENCH);
         c.setStrength(Collator.IDENTICAL);
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java
index 7a615d5..0b6ba31 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java
@@ -554,7 +554,6 @@
         method = "setInternationalCurrencySymbol",
         args = {java.lang.String.class}
     )
-    @KnownFailure("getCurrency() doesn't return null for bogus currency code.")
     public void test_setInternationalCurrencySymbolLjava_lang_String() {
         Locale locale = Locale.CANADA;
         DecimalFormatSymbols dfs = ((DecimalFormat) NumberFormat
@@ -743,8 +742,6 @@
         method = "!SerializationGolden",
         args = {}
     )
-    @KnownFailure("Deserialized object is not equal to the original object." +
-            "Test passes on RI.")
     public void test_RIHarmony_compatible() throws Exception {
         ObjectInputStream i = null;
         try {
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
index 92945ee..92aaf71 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
@@ -70,8 +70,6 @@
         method = "formatToCharacterIterator",
         args = {java.lang.Object.class}
     )
-    @KnownFailure("formatting numbers with more than ~300 digits doesn't work."
-            + " Also the third test doesn't round the string like the RI does")
     public void test_formatToCharacterIterator() throws Exception {
         AttributedCharacterIterator iterator;
         int[] runStarts;
@@ -277,7 +275,6 @@
         method = "parse",
         args = {java.lang.String.class, java.text.ParsePosition.class}
     )
-    @KnownFailure("Something seems wrong with Android implementation, here!")
     public void test_parseLjava_lang_String_Ljava_text_ParsePosition() {
         DecimalFormat form = (DecimalFormat) DecimalFormat
                 .getInstance(Locale.US);
@@ -1514,7 +1511,6 @@
         method = "format",
         args = {double.class, java.lang.StringBuffer.class, java.text.FieldPosition.class}
     )
-    @KnownFailure("Something seems wrong with Android implementation, here!")
     public void test_formatDLjava_lang_StringBufferLjava_text_FieldPosition() {
         new Support_DecimalFormat(
                 "test_formatDLjava_lang_StringBufferLjava_text_FieldPosition")
@@ -1752,7 +1748,6 @@
         method = "format",
         args = {long.class, java.lang.StringBuffer.class, java.text.FieldPosition.class}
     )
-    @KnownFailure("Something seems wrong with Android implementation, here!")
     public void test_formatJLjava_lang_StringBufferLjava_text_FieldPosition() {
         int failCount = 0;
         BitSet failures = new BitSet();
@@ -1853,10 +1848,6 @@
         method = "format",
         args = {double.class}
     )
-    @KnownFailure("This test should take into account (inexact) double " +
-            "representation. Fails on Both RI and Android at different places." +
-            "There is ticket for this failure because of parseDouble method " +
-            "returns different values on Android and RI.")
     public void test_formatD() {
         DecimalFormat format = (DecimalFormat) NumberFormat
                 .getInstance(Locale.ENGLISH);
@@ -2144,7 +2135,6 @@
         method = "parse",
         args = {java.lang.String.class, java.text.ParsePosition.class}
     )
-    @KnownFailure("Something seems wrong with Android implementation, here!")
     public void test_parseLjava_lang_StringLjava_text_ParsePosition() {
         DecimalFormat format = (DecimalFormat) NumberFormat
                 .getNumberInstance(Locale.ENGLISH);
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/NumberFormatFieldTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/NumberFormatFieldTest.java
index 06c6922..e6c79cd 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/NumberFormatFieldTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/NumberFormatFieldTest.java
@@ -60,7 +60,6 @@
         method = "readResolve",
         args = {}
     )
-    @KnownFailure("readResolve does not work properly")
     public void test_readResolve() {
         // test for method java.lang.Object readResolve()
 
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
index 3c864a5..68452e66 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
@@ -280,7 +280,6 @@
         method = "getCollationElementIterator",
         args = {java.text.CharacterIterator.class}
     )
-    @KnownFailure("ICU seems to miss collation data")
     public void testGetCollationElementIteratorCharacterIterator() throws Exception {
         {
             Locale locale = new Locale("cs", "CZ", "");
diff --git a/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java b/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java
index f96410f..0f77270 100644
--- a/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java
+++ b/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java
@@ -468,10 +468,6 @@
         method = "format",
         args = {java.util.Date.class, java.lang.StringBuffer.class, java.text.FieldPosition.class}
     )
-    @KnownFailure("SimpleDateFormat.format(Date date, " +
-            "StringBuffer toAppendTo, FieldPosition pos) " +
-            "return incorrect week number for \" W\" pattern. " + 
-            "Also Android doesn't support formatting of PST, EST, ...")
     public void test_formatLjava_util_DateLjava_lang_StringBufferLjava_text_FieldPosition() {
         // Test for method java.lang.StringBuffer
         // java.text.SimpleDateFormat.format(java.util.Date,
@@ -672,7 +668,6 @@
             args = {java.lang.String.class}
         )
     })
-    @KnownFailure("Android doesn't support formatting of PST, EST, ...")
     public void test_timeZoneFormatting() {
         // tests specific to formatting of timezones
         Date summerDate = new GregorianCalendar(1999, Calendar.JUNE, 2, 15, 3,
diff --git a/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderFactoryTest.java b/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderFactoryTest.java
index 80c6e3c..7356d3a 100644
--- a/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderFactoryTest.java
+++ b/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderFactoryTest.java
@@ -319,7 +319,6 @@
             args = {boolean.class}
         )
     })
-    @KnownFailure("Should handle XIncludeAware flag more gracefully")
     public void test_isSetXIncludeAware() {
         dbf.setXIncludeAware(true);
         assertTrue(dbf.isXIncludeAware());
diff --git a/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderTest.java b/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderTest.java
index 02b6d80..7318ad0 100644
--- a/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderTest.java
+++ b/xml/src/test/java/tests/api/javax/xml/parsers/DocumentBuilderTest.java
@@ -252,7 +252,6 @@
         method = "isXIncludeAware",
         args = {}
     )
-    @KnownFailure("Should handle XIncludeAware flag more gracefully")
     public void testIsXIncludeAware() {
         try {
             dbf.setXIncludeAware(false);
@@ -637,7 +636,6 @@
         method = "reset",
         args = { }
     )
-    @KnownFailure("Android DocumentBuilder should implement reset() properly")
     public void testReset() {
         // Make sure EntityResolver gets reset
         InputStream source = new ByteArrayInputStream("<a>&foo;</a>".getBytes());
@@ -724,7 +722,6 @@
         method = "setEntityResolver",
         args = { EntityResolver.class }
     )
-    @KnownFailure("Android DocumentBuilder should support entity resolving")
     public void testSetEntityResolver() {
         // Ordinary case
         InputStream source = new ByteArrayInputStream("<a>&foo;</a>".getBytes());
diff --git a/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserFactoryTest.java b/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserFactoryTest.java
index a918ac2..b573dbd 100644
--- a/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserFactoryTest.java
+++ b/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserFactoryTest.java
@@ -163,7 +163,6 @@
             args = {boolean.class}
         )
     })
-    @KnownFailure("Should handle XIncludeAware flag more gracefully")
     public void test_setIsXIncludeAware() {
         spf.setXIncludeAware(true);
         assertTrue(spf.isXIncludeAware());
@@ -316,7 +315,6 @@
         method = "setNamespaceAware",
         args = {boolean.class}
     )
-    @KnownFailure("Error in namespace feature handling (for ExpatParser)")
     public void test_setNamespaceAwareZ() {
 
         spf.setNamespaceAware(true);
diff --git a/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserTest.java b/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserTest.java
index ca7cf71..b7e3f74 100644
--- a/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserTest.java
+++ b/xml/src/test/java/tests/api/javax/xml/parsers/SAXParserTest.java
@@ -327,7 +327,6 @@
         method = "isXIncludeAware",
         args = {}
     )
-    @KnownFailure("Should handle XIncludeAware flag more gracefully")
     public void testIsXIncludeAware() {
         try {
             spf.setXIncludeAware(false);
@@ -1047,7 +1046,6 @@
         method = "reset",
         args = { }
     )
-    @KnownFailure("Android DocumentBuilder should implement reset() properly")
     public void testReset() {
         try {
             spf = SAXParserFactory.newInstance();
@@ -1103,7 +1101,6 @@
             args = { String.class, Object.class }
         )
     })
-    @KnownFailure("ExpatParser should allow to clear properties")
     public void testSetGetProperty() {
         // Ordinary case
         String validName = "http://xml.org/sax/properties/lexical-handler";