### Question:
RequestPredicate { public RequestPredicate or(final Predicate<ServerRequest> predicate) { return nextCondition((exprVal, req) -> exprVal || predicate.test(req)); } private  RequestPredicate(); private  RequestPredicate(final RequestPredicate first,
            final Condition cond); ConditionalHandler thenApply(final Handler handler); boolean test(final ServerRequest request); RequestPredicate and(final Predicate<ServerRequest> predicate); RequestPredicate or(final Predicate<ServerRequest> predicate); RequestPredicate negate(); RequestPredicate isOfMethod(final String... methods); RequestPredicate isOfMethod(final Method... methods); RequestPredicate containsHeader(final String name); RequestPredicate containsHeader(final String name,
            final String value); RequestPredicate containsHeader(final String name,
            final Predicate<String> predicate); RequestPredicate containsQueryParameter(final String name); RequestPredicate containsQueryParameter(final String name,
            final String value); RequestPredicate containsQueryParameter(final String name,
            final Predicate<String> predicate); RequestPredicate containsCookie(final String name); RequestPredicate containsCookie(final String name,
            final String value); RequestPredicate containsCookie(final String name,
            final Predicate<String> predicate); RequestPredicate accepts(final String... contentType); RequestPredicate accepts(final MediaType... contentType); RequestPredicate hasContentType(final String... contentType); RequestPredicate hasContentType(final MediaType... contentType); static RequestPredicate create();  }### Answer:
@Test public void or(){ final RoutingChecker checker = new RoutingChecker(); Routing routing = Routing.builder() .get("/or", RequestPredicate.create() .hasContentType(MediaType.TEXT_PLAIN) .or((req) -> req.headers().first("my-header").isPresent()) .thenApply((req, resp) -> { checker.handlerInvoked("hasAnyCondition"); }).otherwise((req, res) -> { checker.handlerInvoked("doesNotHaveAnyCondition"); })) .build(); routing.route(mockRequest("/or", Map.of("Content-Type", List.of("text/plain"))), mockResponse()); assertThat(checker.handlersInvoked(), is("hasAnyCondition")); checker.reset(); routing.route(mockRequest("/or", Map.of("my-header", List.of("abc"))), mockResponse()); assertThat(checker.handlersInvoked(), is("hasAnyCondition")); checker.reset(); routing.route(mockRequest("/or", Map.of()), mockResponse()); assertThat(checker.handlersInvoked(), is("doesNotHaveAnyCondition")); }