diff --git a/google-cloud-storage/src/main/java/com/google/cloud/storage/StorageOptions.java b/google-cloud-storage/src/main/java/com/google/cloud/storage/StorageOptions.java index a15a90381..f3de842fb 100644 --- a/google-cloud-storage/src/main/java/com/google/cloud/storage/StorageOptions.java +++ b/google-cloud-storage/src/main/java/com/google/cloud/storage/StorageOptions.java @@ -166,7 +166,7 @@ public static StorageOptions getUnauthenticatedInstance() { @SuppressWarnings("unchecked") @Override public Builder toBuilder() { - return new Builder(this).setHost(DEFAULT_HOST); + return new Builder(this); } @Override diff --git a/google-cloud-storage/src/test/java/com/google/cloud/storage/StorageOptionsTest.java b/google-cloud-storage/src/test/java/com/google/cloud/storage/StorageOptionsTest.java index 18ff0343c..5c9c708c1 100644 --- a/google-cloud-storage/src/test/java/com/google/cloud/storage/StorageOptionsTest.java +++ b/google-cloud-storage/src/test/java/com/google/cloud/storage/StorageOptionsTest.java @@ -16,6 +16,8 @@ package com.google.cloud.storage; +import static com.google.common.truth.Truth.assertThat; + import com.google.cloud.TransportOptions; import org.easymock.EasyMock; import org.junit.Assert; @@ -33,4 +35,34 @@ public void testInvalidTransport() { Assert.assertNotNull(ex.getMessage()); } } + + @Test + public void testConfigureHostShouldBeKeptOnToBuilder() { + StorageOptions opts1 = StorageOptions.newBuilder().setHost("custom-host").build(); + StorageOptions opts2 = opts1.toBuilder().build(); + + assertThat(opts2.getHost()).isEqualTo("custom-host"); + } + + @Test + public void testToBuilderShouldSpecifyDefaultIfNotOtherwiseSet() { + StorageOptions opts1 = StorageOptions.newBuilder().build(); + StorageOptions opts2 = opts1.toBuilder().build(); + + assertThat(opts2.getHost()).isEqualTo("https://storage.googleapis.com"); + } + + @Test + public void testNewBuilderSpecifiesCorrectHost() { + StorageOptions opts1 = StorageOptions.newBuilder().build(); + + assertThat(opts1.getHost()).isEqualTo("https://storage.googleapis.com"); + } + + @Test + public void testDefaultInstanceSpecifiesCorrectHost() { + StorageOptions opts1 = StorageOptions.getDefaultInstance(); + + assertThat(opts1.getHost()).isEqualTo("https://storage.googleapis.com"); + } }