@Test public void model() throws Exception { Map<String, Object> map = new LinkedHashMap<>(); map.put("foo", new Foo()); map.put("bar", new Bar()); Rendering rendering = Rendering.view("foo").model(map).build(); assertEquals(map, rendering.modelAttributes()); }
@Test public void modelAttributes() throws Exception { Foo foo = new Foo(); Bar bar = new Bar(); Rendering rendering = Rendering.view("foo").modelAttributes(foo, bar).build(); Map<String, Object> map = new LinkedHashMap<>(2); map.put("foo", foo); map.put("bar", bar); assertEquals(map, rendering.modelAttributes()); }
@Test public void modelAttribute() throws Exception { Foo foo = new Foo(); Rendering rendering = Rendering.view("foo").modelAttribute(foo).build(); assertEquals(Collections.singletonMap("foo", foo), rendering.modelAttributes()); }
model.addAllAttributes(render.modelAttributes()); Object view = render.view(); if (view == null) {
@Test public void defaultValues() { Rendering rendering = Rendering.view("abc").build(); assertEquals("abc", rendering.view()); assertEquals(Collections.emptyMap(), rendering.modelAttributes()); assertNull(rendering.status()); assertEquals(0, rendering.headers().size()); }
@Bean RouterFunction<ServerResponse> routes() { return route(GET("/api/v1/messages"), request -> ok().contentType(request.headers() .accept() .contains(TEXT_EVENT_STREAM) ? TEXT_EVENT_STREAM : APPLICATION_STREAM_JSON) .body(Flux.zip( Flux.interval(Duration.ofSeconds(1)), messages.findAll()) .map(Tuple2::getT2) .share(), Message.class)) .andRoute(POST("/api/v1/messages"), request -> ok().contentType(APPLICATION_JSON) .body(request.bodyToMono(Message.class) .flatMap(messages::save), Message.class)) .andRoute(GET("/"), request -> ok().render("index", Rendering.view("index") .modelAttribute("name", "Max") .build() .modelAttributes()) ); }