private static String projectDetails(ProjectInfo project) { return new StringBuilder() .append("{projectId:") .append(project.getProjectId()) .append(", projectNumber:") .append(project.getProjectNumber()) .append(", createTimeMillis:") .append(project.getCreateTimeMillis()) .append(", state:") .append(project.getState()) .append(", labels:") .append(project.getLabels()) .append("}") .toString(); }
private void compareProjectInfos(ProjectInfo expected, ProjectInfo value) { assertEquals(expected.getProjectId(), value.getProjectId()); assertEquals(expected.getName(), value.getName()); assertEquals(expected.getLabels(), value.getLabels()); assertEquals(expected.getProjectNumber(), value.getProjectNumber()); assertEquals(expected.getCreateTimeMillis(), value.getCreateTimeMillis()); assertEquals(expected.getState(), value.getState()); assertEquals(expected.getParent(), value.getParent()); } }
private void compareProjects(ProjectInfo expected, ProjectInfo value) { assertEquals(expected, value); assertEquals(expected.getProjectId(), value.getProjectId()); assertEquals(expected.getName(), value.getName()); assertEquals(expected.getLabels(), value.getLabels()); assertEquals(expected.getProjectNumber(), value.getProjectNumber()); assertEquals(expected.getCreateTimeMillis(), value.getCreateTimeMillis()); assertEquals(expected.getState(), value.getState()); assertEquals(expected.getParent(), value.getParent()); } }
@Test public void testBuilder() { assertEquals(PROJECT_ID, FULL_PROJECT_INFO.getProjectId()); assertEquals(NAME, FULL_PROJECT_INFO.getName()); assertEquals(LABELS, FULL_PROJECT_INFO.getLabels()); assertEquals(PROJECT_NUMBER, FULL_PROJECT_INFO.getProjectNumber()); assertEquals(CREATE_TIME_MILLIS, FULL_PROJECT_INFO.getCreateTimeMillis()); assertEquals(STATE, FULL_PROJECT_INFO.getState()); assertEquals(PROJECT_ID, PARTIAL_PROJECT_INFO.getProjectId()); assertEquals(null, PARTIAL_PROJECT_INFO.getName()); assertTrue(PARTIAL_PROJECT_INFO.getLabels().isEmpty()); assertEquals(null, PARTIAL_PROJECT_INFO.getProjectNumber()); assertEquals(null, PARTIAL_PROJECT_INFO.getCreateTimeMillis()); assertEquals(null, PARTIAL_PROJECT_INFO.getState()); }
@Test public void testReplace() { ProjectInfo createdProject = RESOURCE_MANAGER.create(COMPLETE_PROJECT); Map<String, String> newLabels = ImmutableMap.of("new k1", "new v1"); ProjectInfo anotherCompleteProject = ProjectInfo.newBuilder(COMPLETE_PROJECT.getProjectId()) .setLabels(newLabels) .setProjectNumber(987654321L) .setCreateTimeMillis(230682061315L) .setState(ProjectInfo.State.DELETE_REQUESTED) .setParent(createdProject.getParent()) .build(); Project returnedProject = RESOURCE_MANAGER.replace(anotherCompleteProject); compareReadWriteFields(anotherCompleteProject, returnedProject); assertEquals(createdProject.getProjectNumber(), returnedProject.getProjectNumber()); assertEquals(createdProject.getCreateTimeMillis(), returnedProject.getCreateTimeMillis()); assertEquals(createdProject.getState(), returnedProject.getState()); assertEquals(RESOURCE_MANAGER, returnedProject.getResourceManager()); ProjectInfo nonexistantProject = ProjectInfo.newBuilder("some-project-id-that-does-not-exist").build(); try { RESOURCE_MANAGER.replace(nonexistantProject); fail("Should fail because the project doesn't exist."); } catch (ResourceManagerException e) { assertEquals(403, e.getCode()); assertTrue(e.getMessage().contains("the project was not found")); } }