/** * Get the result of an Object path expression as a list. * * @param path The Object path. * @param <T> The list type * @return The object matching the Object path. A {@link java.lang.ClassCastException} will be thrown if the object * cannot be casted to the expected type. */ public <T> List<T> getList(String path) { return get(path); }
/** * Instantiate a new JsonPath instance. * * @param reader The reader containing the Object document */ public static JsonPath from(Reader reader) { return new JsonPath(reader); }
Object object = getJsonObject(path); if (object == null) { return null; } else if (object instanceof List || object instanceof Map) { object = objectToString(object); } else { return ObjectConverter.convertObjectTo(object, objectType); return jsonStringToObject((String) object, objectType);
/** * Configure JsonPath to use a specific Jackson object mapper factory * * @param factory The Jackson object mapper factory instance * @return a new JsonPath instance */ public JsonPath using(Jackson1ObjectMapperFactory factory) { return new JsonPath(this, getJsonPathConfig().jackson1ObjectMapperFactory(factory)); }
protected void verifyHistoricJobLogEntries(String content) { String returnedId = from(content).getString("[0].id"); String returnedTimestamp = from(content).getString("[0].timestamp"); String returnedRemovalTime = from(content).getString("[0].removalTime"); String returnedJobId = from(content).getString("[0].jobId"); String returnedJobDueDate = from(content).getString("[0].jobDueDate"); int returnedJobRetries = from(content).getInt("[0].jobRetries"); long returnedJobPriority = from(content).getLong("[0].jobPriority"); String returnedJobExceptionMessage = from(content).getString("[0].jobExceptionMessage"); String returnedJobDefinitionId = from(content).getString("[0].jobDefinitionId"); String returnedJobDefinitionType = from(content).getString("[0].jobDefinitionType"); String returnedJobDefinitionConfiguration = from(content).getString("[0].jobDefinitionConfiguration"); String returnedActivityId = from(content).getString("[0].activityId"); String returnedExecutionId = from(content).getString("[0].executionId"); String returnedProcessInstanceId = from(content).getString("[0].processInstanceId"); String returnedProcessDefinitionId = from(content).getString("[0].processDefinitionId"); String returnedProcessDefinitionKey = from(content).getString("[0].processDefinitionKey"); String returnedDeploymentId = from(content).getString("[0].deploymentId"); String returnedRootProcessInstanceId = from(content).getString("[0].rootProcessInstanceId"); boolean returnedCreationLog = from(content).getBoolean("[0].creationLog"); boolean returnedFailureLog = from(content).getBoolean("[0].failureLog"); boolean returnedSuccessLog = from(content).getBoolean("[0].successLog"); boolean returnedDeletionLog = from(content).getBoolean("[0].deletionLog");
protected void verifyExampleUserResponse(Response response) { String content = response.asString(); List<String> instances = from(content).getList(""); Assert.assertEquals("There should be one user returned.", 1, instances.size()); Assert.assertNotNull("The returned user should not be null.", instances.get(0)); String returendLastName = from(content).getString("[0].lastName"); String returnedFirstName = from(content).getString("[0].firstName"); String returnedEmail = from(content).getString("[0].email"); Assert.assertEquals(MockProvider.EXAMPLE_USER_FIRST_NAME, returnedFirstName); Assert.assertEquals(MockProvider.EXAMPLE_USER_LAST_NAME, returendLastName); Assert.assertEquals(MockProvider.EXAMPLE_USER_EMAIL, returnedEmail); }
protected void checkProcessInstanceResult(String content, int idx) { //resultType should be set to process definition String resultType = from(content).get("[" + idx + "].resultType"); Assert.assertEquals(MessageCorrelationResultType.ProcessDefinition.name(), resultType); //process instance should be filled and execution should be null Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_INSTANCE_ID, from(content).get("[" + idx + "].processInstance.id")); Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID, from(content).get("[" + idx + "].processInstance.definitionId")); Assert.assertNull(from(content).get("[" + idx + "].execution")); }
private void verifyCmmnDeploymentValues(Deployment mockDeployment, String responseContent) { JsonPath path = from(responseContent); verifyStandardDeploymentValues(mockDeployment, path); Map<String, HashMap<String, Object>> deployedCaseDefinitions = path.getMap(PROPERTY_DEPLOYED_CASE_DEFINITIONS); assertEquals(1, deployedCaseDefinitions.size()); HashMap caseDefinitionDto = deployedCaseDefinitions.get(EXAMPLE_CASE_DEFINITION_ID); assertNotNull(caseDefinitionDto); verifyCmnDeployment(caseDefinitionDto); assertNull(path.get(PROPERTY_DEPLOYED_PROCESS_DEFINITIONS)); assertNull(path.get(PROPERTY_DEPLOYED_DECISION_DEFINITIONS)); assertNull(path.get(PROPERTY_DEPLOYED_DECISION_REQUIREMENTS_DEFINITIONS)); }
private void verifyDeploymentLink(Deployment mockDeployment, String responseContent) { List<Map<String, String>> returnedLinks = from(responseContent).getList("links"); assertEquals(1, returnedLinks.size()); Map<String, String> returnedLink = returnedLinks.get(0); assertEquals(HttpMethod.GET, returnedLink.get("method")); assertTrue(returnedLink.get("href").endsWith(RESOURCE_URL + "/" + mockDeployment.getId())); assertEquals("self", returnedLink.get("rel")); }
List<Map<String, String>> jobDefinitions = from(content).getList(""); String returnedId = from(content).getString("[0].id"); String returnedProcessDefinitionId = from(content).getString("[0].processDefinitionId"); String returnedProcessDefinitionKey = from(content).getString("[0].processDefinitionKey"); String returnedActivityId = from(content).getString("[0].activityId"); String returnedJobType = from(content).getString("[0].jobType"); String returnedJobConfiguration = from(content).getString("[0].jobConfiguration"); boolean returnedSuspensionState = from(content).getBoolean("[0].suspended"); Long returnedJobPriority = from(content).getObject("[0].overridingJobPriority", Long.class);
protected void verifyBatchListJson(String batchListJson) { List<Object> batches = from(batchListJson).get(); assertEquals("There should be one batch returned.", 1, batches.size()); BatchDto batch = from(batchListJson).getObject("[0]", BatchDto.class); assertNotNull("The returned batch should not be null.", batch); assertEquals(MockProvider.EXAMPLE_BATCH_ID, batch.getId()); assertEquals(MockProvider.EXAMPLE_BATCH_TYPE, batch.getType()); assertEquals(MockProvider.EXAMPLE_BATCH_TOTAL_JOBS, batch.getTotalJobs()); assertEquals(MockProvider.EXAMPLE_BATCH_JOBS_CREATED, batch.getJobsCreated()); assertEquals(MockProvider.EXAMPLE_BATCH_JOBS_PER_SEED, batch.getBatchJobsPerSeed()); assertEquals(MockProvider.EXAMPLE_INVOCATIONS_PER_BATCH_JOB, batch.getInvocationsPerBatchJob()); assertEquals(MockProvider.EXAMPLE_SEED_JOB_DEFINITION_ID, batch.getSeedJobDefinitionId()); assertEquals(MockProvider.EXAMPLE_MONITOR_JOB_DEFINITION_ID, batch.getMonitorJobDefinitionId()); assertEquals(MockProvider.EXAMPLE_BATCH_JOB_DEFINITION_ID, batch.getBatchJobDefinitionId()); assertEquals(MockProvider.EXAMPLE_TENANT_ID, batch.getTenantId()); assertEquals(MockProvider.EXAMPLE_USER_ID, batch.getCreateUserId()); assertTrue(batch.isSuspended()); }
List<Map<String, String>> filters = from(content).getList(""); String returnedFilterId = from(content).getString("[0].id"); String returnedResourceType = from(content).getString("[0].resourceType"); String returnedName = from(content).getString("[0].name"); String returnedOwner = from(content).getString("[0].owner"); Map<String, Object> returnedQuery = from(content).getJsonObject("[0].query"); Map<String, Object> returnedProperties = from(content).getJsonObject("[0].properties"); returnedFilterId = from(content).getString("[1].id"); returnedResourceType = from(content).getString("[1].resourceType"); returnedName = from(content).getString("[1].name"); returnedOwner = from(content).getString("[1].owner"); returnedQuery = from(content).getJsonObject("[1].query"); returnedProperties = from(content).getJsonObject("[1].properties");
@Test public void testGetFilterWithSingleSorting() { TaskQuery query = new TaskQueryImpl() .orderByTaskName().desc(); Filter filter = new FilterEntity("Task").setName("test").setQuery(query); when(filterServiceMock.getFilter(EXAMPLE_FILTER_ID)).thenReturn(filter); Response response = given() .pathParam("id", EXAMPLE_FILTER_ID) .then().expect() .statusCode(Status.OK.getStatusCode()) .when() .get(SINGLE_FILTER_URL); // validate sorting content String content = response.asString(); List<Map<String, Object>> sortings = from(content).getJsonObject("query.sorting"); assertThat(sortings).hasSize(1); assertSorting(sortings.get(0), SORT_BY_NAME_VALUE, SORT_ORDER_DESC_VALUE); }
@Test public void testIncompleteExecution() { setUpMockExecutionQuery(createIncompleteMockExecutions()); Response response = expect().statusCode(Status.OK.getStatusCode()) .when().get(EXECUTION_QUERY_URL); String content = response.asString(); String returnedProcessInstanceId = from(content).getString("[0].processInstanceId"); Assert.assertNull("Should be null, as it is also null in the original execution on the server.", returnedProcessInstanceId); }
UserOperationLogEntryDto actual = from(json).getObject("[0]", UserOperationLogEntryDto.class); assertEquals(MockProvider.EXAMPLE_USER_OPERATION_LOG_ID, actual.getId()); assertEquals(MockProvider.EXAMPLE_DEPLOYMENT_ID, actual.getDeploymentId()); assertEquals(MockProvider.EXAMPLE_BATCH_ID, actual.getBatchId()); assertEquals(MockProvider.EXAMPLE_USER_ID, actual.getUserId()); assertEquals(MockProvider.EXAMPLE_USER_OPERATION_TIMESTAMP, from(json).getString("[0].timestamp")); assertEquals(MockProvider.EXAMPLE_USER_OPERATION_ID, actual.getOperationId()); assertEquals(MockProvider.EXAMPLE_USER_OPERATION_TYPE, actual.getOperationType());
return getObject(path, typeRef.getTypeAsClass());
List<String> reportResults = from(content).getList(""); Assert.assertEquals("There should be two report results returned.", 2, reportResults.size()); Assert.assertNotNull(reportResults.get(0)); String returnedDefinitionId = from(content).getString("[0].decisionDefinitionId"); String returnedDefinitionKey = from(content).getString("[0].decisionDefinitionKey"); String returnedDefinitionName = from(content).getString("[0].decisionDefinitionName"); int returnedDefinitionVersion = from(content).getInt("[0].decisionDefinitionVersion"); int returnedTTL = from(content).getInt("[0].historyTimeToLive"); long returnedFinishedCount= from(content).getLong("[0].finishedDecisionInstanceCount"); long returnedCleanableCount = from(content).getLong("[0].cleanableDecisionInstanceCount"); String returnedTenantId = from(content).getString("[0].tenantId");
private void verifyTenantIdListParameterResponse(Response response) { String content = response.asString(); List<String> historicDetails = from(content).getList(""); assertThat(historicDetails).hasSize(4); String returnedTenantId1 = from(content).getString("[0].tenantId"); String returnedTenantId2 = from(content).getString("[1].tenantId"); String returnedTenantId3 = from(content).getString("[2].tenantId"); String returnedTenantId4 = from(content).getString("[3].tenantId"); assertThat(returnedTenantId1).isEqualTo(MockProvider.EXAMPLE_TENANT_ID); assertThat(returnedTenantId2).isEqualTo(MockProvider.EXAMPLE_TENANT_ID); assertThat(returnedTenantId3).isEqualTo(MockProvider.ANOTHER_EXAMPLE_TENANT_ID); assertThat(returnedTenantId4).isEqualTo(MockProvider.ANOTHER_EXAMPLE_TENANT_ID); }
protected void checkResult(String content) { Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_INSTANCE_ID, from(content).get("[" + 0 + "].id")); Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID, from(content).get("[" + 0+ "].definitionId")); Assert.assertEquals(MockProvider.ANOTHER_EXAMPLE_PROCESS_INSTANCE_ID, from(content).get("[" + 1 + "].id")); Assert.assertEquals(MockProvider.EXAMPLE_PROCESS_DEFINITION_ID, from(content).get("[" + 1+ "].definitionId")); }