/*
 * This file contains expectations for ART's buildbot. The purpose of this file is
 * to temporary and quickly list failing tests and not break the bots, until the
 * libcore expectation files get properly updated. The script that uses this file
 * is art/tools/run-libcore-tests.sh.
 *
 * It is also used to enable AOSP experiments, and not mess up with CTS's expectations.
 */

[
{
  description: "Assert.java differences between vogar and junit.",
  result: EXEC_FAILED,
  modes: [host],
  name: "libcore.java.math.RunCSVTests#test_csv"
},
{
  description: "Differences between vogar and cts in user directory",
  result: EXEC_FAILED,
  modes: [device],
  name: "libcore.java.lang.SystemTest#testSystemProperties_mutable"
},
{
  description: "Differences between vogar and cts. Passes with --mode activity",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.java.lang.OldSystemTest#test_getProperties"]
},
{
  description: "Differences between vogar and cts. EACCESS when run with vogar.
                Passes on host, passes with cts. Passes with vogar with su
                (--invoke-with \"su root\"). Does not pass after setting chmod
                777 all directories on path to socket (on device without su).",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.io.OsTest#testUnixDomainSockets_in_file_system"]
},
{
  description: "TCP_USER_TIMEOUT is not defined on host's tcp.h (glibc-2.15-4.8).",
  result: EXEC_FAILED,
  modes: [host],
  names: ["libcore.android.system.OsConstantsTest#testTcpUserTimeoutIsDefined",
          "libcore.io.OsTest#test_socket_tcpUserTimeout_setAndGet",
          "libcore.io.OsTest#test_socket_tcpUserTimeout_doesNotWorkOnDatagramSocket"],
  bug: 30402085
},
{
  description: "Issue with incorrect device time (1970)",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.java.util.TimeZoneTest#testDisplayNames",
          "libcore.java.util.TimeZoneTest#test_useDaylightTime_Taiwan",
          "org.apache.harmony.tests.java.util.TimeZoneTest#test_hasSameRules_Ljava_util_TimeZone"],
  bug: 20879084
},
{
  description: "Issue with incorrect device time (1970). Test assumes that DateTime.now()
                is greater then a date in 1998.",
  result: EXEC_FAILED,
  modes: [device],
  names: ["org.apache.harmony.tests.java.util.DateTest#test_Constructor"]
},
{
  description: "Failing due to a locale problem on hammerhead.",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.icu.DateIntervalFormatTest#test10089890",
          "libcore.icu.DateIntervalFormatTest#test10209343_when_not_this_year",
          "libcore.icu.DateIntervalFormatTest#test10560853_for_single_day_events",
          "libcore.icu.DateIntervalFormatTest#test10560853_when_time_not_displayed",
          "libcore.icu.RelativeDateTimeFormatterTest#test_getRelativeDateTimeString",
          "libcore.icu.RelativeDateTimeFormatterTest#test_getRelativeTimeSpanString",
          "libcore.icu.RelativeDateTimeFormatterTest#test_getRelativeTimeSpanStringAbbrev",
          "libcore.java.text.OldDateFormatTest#test_parseLString",
          "libcore.java.text.SimpleDateFormatTest#testDstZoneNameWithNonDstTimestamp",
          "libcore.java.text.SimpleDateFormatTest#testDstZoneWithNonDstTimestampForNonHourDstZone",
          "libcore.java.text.SimpleDateFormatTest#testNonDstZoneNameWithDstTimestamp",
          "libcore.java.text.SimpleDateFormatTest#testNonDstZoneWithDstTimestampForNonHourDstZone"]
},
{
  description: "Failing due to missing localhost on hammerhead and volantis.",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.javax.crypto.CipherTest#testCipherInitWithCertificate",
          "libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithFtpURLConnection",
          "libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithJarFtpURLConnection",
          "libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithLoggingSocketHandler",
          "libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithHttpURLConnection",
          "org.apache.harmony.luni.tests.internal.net.www.protocol.http.HttpURLConnectionTest",
          "org.apache.harmony.luni.tests.internal.net.www.protocol.https.HttpsURLConnectionTest",
          "org.apache.harmony.luni.tests.java.net.URLConnectionTest",
          "org.apache.harmony.tests.java.util.ScannerTest#test_Constructor_LReadableByteChannel"
         ]
},
{
  description: "Test timeouts",
  result: EXEC_TIMEOUT,
  modes: [device],
  names: ["org.apache.harmony.tests.java.util.ScannerTest#testPerformance"]
},
{
  description: "Needs the newest cat version on the device",
  result: EXEC_FAILED,
  modes: [device],
  names: ["org.apache.harmony.tests.java.lang.ProcessTest#test_getErrorStream"]
},
{
  description: "Test sometimes timeouts on volantis, and on most modes in debug mode",
  result: EXEC_TIMEOUT,
  names: ["libcore.java.lang.SystemTest#testArrayCopyConcurrentModification"],
  bug: 19165288
},
{
  description: "Needs kernel updates on host/device",
  result: EXEC_FAILED,
  names: ["libcore.io.OsTest#test_socketPing"]
},
{
  description: "Linker issues in chrooted environment",
  modes: [device],
  result: EXEC_FAILED,
  names: ["org.apache.harmony.tests.java.lang.ProcessManagerTest#testEnvironment"]
},
{
  description: "Flake when running with libartd.so or interpreter",
  result: EXEC_FAILED,
  bug:22106064,
  name: "libcore.java.lang.OldThreadGroupTest#test_enumerateLThreadArrayLZtest_enumerateLThreadArrayLZ"
},
{
  description: "test_xattr fails on arm64 on the buildbots only: needs investigation",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.io.OsTest#test_xattr"],
  bug: 22258911
},
{
  description: "fails on L builds: needs investigation",
  result: EXEC_FAILED,
  modes: [device],
  names: ["org.apache.harmony.tests.java.lang.ClassTest#test_forNameLjava_lang_String"]
},
{
  description: "Lack of IPv6 on some buildbot slaves",
  result: EXEC_FAILED,
  names: ["libcore.io.OsTest#test_byteBufferPositions_sendto_recvfrom_af_inet6",
          "libcore.io.OsTest#test_sendtoSocketAddress_af_inet6",
          "libcore.io.OsTest#test_recvfrom_EmptyPacket"],
  bug: 25178637
},
{
  description: "Non-deterministic test because of a dependency on weak ref collection.",
  result: EXEC_FAILED,
  names: ["org.apache.harmony.tests.java.util.WeakHashMapTest#test_keySet"],
  bug: 25437292
},
{
  description: "Missing resource in classpath",
  result: EXEC_FAILED,
  modes: [device],
  names: ["libcore.java.util.prefs.OldAbstractPreferencesTest#testClear",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testExportNode",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testExportSubtree",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGet",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGetBoolean",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGetByteArray",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGetDouble",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGetFloat",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGetInt",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testGetLong",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testKeys",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testNodeExists",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPut",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPutBoolean",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPutByteArray",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPutDouble",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPutFloat",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPutInt",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testPutLong",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testRemove",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testRemoveNode",
          "libcore.java.util.prefs.OldAbstractPreferencesTest#testSync",
          "libcore.java.util.prefs.PreferencesTest#testHtmlEncoding",
          "libcore.java.util.prefs.PreferencesTest#testPreferencesClobbersExistingFiles",
          "org.apache.harmony.tests.java.util.PropertiesTest#test_storeToXMLLjava_io_OutputStreamLjava_lang_StringLjava_lang_String",
          "org.apache.harmony.tests.java.util.prefs.AbstractPreferencesTest#testExportNode",
          "org.apache.harmony.tests.java.util.prefs.AbstractPreferencesTest#testExportSubtree",
          "org.apache.harmony.tests.java.util.prefs.AbstractPreferencesTest#testFlush",
          "org.apache.harmony.tests.java.util.prefs.AbstractPreferencesTest#testSync",
          "org.apache.harmony.tests.java.util.prefs.FilePreferencesImplTest#testPutGet"]
},
{
  description: "Only work with --mode=activity",
  result: EXEC_FAILED,
  names: [ "libcore.java.io.FileTest#testJavaIoTmpdirMutable" ]
},
{
  description: "Flaky test",
  result: EXEC_FAILED,
  bug: 30107038,
  modes: [device],
  names: ["org.apache.harmony.tests.java.lang.ProcessTest#test_destroyForcibly"]
},
{
  description: "Flaky failure, native crash in the runtime.
                Unclear if this relates to the tests running sh as a child process.",
  result: EXEC_FAILED,
  bug: 30657148,
  modes: [device],
  names: ["libcore.java.lang.ProcessBuilderTest#testRedirectInherit",
          "libcore.java.lang.ProcessBuilderTest#testRedirect_nullStreams"]
}
]
