@Test public void testURI_17_EntitySimpleTypeDollarValue() throws Exception { // create test set FitTestSet testSet = FitTestSet.create(UriType.URI17, "/Employees('1')/Age/$value") .expectedStatusCode(200) .expectedContentType("text/plain; charset=utf-8") .init(); // every combination of $format and $value is a 'BAD REQUEST' testSet.setTestParam( Arrays.asList("?$format=json", "?$format=xml", "?$format=atom"), ACCEPT_HEADER_VALUES, 400, "application/xml"); // final List<String> jsonAcceptHeaders = Arrays.asList("application/json", "application/json; charset=utf-8"); // TODO: check which behavior is currently wanted testSet.setTestParam( Arrays.asList("?$format=json", "?$format=xml", "?$format=atom"), jsonAcceptHeaders, 400, "application/json"); testSet.execute(getEndpoint()); }
@Test public void testURI_6A_EntityNavigationProperty() throws Exception { // create test set FitTestSet testSet = FitTestSet.create(UriType.URI6A, "/Employees('1')/ne_Room").init(); // set specific response 'Content-Type's for '$format' testSet.setTestParam( Arrays.asList("?$format=xml"), ACCEPT_HEADER_VALUES, 200, "application/xml; charset=utf-8"); testSet.setTestParam( Arrays.asList("?$format=atom"), ACCEPT_HEADER_VALUES, 200, "application/atom+xml; type=entry; charset=utf-8"); testSet.setTestParam( Arrays.asList(""), Arrays.asList("", "application/atom+xml", "application/atom+xml; charset=utf-8"), 200, "application/atom+xml; type=entry; charset=utf-8"); // set all 'NOT ACCEPTED' requests final List<String> notAcceptedHeaderValues = Arrays.asList( "text/plain", "text/plain; charset=utf-8", "application/atomsvc+xml", "application/atomsvc+xml; charset=utf-8"); testSet.setTestParam(Arrays.asList(""), notAcceptedHeaderValues, 406, "application/xml"); // final List<String> notAcceptedJsonHeaderValues = Arrays.asList("application/json", "application/json; charset=utf-8"); // TODO: check which behavior is currently wanted testSet.setTestParam( Arrays.asList("?$format=json"), ACCEPT_HEADER_VALUES, 406, "application/xml"); testSet.setTestParam( Arrays.asList("", "?$format=json"), notAcceptedJsonHeaderValues, 406, "application/json"); // execute all defined tests testSet.execute(getEndpoint()); }
@Test public void testURI_8_Metadata() throws Exception { // create test set FitTestSet testSet = FitTestSet.create(UriType.URI8, "/$metadata").init(); // set specific response 'Content-Type's for '$format' testSet.setTestParam( Arrays.asList(""), Arrays.asList("", "application/xml", "application/xml; charset=utf-8"), 200, "application/xml; charset=utf-8"); // set all 'NOT ACCEPTED' requests final List<String> notAcceptedHeaderValues = Arrays.asList( "text/plain", "text/plain; charset=utf-8", "application/atom+xml", "application/atom+xml; charset=utf-8", "application/atomsvc+xml", "application/atomsvc+xml; charset=utf-8"); testSet.setTestParam(Arrays.asList(""), notAcceptedHeaderValues, 406, "application/xml"); // every combination of $format and $metadata is a 'BAD REQUEST' testSet.setTestParam( Arrays.asList("?$format=json", "?$format=xml", "?$format=atom"), ACCEPT_HEADER_VALUES, 400, "application/xml"); // final List<String> jsonAcceptHeaders = Arrays.asList("application/json", "application/json; charset=utf-8"); // TODO: check which behavior is currently wanted testSet.setTestParam( Arrays.asList("?$format=json", "?$format=xml", "?$format=atom"), jsonAcceptHeaders, 400, "application/json"); testSet.setTestParam(Arrays.asList(""), jsonAcceptHeaders, 406, "application/json"); // execute all defined tests testSet.execute(getEndpoint()); }