Skip to content

Commit bf99753

Browse files
committed
---
yaml --- r: 2649 b: refs/heads/update-datastore c: 70b350c h: refs/heads/master i: 2647: 8dff0aa
1 parent 12d81c9 commit bf99753

3 files changed

Lines changed: 24 additions & 4 deletions

File tree

  • branches/update-datastore/gcloud-java-resourcemanager/src

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/gh-pages: 4e0561bb4504bf647db669a14417b2b2c87ba45d
55
refs/heads/bigquery: 762fa5830e6c398c0396177e3e7fd243bd62cfc3
66
refs/heads/pubsub-alpha: 1a0e970f265af871e02274085b9662b3fe29058b
77
refs/heads/resource-manager: ebf4adc5ee835cd2086c4ac5b4e78d01a5a005a7
8-
refs/heads/update-datastore: 2d1a368fd2bb455b7bec909f0cdd4f44a86ad1dc
8+
refs/heads/update-datastore: 70b350cf8eb61a051adfd5cc9b10ffa952225ee6
99
refs/tags/0.0.9: 22f1839238f66c39e67ed4dfdcd273b1ae2e8444
1010
refs/tags/v0.0.10: 207ebd2a3472fddee69fe1298eb90429e3306efd
1111
refs/tags/v0.0.11: ffbfba48a6426ff63c08ff2117e58681f251fbf2

branches/update-datastore/gcloud-java-resourcemanager/src/main/java/com/google/gcloud/resourcemanager/Project.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ public Project(ResourceManager resourceManager, ProjectInfo projectInfo) {
4242
/**
4343
* Constructs a Project object that contains project information loaded from the server.
4444
*
45-
* @return Project object containing the project's metadata
45+
* @return Project object containing the project's metadata or {@code null} if not found
4646
* @throws ResourceManagerException upon failure
4747
*/
4848
public static Project load(ResourceManager resourceManager, String projectId) {
4949
ProjectInfo projectInfo = resourceManager.get(projectId);
50-
return new Project(resourceManager, projectInfo);
50+
return projectInfo != null ? new Project(resourceManager, projectInfo) : null;
5151
}
5252

5353
/**
@@ -67,7 +67,7 @@ public ResourceManager resourceManager() {
6767
/**
6868
* Returns a Project object with updated project information.
6969
*
70-
* @return Project object containing the project's updated metadata
70+
* @return Project object containing the project's updated metadata or {@code null} if not found
7171
* @throws ResourceManagerException upon failure
7272
*/
7373
public Project reload() {

branches/update-datastore/gcloud-java-resourcemanager/src/test/java/com/google/gcloud/resourcemanager/ProjectTest.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
import static org.easymock.EasyMock.replay;
2222
import static org.easymock.EasyMock.verify;
2323
import static org.junit.Assert.assertEquals;
24+
import static org.junit.Assert.assertNotNull;
25+
import static org.junit.Assert.assertNull;
2426
import static org.junit.Assert.assertSame;
2527

2628
import com.google.common.collect.ImmutableMap;
@@ -78,6 +80,24 @@ public void testReload() {
7880
assertEquals(newInfo, newProject.info());
7981
}
8082

83+
@Test
84+
public void testLoadNull() {
85+
expect(resourceManager.get(PROJECT_INFO.projectId())).andReturn(null);
86+
replay(resourceManager);
87+
assertNull(Project.load(resourceManager, PROJECT_INFO.projectId()));
88+
}
89+
90+
@Test
91+
public void testReloadDeletedProject() {
92+
expect(resourceManager.get(PROJECT_INFO.projectId())).andReturn(PROJECT_INFO);
93+
expect(resourceManager.get(PROJECT_INFO.projectId())).andReturn(null);
94+
replay(resourceManager);
95+
Project loadedProject = Project.load(resourceManager, PROJECT_INFO.projectId());
96+
assertNotNull(loadedProject);
97+
Project reloadedProject = loadedProject.reload();
98+
assertNull(reloadedProject);
99+
}
100+
81101
@Test
82102
public void testInfo() {
83103
replay(resourceManager);

0 commit comments

Comments
 (0)