Skip to content

Commit

Permalink
CR: add test
Browse files Browse the repository at this point in the history
  • Loading branch information
original-brownbear committed Dec 28, 2018
1 parent daa9fc7 commit 71bef56
Showing 1 changed file with 35 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.elasticsearch.common.UUIDs;
import org.elasticsearch.common.bytes.BytesArray;
import org.elasticsearch.common.bytes.BytesReference;
import org.elasticsearch.common.lease.Releasable;
import org.elasticsearch.common.lucene.uid.Versions;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.unit.TimeValue;
Expand Down Expand Up @@ -342,6 +343,40 @@ public void testLotsOfThreads() throws Exception {
refresher.cancel();
}

public void testDisallowAddListeners() throws Exception {
assertEquals(0, listeners.pendingCount());
DummyRefreshListener listener = new DummyRefreshListener();
assertFalse(listeners.addOrNotify(index("1").getTranslogLocation(), listener));
engine.refresh("I said so");
assertFalse(listener.forcedRefresh.get());
listener.assertNoError();

try (Releasable releaseable1 = listeners.forceRefreshes()) {
listener = new DummyRefreshListener();
assertTrue(listeners.addOrNotify(index("1").getTranslogLocation(), listener));
assertTrue(listener.forcedRefresh.get());
listener.assertNoError();
assertEquals(0, listeners.pendingCount());

try (Releasable releaseable2 = listeners.forceRefreshes()) {
listener = new DummyRefreshListener();
assertTrue(listeners.addOrNotify(index("1").getTranslogLocation(), listener));
assertTrue(listener.forcedRefresh.get());
listener.assertNoError();
assertEquals(0, listeners.pendingCount());
}

listener = new DummyRefreshListener();
assertTrue(listeners.addOrNotify(index("1").getTranslogLocation(), listener));
assertTrue(listener.forcedRefresh.get());
listener.assertNoError();
assertEquals(0, listeners.pendingCount());
}

assertFalse(listeners.addOrNotify(index("1").getTranslogLocation(), new DummyRefreshListener()));
assertEquals(1, listeners.pendingCount());
}

private Engine.IndexResult index(String id) throws IOException {
return index(id, "test");
}
Expand Down

0 comments on commit 71bef56

Please sign in to comment.