* Modified HtmlControllerTest to verify the new behavior
* Fixed the behavior of the HtmlController accordingly
* Added a form to the example-layout
@GetMapping({ "", "/" })
public String fetch(Model model, @RequestParam(required = false) String path)
{
@GetMapping({ "", "/" })
public String fetch(Model model, @RequestParam(required = false) String path)
{
+ model.addAttribute("path", path);
model.addAttribute(
"text",
path == null
model.addAttribute(
"text",
path == null
<div class="card-text">
<pre th:text="${text}">TEXT</pre>
</div>
<div class="card-text">
<pre th:text="${text}">TEXT</pre>
</div>
+ <div class="card-text">
+ <form action="#" th:action="@{/}" method="get">
+ <div class="form-group">
+ <label for="path">Remote-Path to fetch:</label>
+ <input type="text" name="path" value="FOO" th:value="${path}" class="form-control" />
+ </div>
+ <button type="submit" class="btn btn-primary">Submit</button>
+ </form>
+ </div>
assertThat(result).isEqualTo("home");
ArgumentCaptor<Mono<String>> captor = ArgumentCaptor.forClass(Mono.class);
assertThat(result).isEqualTo("home");
ArgumentCaptor<Mono<String>> captor = ArgumentCaptor.forClass(Mono.class);
+ verify(model).addAttribute("path", "foo");
verify(model).addAttribute(eq("text"), captor.capture());
StepVerifier
.create(captor.getValue())
verify(model).addAttribute(eq("text"), captor.capture());
StepVerifier
.create(captor.getValue())
assertThat(result).isEqualTo("home");
ArgumentCaptor<Mono<String>> captor = ArgumentCaptor.forClass(Mono.class);
assertThat(result).isEqualTo("home");
ArgumentCaptor<Mono<String>> captor = ArgumentCaptor.forClass(Mono.class);
+ verify(model).addAttribute("path", "foo");
verify(model).addAttribute(eq("text"), captor.capture());
StepVerifier
.create(captor.getValue())
verify(model).addAttribute(eq("text"), captor.capture());
StepVerifier
.create(captor.getValue())