Browse Source

Polishing

pull/33720/head
Sam Brannen 1 year ago
parent
commit
4e1756d738
  1. 4
      spring-webflux/src/main/java/org/springframework/web/reactive/result/view/DefaultRenderingBuilder.java
  2. 19
      spring-webflux/src/test/java/org/springframework/web/reactive/result/view/DefaultRenderingBuilderTests.java

4
spring-webflux/src/main/java/org/springframework/web/reactive/result/view/DefaultRenderingBuilder.java

@ -84,8 +84,8 @@ class DefaultRenderingBuilder implements Rendering.RedirectBuilder { @@ -84,8 +84,8 @@ class DefaultRenderingBuilder implements Rendering.RedirectBuilder {
@Override
public DefaultRenderingBuilder status(HttpStatusCode status) {
if (this.view instanceof RedirectView) {
((RedirectView) this.view).setStatusCode(status);
if (this.view instanceof RedirectView redirectView) {
redirectView.setStatusCode(status);
}
else {
this.status = status;

19
spring-webflux/src/test/java/org/springframework/web/reactive/result/view/DefaultRenderingBuilderTests.java

@ -49,16 +49,17 @@ class DefaultRenderingBuilderTests { @@ -49,16 +49,17 @@ class DefaultRenderingBuilderTests {
Rendering rendering = Rendering.redirectTo("abc").build();
Object view = rendering.view();
assertThat(view.getClass()).isEqualTo(RedirectView.class);
assertThat(((RedirectView) view).getUrl()).isEqualTo("abc");
assertThat(((RedirectView) view).isContextRelative()).isTrue();
assertThat(((RedirectView) view).isPropagateQuery()).isFalse();
assertThat(view).isExactlyInstanceOf(RedirectView.class);
RedirectView redirectView = (RedirectView) view;
assertThat(redirectView.getUrl()).isEqualTo("abc");
assertThat(redirectView.isContextRelative()).isTrue();
assertThat(redirectView.isPropagateQuery()).isFalse();
}
@Test
void viewName() {
Rendering rendering = Rendering.view("foo").build();
assertThat(rendering.view()).isEqualTo("foo");
}
@ -114,7 +115,7 @@ class DefaultRenderingBuilderTests { @@ -114,7 +115,7 @@ class DefaultRenderingBuilderTests {
Rendering rendering = Rendering.redirectTo("foo").contextRelative(false).build();
Object view = rendering.view();
assertThat(view.getClass()).isEqualTo(RedirectView.class);
assertThat(view).isExactlyInstanceOf(RedirectView.class);
assertThat(((RedirectView) view).isContextRelative()).isFalse();
}
@ -123,17 +124,17 @@ class DefaultRenderingBuilderTests { @@ -123,17 +124,17 @@ class DefaultRenderingBuilderTests {
Rendering rendering = Rendering.redirectTo("foo").propagateQuery(true).build();
Object view = rendering.view();
assertThat(view.getClass()).isEqualTo(RedirectView.class);
assertThat(view).isExactlyInstanceOf(RedirectView.class);
assertThat(((RedirectView) view).isPropagateQuery()).isTrue();
}
@Test // gh-33498
@Test // gh-33498
void redirectWithCustomStatus() {
HttpStatus status = HttpStatus.MOVED_PERMANENTLY;
Rendering rendering = Rendering.redirectTo("foo").status(status).build();
Object view = rendering.view();
assertThat(view.getClass()).isEqualTo(RedirectView.class);
assertThat(view).isExactlyInstanceOf(RedirectView.class);
assertThat(((RedirectView) view).getStatusCode()).isEqualTo(status);
}

Loading…
Cancel
Save