### Question:
PropertyEditorControllerAdvice { @InitBinder void initBinder(WebDataBinder dataBinder) { registerCustomEditor(dataBinder, BookingStatus.class); registerCustomEditor(dataBinder, PaymentService.class); registerCustomEditor(dataBinder, PaymentProduct.class); } PropertyEditorControllerAdvice(ConversionService conversionService);   }### Answer:
@Test void setAsText_bookingStatus() throws Exception { when(accountInformationService.getTransactionList(anyString(), any(RequestHeaders.class), paramsCaptor.capture())) .thenThrow(new NotAcceptableException("error message")); mockMvc.perform(get("/v1/accounts/1/transactions") .accept(APPLICATION_JSON_VALUE) .param("bookingStatus", "booked")) .andExpect(status().isNotAcceptable()); verify(propertyEditorControllerAdvice, atLeastOnce()).initBinder(any()); RequestParams actualParams = paramsCaptor.getValue(); assertNotNull(actualParams); assertEquals(BookingStatus.BOOKED.toString(), actualParams.bookingStatus()); }