### Question:
ReadHandler extends BaseHandler<CallbackContext> { @Override public ProgressEvent<ResourceModel, CallbackContext> handleRequest( final AmazonWebServicesClientProxy proxy, final ResourceHandlerRequest<ResourceModel> request, final CallbackContext callbackContext, final Logger logger) { this.proxy = proxy; this.client = ClientBuilder.getClient(); final ResourceModel model = describeConfigurationSet(request.getDesiredResourceState().getName()); return ProgressEvent.<ResourceModel, CallbackContext>builder() .resourceModel(model) .status(OperationStatus.SUCCESS) .build(); }  @Override ProgressEvent<ResourceModel, CallbackContext> handleRequest(
        final AmazonWebServicesClientProxy proxy,
        final ResourceHandlerRequest<ResourceModel> request,
        final CallbackContext callbackContext,
        final Logger logger);  }### Answer:
@Test public void handleRequest_SimpleSuccess() { final ReadHandler handler = new ReadHandler(); final ConfigurationSet set = ConfigurationSet.builder().name("test-set").build(); final DescribeConfigurationSetResponse describeResponse = DescribeConfigurationSetResponse.builder() .configurationSet(set) .build(); doReturn(describeResponse) .when(proxy) .injectCredentialsAndInvokeV2( ArgumentMatchers.any(), ArgumentMatchers.any() ); final ResourceModel model = ResourceModel.builder() .name("test-set") .build(); final ResourceHandlerRequest<ResourceModel> request = ResourceHandlerRequest.<ResourceModel>builder() .desiredResourceState(model) .build(); final ProgressEvent<ResourceModel, CallbackContext> response = handler.handleRequest(proxy, request, null, logger); assertThat(response).isNotNull(); assertThat(response.getStatus()).isEqualTo(OperationStatus.SUCCESS); assertThat(response.getCallbackContext()).isNull(); assertThat(response.getCallbackDelaySeconds()).isEqualTo(0); assertThat(response.getResourceModels()).isNull(); assertThatModelsAreEqual(response.getResourceModel(), set); assertThat(response.getMessage()).isNull(); assertThat(response.getErrorCode()).isNull(); }
@Test public void handleRequest_ResourceNotFound() { final ReadHandler handler = new ReadHandler(); doThrow(ConfigurationSetDoesNotExistException.class) .when(proxy) .injectCredentialsAndInvokeV2( ArgumentMatchers.any(), ArgumentMatchers.any() ); final ResourceModel model = ResourceModel.builder() .name("test-set") .build(); final ResourceHandlerRequest<ResourceModel> request = ResourceHandlerRequest.<ResourceModel>builder() .desiredResourceState(model) .build(); assertThrows(CfnNotFoundException.class, () -> { handler.handleRequest(proxy, request, null, logger); }); }