I have a GET API which accepts different parameters in controller class. According to the boolean parameter, the API should return a different result. How can I write JUnit test cases for the same?
@CrossOrigin
@RequestMapping(value = "/api/brand/multi-get", method = RequestMethod.GET, consumes =
        MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces =
        MediaType.APPLICATION_JSON_VALUE)
public ResponseDTO listBrands(@RequestParam(required = false) Integer start,
                              @RequestParam(required = false) Integer limit,
                              @RequestParam(required = false) Boolean show_rejected) {
    ResponseDTO responseDTO = new ResponseDTO();
    System.out.println("------------------");
    try {
        if (start == null) {
            start = 0;
        }
        if (limit == null) {
            limit = 50;
        } else if (1 <= limit && limit <= 250) {
            if (show_rejected) {
                List<Brand> brands = brandService.findAllBrands(start, limit);
                if (brands != null && !brands.isEmpty()) {
                    responseDTO.setData(brands);
                    responseDTO.setCode(ErrorCode.error_0);
                    responseDTO.setMessage("Brand list");
                    return responseDTO;
                } else {
                    responseDTO.setData(new ArrayList<>());
                    responseDTO.setCode(ErrorCode.error_0);
                    responseDTO.setMessage("Brand list");
                    return responseDTO;
                }
            } else {
                Page<Brand> brands = brandService.findAllActiveBrands(start, limit);
                if (brands != null && !brands.isEmpty()) {
                    responseDTO.setData(brands);
                    responseDTO.setCode(ErrorCode.error_0);
                    responseDTO.setMessage("Brand list");
                    return responseDTO;
                } else {
                    responseDTO.setData(new ArrayList<>());
                    responseDTO.setCode(ErrorCode.error_0);
                    responseDTO.setMessage("Brand list");
                    return responseDTO;
                }
            }
        } else {
            responseDTO.setCode(ErrorCode.error_1104);
            responseDTO.setMessage(ErrorCode.error_msg1104);
            return responseDTO;
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return responseDTO;
}
 
     
     
     
    