Sync with TestSubscriber changes in reactor-core

This commit is contained in:
Sebastien Deleuze 2016-06-01 17:55:53 +02:00
parent 65246f8cfd
commit 8cf5ea91f8
26 changed files with 217 additions and 217 deletions

View File

@ -56,9 +56,10 @@ public class ByteBufferDecoderTests extends AbstractDataBufferAllocatingTestCase
Flux<ByteBuffer> output = this.decoder.decode(source,
ResolvableType.forClassWithGenerics(Publisher.class, ByteBuffer.class),
null);
TestSubscriber<ByteBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).assertNoError().assertComplete()
.assertValues(ByteBuffer.wrap("foo".getBytes()),
ByteBuffer.wrap("bar".getBytes()));
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues(ByteBuffer.wrap("foo".getBytes()), ByteBuffer.wrap("bar".getBytes()));
}
}

View File

@ -64,8 +64,8 @@ public class ByteBufferEncoderTests extends AbstractDataBufferAllocatingTestCase
Flux<DataBuffer> output = this.encoder.encode(source, this.dataBufferFactory,
ResolvableType.forClassWithGenerics(Publisher.class, ByteBuffer.class),
null);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output)
TestSubscriber
.subscribe(output)
.assertValuesWith(b -> {
byte[] buf = new byte[3];
b.read(buf);

View File

@ -47,8 +47,9 @@ public class JacksonJsonDecoderTests extends AbstractDataBufferAllocatingTestCas
Flux.just(stringBuffer("{\"foo\": \"foofoo\", \"bar\": \"barbar\"}"));
Flux<Object> output =
this.decoder.decode(source, ResolvableType.forClass(Pojo.class), null);
TestSubscriber<Object> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).assertValues(new Pojo("foofoo", "barbar"));
TestSubscriber
.subscribe(output)
.assertValues(new Pojo("foofoo", "barbar"));
}
}

View File

@ -53,11 +53,11 @@ public class JacksonJsonEncoderTests extends AbstractDataBufferAllocatingTestCas
Flux<DataBuffer> output =
this.encoder.encode(source, this.dataBufferFactory, null, null);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertComplete().
assertNoError().
assertValuesWith(stringConsumer("["),
TestSubscriber
.subscribe(output)
.assertComplete()
.assertNoError()
.assertValuesWith(stringConsumer("["),
stringConsumer("{\"foo\":\"foofoo\",\"bar\":\"barbar\"}"),
stringConsumer(","),
stringConsumer("{\"foo\":\"foofoofoo\",\"bar\":\"barbarbar\"}"),

View File

@ -88,11 +88,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase {
.decode(Flux.just(stringBuffer(POJO_ROOT)), null, null);
Flux<List<XMLEvent>> result = this.decoder.split(xmlEvents, new QName("pojo"));
TestSubscriber<List<XMLEvent>> resultSubscriber = new TestSubscriber<>();
resultSubscriber.bindTo(result).
assertNoError().
assertComplete().
assertValuesWith(events -> {
TestSubscriber
.subscribe(result)
.assertNoError()
.assertComplete()
.assertValuesWith(events -> {
assertEquals(8, events.size());
assertStartElement(events.get(0), "pojo");
assertStartElement(events.get(1), "foo");
@ -113,11 +113,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase {
.decode(Flux.just(stringBuffer(POJO_CHILD)), null, null);
Flux<List<XMLEvent>> result = this.decoder.split(xmlEvents, new QName("pojo"));
TestSubscriber<List<XMLEvent>> resultSubscriber = new TestSubscriber<>();
resultSubscriber.bindTo(result).
assertNoError().
assertComplete().
assertValuesWith(events -> {
TestSubscriber
.subscribe(result)
.assertNoError()
.assertComplete()
.assertValuesWith(events -> {
assertEquals(8, events.size());
assertStartElement(events.get(0), "pojo");
assertStartElement(events.get(1), "foo");
@ -161,14 +161,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<Object> output =
this.decoder.decode(source, ResolvableType.forClass(Pojo.class), null);
TestSubscriber<Object> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertNoError().
assertComplete().
assertValues(new Pojo("foofoo", "barbar")
);
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues(new Pojo("foofoo", "barbar"));
}
@Test
@ -177,14 +174,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<Object> output = this.decoder
.decode(source, ResolvableType.forClass(TypePojo.class), null);
TestSubscriber<Object> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertNoError().
assertComplete().
assertValues(new TypePojo("foofoo", "barbar")
);
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues(new TypePojo("foofoo", "barbar"));
}
@Test
@ -193,14 +187,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<Object> output =
this.decoder.decode(source, ResolvableType.forClass(Pojo.class), null);
TestSubscriber<Object> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertNoError().
assertComplete().
assertValues(new Pojo("foo", "bar"), new Pojo("foofoo", "barbar")
);
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues(new Pojo("foo", "bar"), new Pojo("foofoo", "barbar"));
}
@Test
@ -209,14 +200,11 @@ public class Jaxb2DecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<Object> output = this.decoder
.decode(source, ResolvableType.forClass(TypePojo.class), null);
TestSubscriber<Object> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertNoError().
assertComplete().
assertValues(new TypePojo("foo", "bar"), new TypePojo("foofoo", "barbar")
);
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues(new TypePojo("foo", "bar"), new TypePojo("foofoo", "barbar"));
}
@Test

View File

@ -73,8 +73,9 @@ public class Jaxb2EncoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<DataBuffer> output = this.encoder.encode(source, this.dataBufferFactory,
ResolvableType.forClass(Pojo.class),
MediaType.APPLICATION_XML);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).assertValuesWith(dataBuffer -> {
TestSubscriber
.subscribe(output)
.assertValuesWith(dataBuffer -> {
try {
String s = DataBufferTestUtils
.dumpString(dataBuffer, StandardCharsets.UTF_8);

View File

@ -38,8 +38,8 @@ public class JsonObjectDecoderTests extends AbstractDataBufferAllocatingTestCase
Flux.just(stringBuffer("{\"foo\": \"foofoo\", \"bar\": \"barbar\"}"));
Flux<String> output =
decoder.decode(source, null, null).map(JsonObjectDecoderTests::toString);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output)
TestSubscriber
.subscribe(output)
.assertValues("{\"foo\": \"foofoo\", \"bar\": \"barbar\"}");
}
@ -50,8 +50,8 @@ public class JsonObjectDecoderTests extends AbstractDataBufferAllocatingTestCase
stringBuffer(", \"bar\": \"barbar\"}"));
Flux<String> output =
decoder.decode(source, null, null).map(JsonObjectDecoderTests::toString);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output)
TestSubscriber
.subscribe(output)
.assertValues("{\"foo\": \"foofoo\", \"bar\": \"barbar\"}");
}
@ -62,8 +62,8 @@ public class JsonObjectDecoderTests extends AbstractDataBufferAllocatingTestCase
"[{\"foo\": \"foofoo\", \"bar\": \"barbar\"},{\"foo\": \"foofoofoo\", \"bar\": \"barbarbar\"}]"));
Flux<String> output =
decoder.decode(source, null, null).map(JsonObjectDecoderTests::toString);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output)
TestSubscriber
.subscribe(output)
.assertValues("{\"foo\": \"foofoo\", \"bar\": \"barbar\"}",
"{\"foo\": \"foofoofoo\", \"bar\": \"barbarbar\"}");
}
@ -76,8 +76,8 @@ public class JsonObjectDecoderTests extends AbstractDataBufferAllocatingTestCase
": \"barbar\"},{\"foo\": \"foofoofoo\", \"bar\": \"barbarbar\"}]"));
Flux<String> output =
decoder.decode(source, null, null).map(JsonObjectDecoderTests::toString);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output)
TestSubscriber
.subscribe(output)
.assertValues("{\"foo\": \"foofoo\", \"bar\": \"barbar\"}",
"{\"foo\": \"foofoofoo\", \"bar\": \"barbarbar\"}");
}

View File

@ -64,11 +64,11 @@ public class ResourceDecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<Resource> result = this.decoder
.decode(source, ResolvableType.forClass(Resource.class), null);
TestSubscriber<Resource> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(result).
assertNoError().
assertComplete().
assertValuesWith(resource -> {
TestSubscriber
.subscribe(result)
.assertNoError()
.assertComplete()
.assertValuesWith(resource -> {
try {
byte[] bytes =
StreamUtils.copyToByteArray(resource.getInputStream());

View File

@ -66,8 +66,10 @@ public class ResourceEncoderTests extends AbstractDataBufferAllocatingTestCase {
ResolvableType.forClass(Resource.class),
null);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).assertNoError().assertComplete()
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValuesWith(stringConsumer(s));
}

View File

@ -65,11 +65,11 @@ public class StringDecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux.just(stringBuffer("foo"), stringBuffer("bar"), stringBuffer("baz"));
Flux<String> output =
this.decoder.decode(source, ResolvableType.forClass(String.class), null);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertNoError().
assertComplete().
assertValues("foo", "bar", "baz");
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues("foo", "bar", "baz");
}
@Test
@ -79,21 +79,21 @@ public class StringDecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<DataBuffer> source = Flux.just(fooBar, baz);
Flux<String> output =
decoder.decode(source, ResolvableType.forClass(String.class), null);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).
assertNoError().
assertComplete().
assertValues("foo", "bar", "baz");
TestSubscriber
.subscribe(output)
.assertNoError()
.assertComplete()
.assertValues("foo", "bar", "baz");
}
@Test
public void decodeEmpty() throws InterruptedException {
Flux<DataBuffer> source = Flux.just(stringBuffer(""));
Flux<String> output =
this.decoder.decode(source, ResolvableType.forClass(String.class), null);
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).assertValues("");
TestSubscriber
.subscribe(output)
.assertValues("");
}
}

View File

@ -66,8 +66,9 @@ public class StringEncoderTests extends AbstractDataBufferAllocatingTestCase {
DataBufferUtils.release(chunk);
return new String(b, StandardCharsets.UTF_8);
});
TestSubscriber<String> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(output).assertValues("foo");
TestSubscriber
.subscribe(output)
.assertValues("foo");
}
}

View File

@ -46,11 +46,11 @@ public class XmlEventDecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<XMLEvent> events =
this.decoder.decode(Flux.just(stringBuffer(XML)), null, null);
TestSubscriber<XMLEvent> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(events).
assertNoError().
assertComplete().
assertValuesWith(e -> assertTrue(e.isStartDocument()),
TestSubscriber
.subscribe(events)
.assertNoError()
.assertComplete()
.assertValuesWith(e -> assertTrue(e.isStartDocument()),
e -> assertStartElement(e, "pojo"),
e -> assertStartElement(e, "foo"),
e -> assertCharacters(e, "foofoo"),
@ -68,11 +68,11 @@ public class XmlEventDecoderTests extends AbstractDataBufferAllocatingTestCase {
Flux<XMLEvent> events =
this.decoder.decode(Flux.just(stringBuffer(XML)), null, null);
TestSubscriber<XMLEvent> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(events).
assertNoError().
assertComplete().
assertValuesWith(e -> assertTrue(e.isStartDocument()),
TestSubscriber
.subscribe(events)
.assertNoError()
.assertComplete()
.assertValuesWith(e -> assertTrue(e.isStartDocument()),
e -> assertStartElement(e, "pojo"),
e -> assertStartElement(e, "foo"),
e -> assertCharacters(e, "foofoo"),
@ -98,5 +98,4 @@ public class XmlEventDecoderTests extends AbstractDataBufferAllocatingTestCase {
assertEquals(expectedData, event.asCharacters().getData());
}
}

View File

@ -47,11 +47,12 @@ public class DataBufferUtilsTests extends AbstractDataBufferAllocatingTestCase {
Flux<DataBuffer> flux = DataBufferUtils.read(channel, this.dataBufferFactory, 4);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(flux).
assertNoError().
assertComplete().
assertValuesWith(stringConsumer("foo\n"), stringConsumer("bar\n"),
TestSubscriber
.subscribe(flux)
.assertNoError()
.assertComplete()
.assertValuesWith(
stringConsumer("foo\n"), stringConsumer("bar\n"),
stringConsumer("baz\n"), stringConsumer("qux\n"));
assertFalse(channel.isOpen());
@ -65,11 +66,12 @@ public class DataBufferUtilsTests extends AbstractDataBufferAllocatingTestCase {
Flux<DataBuffer> flux = DataBufferUtils.read(channel, this.dataBufferFactory, 3);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(flux).
assertNoError().
assertComplete().
assertValuesWith(stringConsumer("foo"), stringConsumer("\nba"),
TestSubscriber
.subscribe(flux)
.assertNoError()
.assertComplete()
.assertValuesWith(
stringConsumer("foo"), stringConsumer("\nba"),
stringConsumer("r\nb"), stringConsumer("az\n"),
stringConsumer("qux"), stringConsumer("\n"));
@ -83,11 +85,12 @@ public class DataBufferUtilsTests extends AbstractDataBufferAllocatingTestCase {
Flux<DataBuffer> flux = DataBufferUtils.read(is, this.dataBufferFactory, 4);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(flux).
assertNoError().
assertComplete().
assertValuesWith(stringConsumer("foo\n"), stringConsumer("bar\n"),
TestSubscriber
.subscribe(flux)
.assertNoError()
.assertComplete()
.assertValuesWith(
stringConsumer("foo\n"), stringConsumer("bar\n"),
stringConsumer("baz\n"), stringConsumer("qux\n"));
}
@ -100,11 +103,11 @@ public class DataBufferUtilsTests extends AbstractDataBufferAllocatingTestCase {
Flux<DataBuffer> result = DataBufferUtils.takeUntilByteCount(flux, 5L);
TestSubscriber<DataBuffer> testSubscriber = new TestSubscriber<>();
testSubscriber.bindTo(result).
assertNoError().
assertComplete().
assertValuesWith(stringConsumer("foo"), stringConsumer("ba"));
TestSubscriber
.subscribe(result)
.assertNoError()
.assertComplete()
.assertValuesWith(stringConsumer("foo"), stringConsumer("ba"));
release(baz);
}

View File

@ -65,14 +65,14 @@ public class WebClientIntegrationTests {
.perform(get(baseUrl.toString()))
.extract(headers());
TestSubscriber<HttpHeaders> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValuesWith(
httpHeaders -> {
assertEquals(MediaType.TEXT_PLAIN, httpHeaders.getContentType());
assertEquals(13L, httpHeaders.getContentLength());
}
).assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValuesWith(
httpHeaders -> {
assertEquals(MediaType.TEXT_PLAIN, httpHeaders.getContentType());
assertEquals(13L, httpHeaders.getContentLength());
})
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
@ -92,9 +92,10 @@ public class WebClientIntegrationTests {
.extract(body(String.class));
TestSubscriber<String> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValues("Hello Spring!").assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValues("Hello Spring!")
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
@ -114,12 +115,12 @@ public class WebClientIntegrationTests {
.accept(MediaType.TEXT_PLAIN))
.extract(response(String.class));
TestSubscriber<ResponseEntity<String>> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValuesWith((Consumer<ResponseEntity<String>>) response -> {
assertEquals(200, response.getStatusCode().value());
assertEquals(MediaType.TEXT_PLAIN, response.getHeaders().getContentType());
assertEquals("Hello Spring!", response.getBody());
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValuesWith((Consumer<ResponseEntity<String>>) response -> {
assertEquals(200, response.getStatusCode().value());
assertEquals(MediaType.TEXT_PLAIN, response.getHeaders().getContentType());
assertEquals("Hello Spring!", response.getBody());
});
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
@ -140,9 +141,10 @@ public class WebClientIntegrationTests {
.accept(MediaType.APPLICATION_JSON))
.extract(body(String.class));
TestSubscriber<String> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValues(content).assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValues(content)
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
assertEquals("/json", request.getPath());
@ -161,9 +163,10 @@ public class WebClientIntegrationTests {
.accept(MediaType.APPLICATION_JSON))
.extract(body(Pojo.class));
TestSubscriber<Pojo> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValuesWith(p -> assertEquals("barbar", p.getBar())).assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValuesWith(p -> assertEquals("barbar", p.getBar()))
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
assertEquals("/pojo", request.getPath());
@ -182,12 +185,13 @@ public class WebClientIntegrationTests {
.accept(MediaType.APPLICATION_JSON))
.extract(bodyStream(Pojo.class));
TestSubscriber<Pojo> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValuesWith(
p -> assertThat(p.getBar(), Matchers.is("bar1")),
p -> assertThat(p.getBar(), Matchers.is("bar2"))
).assertValueCount(2).assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValuesWith(
p -> assertThat(p.getBar(), Matchers.is("bar1")),
p -> assertThat(p.getBar(), Matchers.is("bar2")))
.assertValueCount(2)
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
assertEquals("/pojos", request.getPath());
@ -206,14 +210,14 @@ public class WebClientIntegrationTests {
.accept(MediaType.APPLICATION_JSON))
.extract(responseStream(Pojo.class));
TestSubscriber<ResponseEntity<Flux<Pojo>>> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValuesWith(
response -> {
assertEquals(200, response.getStatusCode().value());
assertEquals(MediaType.APPLICATION_JSON, response.getHeaders().getContentType());
}
).assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValuesWith(
response -> {
assertEquals(200, response.getStatusCode().value());
assertEquals(MediaType.APPLICATION_JSON, response.getHeaders().getContentType());
})
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
assertEquals("/pojos", request.getPath());
@ -234,9 +238,10 @@ public class WebClientIntegrationTests {
.accept(MediaType.APPLICATION_JSON))
.extract(body(Pojo.class));
TestSubscriber<Pojo> ts = new TestSubscriber<>();
result.subscribe(ts);
ts.awaitAndAssertNextValuesWith(p -> assertEquals("BARBAR", p.getBar())).assertComplete();
TestSubscriber
.subscribe(result)
.awaitAndAssertNextValuesWith(p -> assertEquals("BARBAR", p.getBar()))
.assertComplete();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());
@ -257,11 +262,11 @@ public class WebClientIntegrationTests {
.perform(get(baseUrl.toString()))
.extract(body(String.class));
TestSubscriber<String> ts = new TestSubscriber<>();
result.subscribe(ts);
// TODO: error message should be converted to a ClientException
ts.await().assertError();
TestSubscriber
.subscribe(result)
.await()
.assertError();
RecordedRequest request = server.takeRequest();
assertEquals(1, server.getRequestCount());

View File

@ -38,7 +38,6 @@ import org.springframework.util.AntPathMatcher;
import org.springframework.util.PathMatcher;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.reactive.result.method.AbstractHandlerMethodMapping;
import org.springframework.web.server.ServerWebExchange;
import org.springframework.web.server.adapter.DefaultServerWebExchange;
import org.springframework.web.server.session.WebSessionManager;
@ -103,9 +102,9 @@ public class HandlerMethodMappingTests {
this.mapping.registerMapping("/fo?", this.handler, this.method2);
Mono<Object> result = this.mapping.getHandler(createExchange(HttpMethod.GET, "/foo"));
TestSubscriber<Object> subscriber = new TestSubscriber<>();
result.subscribeWith(subscriber);
subscriber.assertError(IllegalStateException.class);
TestSubscriber
.subscribe(result)
.assertError(IllegalStateException.class);
}
@Test

View File

@ -160,9 +160,9 @@ public class RequestMappingInfoHandlerMappingTests {
this.handlerMapping.registerHandler(new UserController());
Mono<Object> mono = this.handlerMapping.getHandler(exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(NotAcceptableStatusException.class);
TestSubscriber
.subscribe(mono)
.assertError(NotAcceptableStatusException.class);
}
// SPR-8462
@ -357,12 +357,12 @@ public class RequestMappingInfoHandlerMappingTests {
@SuppressWarnings("unchecked")
private <T> void assertError(Mono<Object> mono, final Class<T> exceptionClass, final Consumer<T> consumer) {
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertErrorWith(ex -> {
assertEquals(exceptionClass, ex.getClass());
consumer.accept((T) ex);
});
TestSubscriber
.subscribe(mono)
.assertErrorWith(ex -> {
assertEquals(exceptionClass, ex.getClass());
consumer.accept((T) ex);
});
}
@SuppressWarnings("ConstantConditions")

View File

@ -96,9 +96,9 @@ public abstract class AbstractRequestAttributesArgumentResolverTests {
public void resolve() throws Exception {
MethodParameter param = initMethodParameter(0);
Mono<Object> mono = this.resolver.resolveArgument(param, null, this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerWebInputException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerWebInputException.class);
Foo foo = new Foo();
this.exchange.getAttributes().put("foo", foo);

View File

@ -116,9 +116,9 @@ public class CookieValueMethodArgumentResolverTests {
@Test
public void notFound() {
Mono<Object> mono = resolver.resolveArgument(this.cookieParameter, null, this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerWebInputException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerWebInputException.class);
}

View File

@ -98,9 +98,9 @@ public class PathVariableMethodArgumentResolverTests {
@Test
public void handleMissingValue() throws Exception {
Mono<Object> mono = this.resolver.resolveArgument(this.paramNamedString, new ModelMap(), this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerErrorException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerErrorException.class);
}
@SuppressWarnings("unused")

View File

@ -90,9 +90,9 @@ public class RequestAttributeMethodArgumentResolverTests {
public void resolve() throws Exception {
MethodParameter param = initMethodParameter(0);
Mono<Object> mono = this.resolver.resolveArgument(param, null, this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerWebInputException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerWebInputException.class);
Foo foo = new Foo();
this.exchange.getAttributes().put("foo", foo);

View File

@ -184,9 +184,9 @@ public class RequestHeaderMethodArgumentResolverTests {
@Test
public void notFound() throws Exception {
Mono<Object> mono = resolver.resolveArgument(paramNamedValueStringArray, null, this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerWebInputException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerWebInputException.class);
}
@Test

View File

@ -149,9 +149,9 @@ public class RequestParamMethodArgumentResolverTests {
@Test
public void missingRequestParam() throws Exception {
Mono<Object> mono = this.resolver.resolveArgument(paramNamedStringArray, null, this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerWebInputException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerWebInputException.class);
}
@Test

View File

@ -97,9 +97,9 @@ public class SessionAttributeMethodArgumentResolverTests {
public void resolve() throws Exception {
MethodParameter param = initMethodParameter(0);
Mono<Object> mono = this.resolver.resolveArgument(param, null, this.exchange);
TestSubscriber<Object> subscriber = new TestSubscriber<>();
mono.subscribeWith(subscriber);
subscriber.assertError(ServerWebInputException.class);
TestSubscriber
.subscribe(mono)
.assertError(ServerWebInputException.class);
Foo foo = new Foo();
when(this.session.getAttribute("foo")).thenReturn(Optional.of(foo));

View File

@ -172,7 +172,8 @@ public class HttpMessageConverterViewTests {
this.view.render(result, MediaType.APPLICATION_JSON, exchange);
new TestSubscriber<DataBuffer>().bindTo(response.getBody())
TestSubscriber
.subscribe(response.getBody())
.assertValuesWith(buf -> assertEquals("{\"foo\":\"foo\",\"bar\":\"bar\"}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}

View File

@ -120,7 +120,7 @@ public class ViewResolutionResultHandlerTests {
Object value = new TestView("account");
handle("/path", value, "handleView");
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -130,7 +130,7 @@ public class ViewResolutionResultHandlerTests {
Object value = Mono.just(new TestView("account"));
handle("/path", value, "handleMonoView");
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -140,8 +140,8 @@ public class ViewResolutionResultHandlerTests {
Object value = "account";
handle("/path", value, "handleString", new TestViewResolver("account"));
TestSubscriber<DataBuffer> subscriber = new TestSubscriber<>();
subscriber.bindTo(this.response.getBody())
TestSubscriber
.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -151,7 +151,7 @@ public class ViewResolutionResultHandlerTests {
Object value = Mono.just("account");
handle("/path", value, "handleMonoString", new TestViewResolver("account"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -162,7 +162,7 @@ public class ViewResolutionResultHandlerTests {
handle("/path", value, "handleString",
new TestViewResolver("account"), new TestViewResolver("profile"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("profile: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -178,17 +178,17 @@ public class ViewResolutionResultHandlerTests {
ViewResolver resolver = new TestViewResolver("account");
handle("/account", null, "handleString", resolver);
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
handle("/account/", null, "handleString", resolver);
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
handle("/account.123", null, "handleString", resolver);
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -198,7 +198,7 @@ public class ViewResolutionResultHandlerTests {
Object value = Mono.empty();
handle("/account", value, "handleMonoString", new TestViewResolver("account"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -208,7 +208,7 @@ public class ViewResolutionResultHandlerTests {
Model value = new ExtendedModelMap().addAttribute("name", "Joe");
handle("/account", value, "handleModel", new TestViewResolver("account"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123, name=Joe}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -218,7 +218,7 @@ public class ViewResolutionResultHandlerTests {
Map<String, String> value = Collections.singletonMap("name", "Joe");
handle("/account", value, "handleMap", new TestViewResolver("account"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123, name=Joe}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -228,7 +228,7 @@ public class ViewResolutionResultHandlerTests {
String value = "Joe";
handle("/account", value, "handleModelAttributeAnnotation", new TestViewResolver("account"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123, name=Joe}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -238,7 +238,7 @@ public class ViewResolutionResultHandlerTests {
Object value = new TestBean("Joe");
handle("/account", value, "handleTestBean", new TestViewResolver("account"));
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("account: {id=123, testBean=TestBean[name=Joe]}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -258,7 +258,7 @@ public class ViewResolutionResultHandlerTests {
Collections.singletonList(jsonView));
assertEquals(MediaType.APPLICATION_JSON, this.response.getHeaders().getContentType());
new TestSubscriber<DataBuffer>().bindTo(this.response.getBody())
TestSubscriber.subscribe(this.response.getBody())
.assertValuesWith(buf -> assertEquals("defaultView: {id=123}",
DataBufferTestUtils.dumpString(buf, Charset.forName("UTF-8"))));
}
@ -315,8 +315,7 @@ public class ViewResolutionResultHandlerTests {
Mono<Void> mono = handler.handleResult(exchange, handlerResult);
TestSubscriber<Void> subscriber = new TestSubscriber<>();
return subscriber.bindTo(mono).await(Duration.ofSeconds(1));
return TestSubscriber.subscribe(mono).await(Duration.ofSeconds(1));
}

View File

@ -128,13 +128,13 @@ public class FreeMarkerViewTests {
HandlerResult result = new HandlerResult(new Object(), "", ResolvableType.NONE, model);
view.render(result, null, this.exchange);
TestSubscriber<DataBuffer> subscriber = new TestSubscriber<>();
subscriber.bindTo(this.response.getBody()).assertValuesWith(dataBuffer ->
TestSubscriber
.subscribe(this.response.getBody())
.assertValuesWith(dataBuffer ->
assertEquals("<html><body>hi FreeMarker</body></html>", asString(dataBuffer)));
}
private static String asString(DataBuffer dataBuffer) {
ByteBuffer byteBuffer = dataBuffer.asByteBuffer();
final byte[] bytes = new byte[byteBuffer.remaining()];