From d9e98a6688a1f80c61ae0bca3c8bc05150b505c7 Mon Sep 17 00:00:00 2001 From: Neil Fuller Date: Wed, 4 Jan 2017 10:37:34 +0000 Subject: [PATCH] Add more assertions related to LocalServerSocket.accept() The isConnected() / isBound() behavior is new, the behavior when bind() / connect() is called is not. See related frameworks/base changes. Test: Tests run under vogar. Bug: https://code.google.com/p/android/issues/detail?id=35942 Change-Id: I8577212270f3b3e76ea015914eebddc0fe4a6afa --- .../src/android/net/cts/LocalServerSocketTest.java | 3 +++ .../net/src/android/net/cts/LocalSocketTest.java | 13 +++++++++++++ 2 files changed, 16 insertions(+) diff --git a/tests/cts/net/src/android/net/cts/LocalServerSocketTest.java b/tests/cts/net/src/android/net/cts/LocalServerSocketTest.java index 103d1da2d6..7c5a1b353d 100644 --- a/tests/cts/net/src/android/net/cts/LocalServerSocketTest.java +++ b/tests/cts/net/src/android/net/cts/LocalServerSocketTest.java @@ -38,6 +38,9 @@ public class LocalServerSocketTest extends TestCase { clientSocket.connect(new LocalSocketAddress(address)); LocalSocket serverSocket = localServerSocket.accept(); + assertTrue(serverSocket.isConnected()); + assertTrue(serverSocket.isBound()); + // send data from client to server OutputStream clientOutStream = clientSocket.getOutputStream(); clientOutStream.write(12); diff --git a/tests/cts/net/src/android/net/cts/LocalSocketTest.java b/tests/cts/net/src/android/net/cts/LocalSocketTest.java index 0ff4a3080b..8029eb4d67 100644 --- a/tests/cts/net/src/android/net/cts/LocalSocketTest.java +++ b/tests/cts/net/src/android/net/cts/LocalSocketTest.java @@ -50,7 +50,20 @@ public class LocalSocketTest extends TestCase { assertFalse(clientSocket.isConnected()); clientSocket.connect(locSockAddr); assertTrue(clientSocket.isConnected()); + LocalSocket serverSocket = localServerSocket.accept(); + assertTrue(serverSocket.isConnected()); + assertTrue(serverSocket.isBound()); + try { + serverSocket.bind(localServerSocket.getLocalSocketAddress()); + fail("Cannot bind a LocalSocket from accept()"); + } catch (IOException expected) { + } + try { + serverSocket.connect(locSockAddr); + fail("Cannot connect a LocalSocket from accept()"); + } catch (IOException expected) { + } Credentials credent = clientSocket.getPeerCredentials(); assertTrue(0 != credent.getPid());