Skip to content

Commit 7157fce

Browse files
committed
testInlineValidationDoesNotFork
1 parent 0d5059a commit 7157fce

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

modules/transport-netty4/src/test/java/org/elasticsearch/http/netty4/Netty4HttpHeaderValidatorTests.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.elasticsearch.common.ValidationException;
2929
import org.elasticsearch.common.settings.Settings;
3030
import org.elasticsearch.common.util.concurrent.ThreadContext;
31+
import org.elasticsearch.http.netty4.internal.HttpValidator;
3132
import org.elasticsearch.test.ESTestCase;
3233

3334
import java.util.ArrayDeque;
@@ -40,14 +41,17 @@
4041
public class Netty4HttpHeaderValidatorTests extends ESTestCase {
4142
private EmbeddedChannel channel;
4243
private BlockingQueue<ValidationRequest> validatorRequestQueue;
44+
private HttpValidator httpValidator = (httpRequest, channel, listener) -> validatorRequestQueue.add(
45+
new ValidationRequest(httpRequest, channel, listener)
46+
);
4347

4448
@Override
4549
public void setUp() throws Exception {
4650
super.setUp();
4751
validatorRequestQueue = new LinkedBlockingQueue<>();
4852
channel = new EmbeddedChannel(
4953
new Netty4HttpHeaderValidator(
50-
(httpRequest, channel, listener) -> validatorRequestQueue.add(new ValidationRequest(httpRequest, channel, listener)),
54+
(httpRequest, channel, listener) -> httpValidator.validate(httpRequest, channel, listener),
5155
new ThreadContext(Settings.EMPTY)
5256
)
5357
);
@@ -313,5 +317,13 @@ public void testDropChunksOnValidationFailure() {
313317
assertFalse(channel.hasPendingTasks());
314318
}
315319

320+
public void testInlineValidationDoesNotFork() {
321+
httpValidator = (httpRequest, channel, listener) -> listener.onResponse(null);
322+
final var httpRequest = newHttpRequest();
323+
channel.writeInbound(httpRequest);
324+
assertFalse(channel.hasPendingTasks());
325+
assertSame(httpRequest, channel.readInbound());
326+
}
327+
316328
record ValidationRequest(HttpRequest request, Channel channel, ActionListener<Void> listener) {}
317329
}

0 commit comments

Comments
 (0)