Browse Source

Fix exception check in RecoveryRequestTrackerTests (#57493)

Currently we check that exceptions are the same in the recovery request
tracker test. This is inconsistent because the future wraps the
exception in a new instance. This commit fixes the test by comparing a
random exception message.

Fixes #57199
Tim Brooks 5 years ago
parent
commit
2b6853f1bf

+ 3 - 3
server/src/test/java/org/elasticsearch/indices/recovery/RecoveryRequestTrackerTests.java

@@ -19,6 +19,7 @@
 
 package org.elasticsearch.indices.recovery;
 
+import org.elasticsearch.ElasticsearchException;
 import org.elasticsearch.action.ActionListener;
 import org.elasticsearch.action.support.PlainActionFuture;
 import org.elasticsearch.common.util.concurrent.ConcurrentCollections;
@@ -47,7 +48,6 @@ public class RecoveryRequestTrackerTests extends ESTestCase {
         super.tearDown();
     }
 
-    @AwaitsFix(bugUrl = "https://github.com/elastic/elasticsearch/issues/57199")
     public void testIdempotencyIsEnforced() {
         Set<Long> seqNosReturned = ConcurrentCollections.newConcurrentSet();
         ConcurrentMap<Long, Set<PlainActionFuture<Void>>> seqToResult = ConcurrentCollections.newConcurrentMap();
@@ -69,7 +69,7 @@ public class RecoveryRequestTrackerTests extends ESTestCase {
                         // Ensure that we only return 1 future per sequence number
                         assertTrue(added);
                         if (rarely()) {
-                            listener.onFailure(new Exception());
+                            listener.onFailure(new ElasticsearchException(randomAlphaOfLength(10)));
                         } else {
                             listener.onResponse(null);
                         }
@@ -104,7 +104,7 @@ public class RecoveryRequestTrackerTests extends ESTestCase {
                         future.actionGet();
                         fail("expected exception");
                     } catch (Exception e) {
-                        assertSame(e, expectedException);
+                        assertEquals(expectedException.getMessage(), e.getMessage());
                     }
                 }
             }