Coverage Summary for Class: SearchController (io.github.mkuchin.controller)

Class Class, % Method, % Line, %
SearchController 100% (1/ 1) 100% (2/ 2) 100% (3/ 3)


1 package io.github.mkuchin.controller; 2  3 import io.github.mkuchin.model.SearchCommand; 4 import io.github.mkuchin.model.CountListResource; 5 import io.github.mkuchin.service.word.WordCountService; 6 import lombok.RequiredArgsConstructor; 7 import org.springframework.core.convert.ConversionService; 8 import org.springframework.web.bind.annotation.PostMapping; 9 import org.springframework.web.bind.annotation.RequestBody; 10 import org.springframework.web.bind.annotation.RequestMapping; 11 import org.springframework.web.bind.annotation.RestController; 12  13 @RestController 14 @RequestMapping("/search") 15 @RequiredArgsConstructor 16 public class SearchController { 17  18  private final WordCountService wordCountService; 19  private final ConversionService conversionService; 20  21  @PostMapping 22  public CountListResource search(@RequestBody SearchCommand command) { 23  var map = wordCountService.getWordCount(command.getSearchText()); 24  return conversionService.convert(map, CountListResource.class); 25  } 26 }