Disable some `MaybeFailOnceUploadService` assertions when an RPC fails.

If `onNext()` sends a failure, there is little value in trying to assertions in `onComplete()`. Remote tests logs had NPEs and other scary exceptions due to failed assertions in the RPC error case.

Closes #15675.

PiperOrigin-RevId: 457951865
Change-Id: Id41a7b341334fa5ba7eb6a2abc188c85931ba50b
diff --git a/src/test/java/com/google/devtools/build/lib/remote/ByteStreamUploaderTest.java b/src/test/java/com/google/devtools/build/lib/remote/ByteStreamUploaderTest.java
index f67ccc3..96263c0 100644
--- a/src/test/java/com/google/devtools/build/lib/remote/ByteStreamUploaderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/remote/ByteStreamUploaderTest.java
@@ -1564,6 +1564,7 @@
         private HashCode digestHash;
         private byte[] receivedData;
         private long nextOffset;
+        private boolean failed;
 
         @Override
         public void onNext(WriteRequest writeRequest) {
@@ -1584,6 +1585,7 @@
           if (shouldFail) {
             uploadsFailedOnce.add(digestHash);
             response.onError(Status.INTERNAL.asException());
+            failed = true;
             return;
           }
 
@@ -1602,6 +1604,9 @@
 
         @Override
         public void onCompleted() {
+          if (failed) {
+            return;
+          }
           byte[] expectedBlob = blobsByHash.get(digestHash);
           assertThat(receivedData).isEqualTo(expectedBlob);