@ParameterizedTest
    @EnumSource(TestParam.class)
    void test(TestParam param) throws Exception {
        final Iface client = ThriftClients.newClient(server.httpUri().resolve(param.path), Iface.class);
        assertThatThrownBy(() -> client.hello("foo"))
                .isInstanceOf(TTransportException.class)
                .cause()
                .isInstanceOfSatisfying(InvalidResponseHeadersException.class, cause -> {
                    assertThat(cause.headers().status()).isEqualTo(HttpStatus.CONFLICT);
                });

        final ServiceRequestContext ctx = server.requestContextCaptor().take();
        final RequestLog log = ctx.log().whenComplete().join();
        if (param.name().endsWith("_CAUSE")) {
            assertThat(log.responseCause()).isSameAs(RESPONSE_CAUSE);
        } else {
            assertThat(log.responseCause()).isNull();
        }
    }
Tests if Armeria decorators can alter the request/response timeout specified in Thrift call parameters.
thrift/thrift0.13/src/test/java/com/linecorp/armeria/it/thrift/ThriftHttpErrorResponseTest.java