aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build
diff options
context:
space:
mode:
authorGravatar brendandouglas <brendandouglas@google.com>2018-06-26 11:48:21 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-26 11:50:36 -0700
commitf166d1c5f4f353db6879a75c0b8424cd6c46cecc (patch)
treef249ed7a53f4b5ff4a614705c1d6067c9f1bea8d /src/test/java/com/google/devtools/build
parent4a2002043ed3907223a403e8b8fc66975e516fd8 (diff)
Debug server debug logs: use EventHandler instead of Logger.
Logger messages aren't printed to the console, they're written to /usr/local/google/tmp, and can be prohibitively large for these debug server logs. Instead I'm going with your original suggestion in https://github.com/bazelbuild/bazel/commit/b74922932b25a71c626b47ea9a9afb7dbc506cec, and selectively suppressing debug events by wrapping the EventHandler on the way in to SkylarkDebugServer. PiperOrigin-RevId: 202166571
Diffstat (limited to 'src/test/java/com/google/devtools/build')
-rw-r--r--src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java18
-rw-r--r--src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java4
2 files changed, 19 insertions, 3 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java
index 89a0405cd4..2dcdf2543e 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/DebugServerTransportTest.java
@@ -16,6 +16,7 @@ package com.google.devtools.build.lib.skylarkdebug.server;
import static com.google.common.truth.Truth.assertThat;
+import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.events.EventKind;
import com.google.devtools.build.lib.events.util.EventCollectionApparatus;
import com.google.devtools.build.lib.skylarkdebugging.SkylarkDebuggingProtos.ContinueExecutionResponse;
@@ -47,6 +48,17 @@ public class DebugServerTransportTest {
private final EventCollectionApparatus events =
new EventCollectionApparatus(EventKind.ALL_EVENTS);
+ /**
+ * The default fail-fast {@link EventHandler} fails on debug-level events, so we instead use a
+ * handler suppressing those events.
+ */
+ private final EventHandler eventHandler =
+ event -> {
+ if (event.getKind() != EventKind.DEBUG) {
+ events.reporter().handle(event);
+ }
+ };
+
/** A simple debug client for testing purposes. */
private static class MockDebugClient {
@@ -87,7 +99,8 @@ public class DebugServerTransportTest {
ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getByName(null));
Future<DebugServerTransport> future =
executor.submit(
- () -> DebugServerTransport.createAndWaitForClient(events.reporter(), serverSocket));
+ () ->
+ DebugServerTransport.createAndWaitForClient(eventHandler, serverSocket));
MockDebugClient client = new MockDebugClient();
client.connect(Duration.ofSeconds(10), serverSocket);
@@ -109,7 +122,8 @@ public class DebugServerTransportTest {
ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getByName(null));
Future<DebugServerTransport> future =
executor.submit(
- () -> DebugServerTransport.createAndWaitForClient(events.reporter(), serverSocket));
+ () ->
+ DebugServerTransport.createAndWaitForClient(eventHandler, serverSocket));
MockDebugClient client = new MockDebugClient();
client.connect(Duration.ofSeconds(10), serverSocket);
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
index d5cfe9bc81..5a7c12273c 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
@@ -79,7 +79,9 @@ public class SkylarkDebugServerTest {
ServerSocket serverSocket = new ServerSocket(0, 1, InetAddress.getByName(null));
Future<SkylarkDebugServer> future =
executor.submit(
- () -> SkylarkDebugServer.createAndWaitForConnection(events.reporter(), serverSocket));
+ () ->
+ SkylarkDebugServer.createAndWaitForConnection(
+ events.reporter(), serverSocket, false));
client = new MockDebugClient();
client.connect(serverSocket, Duration.ofSeconds(10));