1/* 2 * This file contains expectations for tests that we'd like to eventually fix, but aren't urgent. 3 */ 4[ 5{ 6 description: "Without no security manager, we don't care if checkPermission's argument is null", 7 name: "org.apache.harmony.security.tests.java.security.AccessController2Test#test_checkPermission_NullParameter", 8 result: EXEC_FAILED 9}, 10{ 11 description: "This test and testGetKeepAlive have been failing in our continuous build recently.", 12 names: [ 13 "libcore.java.net.URLConnectionTest#testConnectTimeouts", 14 "libcore.java.net.URLConnectionTest#testGetKeepAlive" 15 ], 16 bug: 3441111 17}, 18{ 19 description: "on the RI, writing the two halves of the surrogate pair in separate writes 20 is an error because the CharsetEncoder doesn't remember it's half-way through a 21 surrogate pair across the two calls!", 22 result: EXEC_FAILED, 23 names: [ 24 "libcore.java.nio.charset.CharsetEncoderTest#testCharsetEncoderSurrogatesBrokenByDesign_IGNORE_RI", 25 "libcore.java.nio.charset.CharsetEncoderTest#testCharsetEncoderSurrogatesBrokenByDesign_REPLACE_RI", 26 "libcore.java.nio.charset.CharsetEncoderTest#testCharsetEncoderSurrogatesBrokenByDesign_REPORT_RI" 27 ] 28}, 29{ 30 description: "We're retiring the security manager. Unfortunately, tests all over the place 31 need to check that they're secure, so they all fail when we refuse to install 32 a security manager. This suppresses all of these failures.", 33 result: EXEC_FAILED, 34 failure: "disable securityManager", 35 pattern: ".*java.lang.SecurityException\\s+at java.lang.System.setSecurityManager.*", 36 bug: 2585285 37}, 38{ 39 description: "ignore compilation errors due to different available APIs", 40 result: COMPILE_FAILED, 41 failure: "ignore compilation errors", 42 pattern: ".*\\.java:\\d+: cannot find symbol.*" 43}, 44{ 45 description: "These tests assert the exact bytes of the compressed form. Since we use a 46 different zlib configuration, we get a different (but valid) compressed form.", 47 result: EXEC_FAILED, 48 names: [ 49 "org.apache.harmony.archive.tests.java.util.zip.DeflaterInputStreamTest#testAvailable", 50 "org.apache.harmony.archive.tests.java.util.zip.DeflaterInputStreamTest#testRead", 51 "org.apache.harmony.archive.tests.java.util.zip.DeflaterInputStreamTest#testReadByteArrayIntInt", 52 "org.apache.harmony.archive.tests.java.util.zip.DeflaterTest#test_deflate_beforeSetInput" 53 ] 54}, 55{ 56 description: "The RI avoids blocking calls when '\\r' is the last character. We don't 57 bother since that adds complexity to every other read call, and '\\r' as the 58 last character will be diminishingly rare anyway.", 59 result: EXEC_FAILED, 60 name: "java.io.BufferedReader.ReadLine", 61 substring: "java.lang.RuntimeException: Read past limit" 62}, 63{ 64 description: "The RI avoids blocking calls when '\\r' is the last character. We don't 65 bother since that adds complexity to every other read call, and '\\r' as the 66 last character will be diminishingly rare anyway.", 67 result: EXEC_FAILED, 68 name: "java.io.BufferedReader.Ready", 69 substring: "Hit infinite wait condition" 70}, 71{ 72 description: "The test is checking that the implementation doesn't read any characters 73 earlier than it absolutely needs to. This is a bogus requirement; streams 74 are allowed to buffer input as necessary.", 75 result: EXEC_FAILED, 76 name: "java.io.StreamTokenizer.Reset", 77 substring: "Test failed: should get token [, but get -1" 78}, 79{ 80 description: "These tests only pass if the root logger hasn't yet been initialized. They 81 incorrectly assume that resetting the LogManager will clear the root logger's 82 resource bundle; this isn't the case.", 83 result: EXEC_FAILED, 84 name: "org.apache.harmony.logging.tests.java.util.logging.OldLoggerTest#testGetLoggerWithRes_InvalidResourceBundle", 85 substring: "java.lang.IllegalArgumentException: Resource bundle name 'impossible_not_existing' is inconsistent" 86}, 87{ 88 description: "These tests only pass if the root logger hasn't yet been initialized. They 89 incorrectly assume that resetting the LogManager will clear the root logger's 90 resource bundle; this isn't the case.", 91 result: EXEC_FAILED, 92 name: "org.apache.harmony.logging.tests.java.util.logging.LoggerTest#testGetLogger_Empty", 93 substring: "junit.framework.AssertionFailedError" 94}, 95{ 96 description: "This tests implementation details", 97 result: UNSUPPORTED, 98 name: "java.util.EnumSet.OneUniverse" 99}, 100{ 101 description: "Dalvik doesn't include the SunJCE crypto provider", 102 result: EXEC_FAILED, 103 names: [ 104 "com.sun.crypto.provider.Cipher.AES.Test4513830", 105 "com.sun.crypto.provider.Cipher.AES.Test4512704", 106 "com.sun.crypto.provider.Cipher.AES.Test4512524", 107 "com.sun.crypto.provider.Cipher.AES.Test4511676", 108 "com.sun.crypto.provider.Cipher.AES.Test4517355" 109 ], 110 substring: "NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 111}, 112{ 113 description: "Dalvik doesn't include the SunJCE crypto provider", 114 result: EXEC_FAILED, 115 name: "com.sun.crypto.provider.Cipher.AES.TestISO10126Padding", 116 substring: " java.security.NoSuchProviderException: SunJCE" 117}, 118{ 119 description: "Dalvik doesn't include the SunJCE crypto provider", 120 result: EXEC_FAILED, 121 name: "com.sun.crypto.provider.Cipher.AES.Test4626070", 122 substring: "NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 123}, 124{ 125 description: "Dalvik doesn't include the SunJCE crypto provider", 126 result: EXEC_FAILED, 127 names: [ 128 "com.sun.crypto.provider.Cipher.AES.TestShortBuffer", 129 "com.sun.crypto.provider.Cipher.CTS.CTSMode" 130 ], 131 substring: "Provider SunJCE is not available" 132}, 133{ 134 description: "Dalvik doesn't include the SunJCE crypto provider", 135 result: EXEC_FAILED, 136 names: [ 137 "com.sun.crypto.provider.Cipher.DES.DesAPITest", 138 "com.sun.crypto.provider.Cipher.DES.DoFinalReturnLen", 139 "com.sun.crypto.provider.Cipher.DES.FlushBug" 140 ], 141 substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 142}, 143{ 144 description: "Dalvik doesn't include the SunJCE crypto provider", 145 result: EXEC_FAILED, 146 name: "com.sun.crypto.provider.Cipher.DES.KeyWrapping", 147 substring: "Provider SunJCE is not available" 148}, 149{ 150 description: "Dalvik doesn't include the SunJCE crypto provider", 151 result: EXEC_FAILED, 152 names: [ 153 "com.sun.crypto.provider.Cipher.DES.PaddingTest", 154 "com.sun.crypto.provider.Cipher.DES.Sealtest", 155 "com.sun.crypto.provider.Cipher.DES.PerformanceTest" 156 ], 157 substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 158}, 159{ 160 description: "Dalvik doesn't include the SunJCE crypto provider", 161 result: EXEC_FAILED, 162 names: [ 163 "com.sun.crypto.provider.Cipher.PBE.DecryptWithoutParameters", 164 "com.sun.crypto.provider.Cipher.PBE.PBEInvalidParamsTest" 165 ], 166 substring: "Provider SunJCE is not available" 167}, 168{ 169 description: "Dalvik doesn't include the SunJCE crypto provider", 170 result: EXEC_FAILED, 171 name: "com.sun.crypto.provider.Cipher.PBE.PBEKeysAlgorithmNames", 172 substring: "java.security.NoSuchProviderException: SunJCE" 173}, 174{ 175 description: "Dalvik doesn't include the SunJCE crypto provider", 176 result: EXEC_FAILED, 177 names: [ 178 "com.sun.crypto.provider.Cipher.PBE.PBEParametersTest", 179 "com.sun.crypto.provider.Cipher.PBE.PKCS12Oid", 180 "com.sun.crypto.provider.Cipher.UTIL.StrongOrUnlimited", 181 "com.sun.crypto.provider.Cipher.KeyWrap.NISTWrapKAT" 182 ], 183 substring: "Provider SunJCE is not available" 184}, 185{ 186 description: "Dalvik doesn't include the SunJCE crypto provider", 187 result: EXEC_FAILED, 188 name: "com.sun.crypto.provider.KeyAgreement.DHGenSecretKey", 189 substring: "java.security.NoSuchProviderException: SunJCE" 190}, 191{ 192 description: "Dalvik doesn't include the SunJCE crypto provider", 193 result: EXEC_FAILED, 194 names: [ 195 "com.sun.crypto.provider.KeyAgreement.DHGenSharedSecret", 196 "com.sun.crypto.provider.KeyAgreement.DHKeyAgreement3", 197 "com.sun.crypto.provider.KeyAgreement.DHKeyFactory", 198 "com.sun.crypto.provider.KeyAgreement.DHKeyGenSpeed" 199 ], 200 substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 201}, 202{ 203 description: "Dalvik doesn't include the SunJCE crypto provider", 204 result: EXEC_FAILED, 205 names: [ 206 "com.sun.crypto.provider.KeyAgreement.TestExponentSize", 207 "com.sun.crypto.provider.KeyFactory.TestProviderLeak", 208 "com.sun.crypto.provider.KeyFactory.PBKDF2HmacSHA1FactoryTest" 209 ], 210 substring: "java.security.NoSuchProviderException: SunJCE" 211}, 212{ 213 description: "Dalvik doesn't include the SunJCE crypto provider", 214 result: EXEC_FAILED, 215 names: [ 216 "com.sun.crypto.provider.KeyGenerator.Test4628062", 217 "com.sun.crypto.provider.KeyGenerator.TestExplicitKeyLength" 218 ], 219 substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 220}, 221{ 222 description: "Dalvik doesn't include the SunJCE crypto provider", 223 result: EXEC_FAILED, 224 name: "com.sun.crypto.provider.Mac.HmacPBESHA1", 225 substring: "java.security.NoSuchProviderException: SunJCE" 226}, 227{ 228 description: "Dalvik doesn't include the SunJCE crypto provider", 229 result: EXEC_FAILED, 230 name: "com.sun.crypto.provider.Mac.HmacMD5", 231 substring: "java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE" 232}, 233{ 234 description: "Dalvik doesn't include the SunJCE crypto provider", 235 result: EXEC_FAILED, 236 name: "com.sun.crypto.provider.Mac.MacClone", 237 substring: "java.security.NoSuchProviderException: SunJCE" 238}, 239{ 240 description: "Dalvik doesn't include the SunJCE crypto provider", 241 result: EXEC_FAILED, 242 failure: "JKS keystore not found", 243 substring: "KeyStore JKS implementation not found" 244}, 245{ 246 description: "These NPEs all happen while calling Provider#getName on the result of 247 Security#getProvider(). Unfortunately, that method is permitted to return 248 null if the system has no provider with the requested name. And since we don't 249 have the SunJCE provider, tests fail", 250 result: EXEC_FAILED, 251 name: "com.sun.crypto.provider.Cipher.PBE.PKCS12Cipher", 252 pattern: ".*PKCS12Cipher.java\\:87\\).*NullPointerException.*" 253}, 254{ 255 description: "These NPEs all happen while calling Provider#getName on the result of 256 Security#getProvider(). Unfortunately, that method is permitted to return 257 null if the system has no provider with the requested name. And since we don't 258 have the SunJCE provider, tests fail", 259 result: EXEC_FAILED, 260 name: "com.sun.crypto.provider.Cipher.PBE.PKCS12CipherKAT", 261 pattern: ".*NullPointerException.*PKCS12CipherKAT.java\\:183\\).*" 262}, 263{ 264 description: "These NPEs all happen while calling Provider#getName on the result of 265 Security#getProvider(). Unfortunately, that method is permitted to return 266 null if the system has no provider with the requested name. And since we don't 267 have the SunJCE provider, tests fail", 268 result: EXEC_FAILED, 269 name: "com.sun.crypto.provider.Cipher.RC2ArcFour.CipherKAT", 270 pattern: ".*NullPointerException.*CipherKAT.java\\:205\\).*" 271}, 272{ 273 description: "These NPEs all happen while calling Provider#getName on the result of 274 Security#getProvider(). Unfortunately, that method is permitted to return 275 null if the system has no provider with the requested name. And since we don't 276 have the SunJCE provider, tests fail", 277 result: EXEC_FAILED, 278 name: "com.sun.crypto.provider.Cipher.RSA.TestOAEP_KAT", 279 pattern: ".*TestOAEP_KAT.java\\:62\\).*NullPointerException.*" 280}, 281{ 282 description: "These NPEs all happen while calling Provider#getName on the result of 283 Security#getProvider(). Unfortunately, that method is permitted to return 284 null if the system has no provider with the requested name. And since we don't 285 have the SunJCE provider, tests fail", 286 result: EXEC_FAILED, 287 name: "com.sun.crypto.provider.Cipher.RSA.TestOAEP", 288 pattern: ".*TestOAEP.java\\:50\\).*NullPointerException.*" 289}, 290{ 291 description: "These NPEs all happen while calling Provider#getName on the result of 292 Security#getProvider(). Unfortunately, that method is permitted to return 293 null if the system has no provider with the requested name. And since we don't 294 have the SunJCE provider, tests fail", 295 result: EXEC_FAILED, 296 name: "com.sun.crypto.provider.Cipher.RSA.TestOAEPParameterSpec", 297 pattern: ".*TestOAEPParameterSpec.java\\:124\\).*NullPointerException.*" 298}, 299{ 300 description: "These NPEs all happen while calling Provider#getName on the result of 301 Security#getProvider(). Unfortunately, that method is permitted to return 302 null if the system has no provider with the requested name. And since we don't 303 have the SunJCE provider, tests fail", 304 result: EXEC_FAILED, 305 name: "com.sun.crypto.provider.Cipher.RSA.TestOAEPWithParams", 306 pattern: ".*TestOAEPWithParams.java\\:58\\).*NullPointerException.*" 307}, 308{ 309 description: "These NPEs all happen while calling Provider#getName on the result of 310 Security#getProvider(). Unfortunately, that method is permitted to return 311 null if the system has no provider with the requested name. And since we don't 312 have the SunJCE provider, tests fail", 313 result: EXEC_FAILED, 314 name: "com.sun.crypto.provider.Cipher.RSA.TestRSA", 315 pattern: ".*TestRSA.java\\:171\\).*NullPointerException.*" 316}, 317{ 318 description: "These NPEs all happen while calling Provider#getName on the result of 319 Security#getProvider(). Unfortunately, that method is permitted to return 320 null if the system has no provider with the requested name. And since we don't 321 have the SunJCE provider, tests fail", 322 result: EXEC_FAILED, 323 name: "com.sun.crypto.provider.Mac.HmacSaltLengths", 324 pattern: ".*HmacSaltLengths.java\\:83\\).*java.lang.NullPointerException.*" 325}, 326{ 327 description: "These NPEs all happen while calling Provider#getName on the result of 328 Security#getProvider(). Unfortunately, that method is permitted to return 329 null if the system has no provider with the requested name. And since we don't 330 have the SunJCE provider, tests fail", 331 result: EXEC_FAILED, 332 name: "com.sun.crypto.provider.Mac.MacKAT", 333 pattern: ".*MacKAT.java\\:228\\).*java.lang.NullPointerException.*" 334}, 335{ 336 description: "These tests call into misc Sun classes that we don't have", 337 result: COMPILE_FAILED, 338 name: "com.sun.crypto.provider.KeyAgreement.DHKeyAgreement2", 339 pattern: ".*cannot find symbol.*sun.misc.HexDumpEncoder.*" 340}, 341{ 342 description: "These tests call into misc Sun classes that we don't have", 343 result: COMPILE_FAILED, 344 name: "com.sun.crypto.provider.Cipher.KeyWrap.XMLEncKAT", 345 pattern: ".*cannot find symbol.*sun.misc.BASE64Decoder.*" 346}, 347{ 348 description: "These tests call into misc Sun classes that we don't have", 349 result: COMPILE_FAILED, 350 names: [ 351 "com.sun.crypto.provider.TLS.TestKeyMaterial", 352 "com.sun.crypto.provider.TLS.TestMasterSecret", 353 "com.sun.crypto.provider.TLS.TestPremaster", 354 "com.sun.crypto.provider.TLS.TestPRF" 355 ], 356 substring: "package sun.security.internal.spec does not exist" 357}, 358{ 359 description: "We don't have most com.sun packages.", 360 result: COMPILE_FAILED, 361 failure: "Dalvik doesn't include Sun packages", 362 pattern: ".*package (com\\.)?sun\\.[\\w\\.]+ does not exist.*" 363}, 364{ 365 description: "We don't have several Java packages either.", 366 result: COMPILE_FAILED, 367 failure: "Dalvik doesn't include applets", 368 substring: "package java.applet does not exist" 369}, 370{ 371 description: "We don't have several Java packages either.", 372 result: COMPILE_FAILED, 373 failure: "Dalvik doesn't include AWT (bug it has java.awt.font)", 374 pattern: ".*package java.awt(\\.image)? does not exist.*" 375}, 376{ 377 description: "We don't have several Java packages either.", 378 result: "COMPILE_FAILED", 379 failure: "Dalvik doesn't include NIO.2", 380 substring: "package java.nio.file does not exist" 381}, 382{ 383 description: "We don't have several Java packages either.", 384 result: "COMPILE_FAILED", 385 failure: "Dalvik doesn't include RMI", 386 substring: "package java.rmi does not exist" 387}, 388{ 389 description: "We don't have several Java packages either.", 390 result: "COMPILE_FAILED", 391 failure: "Dalvik doesn't include JNDI", 392 substring: "package javax.naming does not exist" 393}, 394{ 395 description: "We don't have several Java packages either.", 396 result: "COMPILE_FAILED", 397 failure: "Dalvik doesn't include JMX", 398 substring: "package java.lang.management does not exist" 399}, 400{ 401 description: "We don't have several Java packages either.", 402 result: "COMPILE_FAILED", 403 failure: "Dalvik doesn't include Swing", 404 substring: "package javax.swing.tree does not exist" 405}, 406{ 407 description: "We don't have several Java packages either.", 408 result: "COMPILE_FAILED", 409 failure: "Dalvik doesn't include javax.crypto", 410 substring: "package javax.xml.crypto does not exist" 411}, 412{ 413 description: "Dalvik doesn't include a com.sun.net HTTP server", 414 result: UNSUPPORTED, 415 names: [ 416 "com.sun.net.httpserver", 417 "sun.net.www" 418 ] 419}, 420{ 421 description: "Dalvik doesn't include AWT except the font package", 422 result: UNSUPPORTED, 423 name: "java.awt" 424}, 425{ 426 description: "Dalvik doesn't include AWT except the font package", 427 result: "SUCCESS", 428 names: [ 429 "java.awt.FontClass", 430 "java.awt.font" 431 ] 432}, 433{ 434 description: "Dalvik doesn't include java.beans except for property listeners", 435 result: UNSUPPORTED, 436 name: "java.beans" 437}, 438{ 439 description: "Dalvik doesn't include java.beans except for property listeners", 440 result: "SUCCESS", 441 name: "java.beans.PropertyChangeSupport" 442}, 443{ 444 description: "Dalvik doesn't include java.lang.instrument", 445 result: UNSUPPORTED, 446 name: "java.lang.instrument" 447}, 448{ 449 description: "Dalvik doesn't include java.lang.management", 450 result: UNSUPPORTED, 451 name: "java.lang.management" 452}, 453{ 454 description: "Dalvik doesn't include RMI", 455 result: UNSUPPORTED, 456 names: [ 457 "java.rmi", 458 "sun.rmi" 459 ] 460}, 461{ 462 description: "Dalvik doesn't include javax.imageio", 463 result: UNSUPPORTED, 464 name: "javax.imageio" 465}, 466{ 467 description: "Dalvik doesn't include javax.management", 468 result: UNSUPPORTED, 469 name: "javax.management" 470}, 471{ 472 description: "Dalvik doesn't include javax.naming", 473 result: UNSUPPORTED, 474 name: "javax.naming" 475}, 476{ 477 description: "Dalvik doesn't include javax.print", 478 result: UNSUPPORTED, 479 name: "javax.print" 480}, 481{ 482 description: "Dalvik doesn't include javax.script", 483 result: UNSUPPORTED, 484 name: "javax.script" 485}, 486{ 487 description: "Dalvik doesn't include javax.sound", 488 result: UNSUPPORTED, 489 name: "javax.sound" 490}, 491{ 492 description: "Dalvik doesn't include javax.swing", 493 result: UNSUPPORTED, 494 name: "javax.swing" 495}, 496{ 497 description: "Dalvik doesn't include sun.management", 498 result: UNSUPPORTED, 499 name: "sun.management" 500}, 501{ 502 description: "Dalvik doesn't include javax.smartcardio", 503 result: UNSUPPORTED, 504 name: "sun.security.smartcardio" 505}, 506{ 507 description: "Our exception messages don't match the RIs", 508 result: EXEC_FAILED, 509 names: [ 510 "java.lang.StringBuilder.Exceptions", 511 "java.lang.StringBuffer.Exceptions" 512 ], 513 substring: "got java.lang.StringIndexOutOfBoundsException: null - FAILED" 514}, 515{ 516 description: "ICU doesn't like 3-letter names like CST because they're ambiguous. 517 Harmony prefers them because they're more human readable. We'll be 518 consistent with ICU, since that seems least fragile. 519 See https://issues.apache.org/jira/browse/HARMONY-5468 520 and http://bugs.icu-project.org/trac/ticket/6174", 521 result: EXEC_FAILED, 522 name: "org.apache.harmony.luni.tests.java.util.DateTest#test_toString", 523 substring: "GMT-07:00" 524}, 525{ 526 description: "These harmony tests are broken. The RI doesn't ship with es__TRADITIONAL, so 527 they have incorrect expectations. 528 http://b/2608750", 529 result: EXEC_FAILED, 530 names: [ 531 "org.apache.harmony.text.tests.java.text.RuleBasedCollatorTest#testGetCollationElementIteratorCharacterIterator", 532 "org.apache.harmony.text.tests.java.text.RuleBasedCollatorTest#testGetCollationElementIteratorString" 533 ], 534 substring: "expected:<1> but was:<2>" 535}, 536{ 537 description: "This test fails because on Android, RuleBasedCollators default to 538 CANONICAL_DECOMPOSITION, not NO_DECOMPOSITION.", 539 result: EXEC_FAILED, 540 name: "org.apache.harmony.text.tests.java.text.RuleBasedCollatorTest#testEqualsObject", 541 substring: "expected:<0> but was:<1>" 542}, 543{ 544 description: "These Harmony tests are enforcing a buggy behaviour in TreeMap, presumably to be bug-compatible 545 with the RI. Our implementation is more conservative and throws on the bogus inputs.", 546 result: EXEC_FAILED, 547 name: "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_AscendingSubMapKeySet_headSet", 548 substring: "java.lang.IllegalArgumentException: 100 not in range (100..109]" 549}, 550{ 551 description: "These Harmony tests are enforcing a buggy behaviour in TreeMap, presumably to be bug-compatible 552 with the RI. Our implementation is more conservative and throws on the bogus inputs.", 553 result: EXEC_FAILED, 554 names: [ 555 "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_AscendingSubMapKeySet_tailSet", 556 "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_DescendingSubMapKeySet_headSet" 557 ], 558 substring: "java.lang.IllegalArgumentException: null not in range [100..109)" 559}, 560{ 561 description: "These Harmony tests are enforcing a buggy behaviour in TreeMap, presumably to be bug-compatible 562 with the RI. Our implementation is more conservative and throws on the bogus inputs.", 563 result: EXEC_FAILED, 564 names: [ 565 "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_DescendingSubMap_tailMap", 566 "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_DescendingSubMapKeySet_tailSet", 567 "org.apache.harmony.luni.tests.java.util.TreeMapExtendTest#test_SubMap_headMap" 568 ], 569 substring: "java.lang.IllegalArgumentException: 100 not in range (100..109]" 570}, 571{ 572 description: "why are they using reflection to test implementation details?", 573 result: EXEC_FAILED, 574 name: "org.apache.harmony.luni.tests.java.util.ArraysTest#test_swap_I_I_$Ljava_lang_Object", 575 substring: "java.lang.NoSuchMethodException" 576}, 577{ 578 description: "all these tests rely on a Harmony bug where TreeMaps may have a singleton null, which we choose 579 to disallow.", 580 result: EXEC_FAILED, 581 name: "org.apache.harmony.luni.tests.java.util.SimpleImmutableEntryTest#test_SimpleImmutableEntry_Constructor_LEntry", 582 pattern: ".*java.lang.NullPointerException.*at java.util.TreeMap.find.*" 583}, 584{ 585 description: "all these tests rely on a Harmony bug where TreeMaps may have a singleton null, which we choose 586 to disallow.", 587 result: EXEC_FAILED, 588 names: [ 589 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_ceilingEntry", 590 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_ceilingKey", 591 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_floorEntry", 592 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_floorKey", 593 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_higherEntry", 594 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_higherKey", 595 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_lowerEntry", 596 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_lowerKey" 597 ], 598 substring: "java.lang.NullPointerException" 599}, 600{ 601 description: "all these tests rely on a Harmony bug where TreeMaps may have a singleton null, which we choose 602 to disallow.", 603 result: EXEC_FAILED, 604 name: "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_illegalFirstNullKey", 605 pattern: ".*java.lang.NullPointerException.*at java.util.TreeMap.find.*" 606}, 607{ 608 description: "this is testing exception priorities", 609 result: EXEC_FAILED, 610 name: "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_subMapLjava_lang_ObjectLjava_lang_Object", 611 substring: "java.lang.ClassCastException: java.lang.Object" 612}, 613{ 614 description: "the null-friendly comparator isn't symmetric", 615 result: EXEC_FAILED, 616 name: "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_subMapLjava_lang_ObjectZLjava_lang_ObjectZ", 617 substring: "java.lang.NullPointerException" 618}, 619{ 620 description: "we fail fast on not-comparable objects", 621 result: EXEC_FAILED, 622 names: [ 623 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_equals", 624 "org.apache.harmony.luni.tests.java.util.TreeMapTest#test_putLjava_lang_ObjectLjava_lang_Object" 625 ], 626 substring: "java.lang.ClassCastException: java.lang.Object" 627}, 628{ 629 description: "tests that depend on the iteration order of a hash", 630 result: EXEC_FAILED, 631 name: "org.apache.harmony.luni.tests.java.util.CollectionsTest#test_unmodifiable_toString_methods", 632 substring: "expected:<...one=1, two=2...> but was:<...two=2, one=1...>" 633}, 634{ 635 description: "tests that depend on the iteration order of a hash", 636 result: EXEC_FAILED, 637 name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_keySet_subtest1", 638 pattern: ".*java.lang.IllegalStateException.*at java.util.Hashtable.*" 639}, 640{ 641 description: "tests that depend on the iteration order of a hash", 642 result: EXEC_FAILED, 643 name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_elements_subtest0", 644 substring: "junit.framework.AssertionFailedError: unexpected: b" 645}, 646{ 647 description: "tests that depend on the iteration order of a hash", 648 result: EXEC_FAILED, 649 name: "org.apache.harmony.luni.tests.java.util.HashMapTest#test_rehash", 650 substring: "junit.framework.AssertionFailedError: expected same" 651}, 652{ 653 description: "tests that depend on the iteration order of a hash", 654 result: EXEC_FAILED, 655 name: "org.apache.harmony.luni.tests.java.util.PropertiesTest#test_SequentialpropertyNames", 656 substring: "expected:<current.b.key> but was:<current.a.key>" 657}, 658{ 659 description: "tests that depend on the iteration order of a hash", 660 result: EXEC_FAILED, 661 name: "org.apache.harmony.luni.tests.java.util.PropertiesTest#test_SequentialstringPropertyNames", 662 substring: "junit.framework.ComparisonFailure" 663}, 664{ 665 description: "tests that depend on the iteration order of a hash", 666 result: EXEC_FAILED, 667 name: "org.apache.harmony.luni.tests.java.util.PropertiesTest#test_propertyNames_sequence", 668 substring: "junit.framework.AssertionFailedError: expected:<current.b.key> but was:<current.a.key>" 669}, 670{ 671 description: "tests that use secret type information to reason about behavior", 672 result: EXEC_FAILED, 673 name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_keySet", 674 substring: "junit.framework.ComparisonFailure: Not synchronized expected:<...Collections$Synchronized...> but was:<...Hashtable$Key...>" 675}, 676{ 677 description: "tests that use secret type information to reason about behavior", 678 result: EXEC_FAILED, 679 name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_entrySet", 680 substring: "junit.framework.ComparisonFailure: Not synchronized expected:<...Collections$Synchronized...> but was:<...Hashtable$Entry...>" 681}, 682{ 683 description: "tests that use secret type information to reason about behavior", 684 result: EXEC_FAILED, 685 name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_values", 686 substring: "junit.framework.ComparisonFailure: Not synchronized expected:<...Collections$SynchronizedCollection> but was:<...Hashtable$Values>" 687}, 688{ 689 description: "this test is invalid, proxy.equals isn't symmetric", 690 result: EXEC_FAILED, 691 name: "org.apache.harmony.luni.tests.java.util.HashMapTest#test_proxies" 692}, 693{ 694 description: "this test is invalid, the mock map's entry set isn't to spec", 695 result: EXEC_FAILED, 696 name: "org.apache.harmony.luni.tests.java.util.HashMapTest#test_putAllLjava_util_Map", 697 substring: "java.lang.NullPointerException" 698}, 699{ 700 description: "this test assumes remove acts on equals() equality, not comparator equality", 701 result: EXEC_FAILED, 702 name: "org.apache.harmony.luni.tests.java.util.PriorityQueueTest#test_remove_Ljava_lang_Object_using_comparator", 703 substring: "junit.framework.AssertionFailedError" 704}, 705{ 706 description: "tests that violate the API and then guess about the outcomes", 707 result: EXEC_FAILED, 708 name: "org.apache.harmony.luni.tests.java.util.HashtableTest#test_getLjava_lang_Object", 709 substring: "junit.framework.AssertionFailedError" 710}, 711{ 712 description: "this test assumes Integer.toString() always returns a new instance", 713 result: EXEC_FAILED, 714 name: "org.apache.harmony.luni.tests.java.util.IdentityHashMap2Test#test_containsKeyLjava_lang_Object", 715 substring: "junit.framework.AssertionFailedError: Returned true for copy of valid key" 716}, 717{ 718 description: "tests that cast to Harmony-specific types", 719 result: EXEC_FAILED, 720 failure: "bogus cast to harmony Hashtable$KeyEnumeration", 721 substring: "java.util.Hashtable$KeyEnumeration" 722}, 723{ 724 description: "tests that cast to Harmony-specific types", 725 result: EXEC_FAILED, 726 failure: "bogus cast to Hashtable$ValueEnumeration", 727 substring: "java.util.Hashtable$ValueEnumeration" 728}, 729{ 730 description: "test doesn't expect it, but the spec permits the exception. RI also throws here.", 731 result: EXEC_FAILED, 732 names: [ 733 "org.apache.harmony.luni.tests.java.util.PriorityQueueTest#test_remove_Ljava_lang_Object_not_Compatible", 734 "org.apache.harmony.luni.tests.java.util.PriorityQueueTest#test_remove_Ljava_lang_Object_not_exists" 735 ], 736 substring: "java.lang.ClassCastException" 737}, 738{ 739 description: "localization tests where our data disagree", 740 result: EXEC_FAILED, 741 name: "org.apache.harmony.luni.tests.java.util.LocaleTest#test_getAvailableLocales", 742 substring: "Wrong number of locales" 743}, 744{ 745 description: "test that enforce redundant implements clauses", 746 result: EXEC_FAILED, 747 name: "org.apache.harmony.luni.tests.java.util.LinkedHashMapTest#test_getInterfaces", 748 substring: "junit.framework.AssertionFailedError: expected:<3> but was:<2>" 749}, 750{ 751 description: "this is testing exception priorities", 752 result: EXEC_FAILED, 753 name: "org.apache.harmony.nio.tests.java.nio.channels.DatagramChannelTest#testReadByteBuffer_readOnlyBuf", 754 substring: "java.lang.IllegalArgumentException: read-only buffer" 755}, 756{ 757 description: "ICU doesn't provide localized pattern characters, and these tests assume the locale they're using has them.", 758 result: EXEC_FAILED, 759 name: "org.apache.harmony.text.tests.java.text.SimpleDateFormatTest#test_applyLocalizedPatternLjava_lang_String", 760 substring: "java.lang.IllegalArgumentException: Invalid pattern character 'u' in 'GuMtkHmsSEDFwWahKz'" 761}, 762{ 763 description: "ICU doesn't provide localized pattern characters, and these tests assume the locale they're using has them.", 764 result: EXEC_FAILED, 765 name: "org.apache.harmony.text.tests.java.text.SimpleDateFormatTest#test_toLocalizedPattern", 766 substring: "junit.framework.AssertionFailedError: Wrong pattern: GyMdkHmsSEDFwWahKz" 767}, 768{ 769 description: "ICU doesn't provide localized pattern characters, and these tests assume the locale they're using has them.", 770 result: EXEC_FAILED, 771 name: "org.apache.harmony.text.tests.java.text.DateFormatSymbolsTest#test_getLocalPatternChars", 772 substring: "junit.framework.ComparisonFailure: Returned incorrect pattern string expected:<...YeugAZvcLQqV> but was:<...Z>" 773}, 774{ 775 description: "we don't support the CharsetProvider spi, so we don't have \"mockCharset00\".", 776 result: EXEC_FAILED, 777 name: "tests.api.java.nio.charset.CharsetTest#test_availableCharsets", 778 substring: "junit.framework.AssertionFailedError" 779}, 780{ 781 description: "we don't support the CharsetProvider spi, so we don't have \"mockCharset00\".", 782 result: EXEC_FAILED, 783 name: "tests.api.java.nio.charset.CharsetTest#test_forNameLString", 784 substring: "java.nio.charset.UnsupportedCharsetException: mockCharset00" 785}, 786{ 787 description: "the average length of possible UTF-8 sequences is 2 bytes.", 788 result: EXEC_FAILED, 789 name: "tests.api.java.nio.charset.UTFCharsetEncoderTest#testSpecificDefaultValue", 790 substring: "junit.framework.AssertionFailedError: expected:<1.1> but was:<2.0>" 791}, 792{ 793 description: "We don't permit runtime switching of the default charset (and neither does the RI)", 794 result: EXEC_FAILED, 795 name: "org.apache.harmony.nio_char.tests.java.nio.charset.CharsetTest#test_defaultCharset", 796 substring: "expected:<ISO-8859-1> but was:<UTF-8>" 797}, 798{ 799 description: "this test needs external interaction", 800 result: UNSUPPORTED, 801 names: [ 802 "com.sun.tools.attach.Application", 803 "java.io.SystemInAvailable", 804 "sun.jvmstat.testlibrary.Sleeper" 805 ] 806}, 807{ 808 description: "these benchmarks take a long time and don't demonstrate correctness", 809 result: UNSUPPORTED, 810 names: [ 811 "java.lang.Class.TypeCheckMicroBenchmark", 812 "java.nio.Buffer.SwapMicroBenchmark", 813 "java.util.ArrayList.RangeCheckMicroBenchmark", 814 "java.util.ArrayList.IteratorMicroBenchmark" 815 ] 816}, 817{ 818 description: "The RI is still on Unicode 4.0, we're on 5.2, and Harmony is inconsistent 819 between its test for isJavaIdentifierPart(char) and isJavaIdentifierPart(int).", 820 result: EXEC_FAILED, 821 name: "org.apache.harmony.luni.tests.java.lang.CharacterTest#test_isJavaIdentifierPartC" 822}, 823{ 824 description: "We removed this: we don't support Pack200.", 825 result: UNSUPPORTED, 826 name: "org.apache.harmony.archive.tests.java.util.jar.Pack200Test" 827}, 828{ 829 description: "We removed this: we don't cache canonical paths.", 830 result: UNSUPPORTED, 831 name: "org.apache.harmony.luni.tests.java.io.FileCanonPathCacheTest" 832}, 833{ 834 description: "We removed this: we don't throw NotYetImplementedException.", 835 result: UNSUPPORTED, 836 name: "org.apache.harmony.luni.tests.util.NYITest" 837}, 838{ 839 description: "We removed this: we don't support localized exceptions.", 840 result: UNSUPPORTED, 841 name: "org.apache.harmony.luni.tests.internal.nls.MessagesTest" 842}, 843{ 844 description: "These test implementation details we don't share.", 845 result: EXEC_FAILED, 846 names: [ 847 "org.apache.harmony.text.tests.java.text.BreakIteratorTest#test_getInt", 848 "org.apache.harmony.text.tests.java.text.BreakIteratorTest#test_getLong", 849 "org.apache.harmony.text.tests.java.text.BreakIteratorTest#test_getShort" 850 ] 851}, 852{ 853 description: "These format specifiers are documented to not take flags, but the RI accepts and ignores them.", 854 result: EXEC_FAILED, 855 name: "org.apache.harmony.luni.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_LineSeparator", 856 substring: "java.util.IllegalFormatFlagsException: %n doesn't take an argument" 857}, 858{ 859 description: "These format specifiers are documented to not take flags, but the RI accepts and ignores them.", 860 result: EXEC_FAILED, 861 names: [ 862 "org.apache.harmony.luni.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_Percent", 863 "org.apache.harmony.luni.tests.java.util.FormatterTest#test_formatLjava_lang_String$Ljava_lang_Object_Width" 864 ], 865 substring: "java.util.IllegalFormatFlagsException: %% doesn't take an argument" 866}, 867{ 868 description: "These tests expect to be able to load resources from the file system", 869 result: EXEC_FAILED, 870 names: [ 871 "libcore.java.lang.OldClassTest#test_getResourceAsStreamLjava_lang_String", 872 "libcore.java.lang.OldClassTest#test_getResourceAsStream_withSharpChar", 873 "libcore.java.lang.OldClassTest#test_getResourceLjava_lang_String" 874 ] 875}, 876{ 877 description: "Some tests (ExcludedProxyTest) connect to a public webserver to check that the HTTP client works", 878 result: EXEC_FAILED, 879 failure: "connect to the Internet", 880 pattern: ".*java.net.UnknownHostException:.*jcltest.apache.org.*" 881}, 882{ 883 description: "These tests violate visibility rules when trying to unit test internal classes", 884 result: EXEC_FAILED, 885 name: "javax.net.ssl.DefaultSSLSocketFactoryTest", 886 substring: "java.lang.IllegalAccessError: tried to access class javax.net.ssl.DefaultSSLSocketFactory from class javax.net.ssl.DefaultSSLSocketFactoryTest" 887}, 888{ 889 description: "These tests expect to be called with commandline arguments", 890 result: EXEC_FAILED, 891 name: "java.io.FileOutputStream.FileOpenNeg", 892 substring: "java.lang.ArrayIndexOutOfBoundsException" 893}, 894{ 895 description: "", 896 result: EXEC_FAILED, 897 name: "java.io.FileOutputStream.FileOpenPos", 898 substring: "java.lang.ArrayIndexOutOfBoundsException" 899} 900] 901