Ignore failures on O devices in some network-related libcore tests.

These tests fail with the following assertion when run with an
unbundled ART (built from AOSP) on devices running Android O (MR1):

  android.system.ErrnoException: connect failed: EBADMSG (Not a data message)

This is a workaround to stop bot spam while we investigate the root of
the issue.

Test: art/tools/run-libcore-tests.sh --mode=device
Bug: 74725685
Change-Id: Ia7129eca795f4b1b01e50820f952bc5f36726d9a
diff --git a/tools/libcore_network_failures.txt b/tools/libcore_network_failures.txt
new file mode 100644
index 0000000..e7e31db
--- /dev/null
+++ b/tools/libcore_network_failures.txt
@@ -0,0 +1,92 @@
+/*
+ * This file contains extra expectations for ART's buildbot regarding network tests.
+ * The script that uses this file is art/tools/run-libcore-tests.sh.
+ */
+
+[
+{
+  description: "Ignore failure of network-related tests on new devices running Android O",
+  result: EXEC_FAILED,
+  bug: 74725685,
+  modes: [device],
+  names: ["libcore.libcore.io.OsTest#test_byteBufferPositions_sendto_recvfrom_af_inet",
+          "libcore.libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithFtpURLConnection",
+          "libcore.libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithHttpURLConnection",
+          "libcore.libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithJarFtpURLConnection",
+          "libcore.libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithJarHttpURLConnection",
+          "libcore.libcore.net.NetworkSecurityPolicyTest#testCleartextTrafficPolicyWithLoggingSocketHandler",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_40555",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_io_File",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_io_FileLjava_lang_String",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_io_InputStream",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_io_InputStreamLjava_lang_String",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_lang_Readable",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_lang_String",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_nio_channels_ReadableByteChannel",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_nio_channels_ReadableByteChannelLjava_lang_String",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_nio_file_Path",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_nio_file_PathLjava_lang_String",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_nio_file_PathLjava_lang_String_Exception",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ConstructorLjava_nio_file_Path_Exception",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_close",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_delimiter",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_findInLine_LPattern",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_findInLine_LString",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_findInLine_LString_NPEs",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_findWithinHorizon_LPatternI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNext",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextBigDecimal",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextBigInteger",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextBigIntegerI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextBigIntegerI_cache",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextBoolean",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextByte",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextByteI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextByteI_cache",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextDouble",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextFloat",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextInt",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextIntI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextIntI_cache",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLPattern",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLString",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLine",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLine_sequence",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLong",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLongI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextLongI_cache",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextShort",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextShortI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_hasNextShortI_cache",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_ioException",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_locale",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_match",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_next",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextBigDecimal",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextBigInteger",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextBigIntegerI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextBoolean",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextByte",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextByteI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextDouble",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextFloat",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextInt",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextIntI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextLPattern",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextLString",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextLine",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextLong",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextLongI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextShort",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_nextShortI",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_radix",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_remove",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_skip_LPattern",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_skip_LString",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_toString",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_useDelimiter_LPattern",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_useDelimiter_String",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_useLocale_LLocale",
+          "org.apache.harmony.tests.java.util.ScannerTest#test_useRadix_I"]
+}
+]
diff --git a/tools/run-libcore-tests.sh b/tools/run-libcore-tests.sh
index 2b7c624..7f0383d 100755
--- a/tools/run-libcore-tests.sh
+++ b/tools/run-libcore-tests.sh
@@ -161,6 +161,16 @@
   fi
 fi
 
+# Disable network-related libcore tests that are failing on the following
+# devices running Android O, as a workaround for b/74725685:
+# - FA7BN1A04406 (walleye device testing configuration aosp-poison/volantis-armv7-poison-debug)
+# - FA7BN1A04412 (walleye device testing configuration aosp-poison/volantis-armv8-poison-ndebug)
+# - FA7BN1A04433 (walleye device testing configuration aosp-poison/volantis-armv8-poison-debug)
+case "$ANDROID_SERIAL" in
+  (FA7BN1A04406|FA7BN1A04412|FA7BN1A04433)
+    expectations="$expectations --expectations art/tools/libcore_network_failures.txt";;
+esac
+
 # Run the tests using vogar.
 echo "Running tests for the following test packages:"
 echo ${working_packages[@]} | tr " " "\n"