Skip to content

Commit 9beecc0

Browse files
ajaaymsduskis
authored andcommitted
---
yaml --- r: 19035 b: refs/heads/autosynth-bigquerydatatransfer c: d6b2c21 h: refs/heads/master i: 19033: 8a5e257 19031: 7e6789c
1 parent d24af69 commit 9beecc0

3 files changed

Lines changed: 37 additions & 2 deletions

File tree

  • branches/autosynth-bigquerydatatransfer/google-cloud-clients/google-cloud-spanner/src

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ refs/tags/v0.68.0: 9cc799fcf68c82ab431d425fefa58ef615ce8e5b
123123
refs/tags/v0.69.0: 78f67a29e8b9c46ba01de566a2eae0fd1c03edea
124124
refs/heads/autosynth-asset: cd8251de8c40e239ad24dcf9ed93ea2708a3eed5
125125
refs/heads/autosynth-automl: 2a8b018cf05811fd472e5d1053e67a12ceec0b64
126-
refs/heads/autosynth-bigquerydatatransfer: 64f3b2be23eab15df420e5890f14409fa52c8411
126+
refs/heads/autosynth-bigquerydatatransfer: d6b2c21e731a4307128d79d65daa64893e421a5a
127127
refs/heads/autosynth-bigquerystorage: 14ab055598b943ae3f33f484e9fb1653355d08e7
128128
refs/heads/autosynth-bigtable: 2fbcb15847e0e89e79d6dc07420e28d7dfcea894
129129
refs/heads/autosynth-bigtable-admin: 6379a2bc712f2736c83de0e009b4d26da4fa82ca

branches/autosynth-bigquerydatatransfer/google-cloud-clients/google-cloud-spanner/src/main/java/com/google/cloud/spanner/Key.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,9 @@ ListValue toProto() {
281281
} else if (part instanceof ByteArray) {
282282
builder.addValuesBuilder().setStringValue(((ByteArray) part).toBase64());
283283
} else if (part instanceof Timestamp) {
284-
builder.addValuesBuilder().setStringValue(((Timestamp) part).toString());
284+
builder.addValuesBuilder().setStringValue(part.toString());
285+
} else if (part instanceof Date) {
286+
builder.addValuesBuilder().setStringValue(part.toString());
285287
} else {
286288
throw new AssertionError("Illegal key part: " + part.getClass());
287289
}

branches/autosynth-bigquerydatatransfer/google-cloud-clients/google-cloud-spanner/src/test/java/com/google/cloud/spanner/KeyTest.java

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
import com.google.cloud.Date;
2424
import com.google.cloud.Timestamp;
2525
import com.google.common.testing.EqualsTester;
26+
import com.google.protobuf.ListValue;
27+
import com.google.protobuf.NullValue;
2628
import org.junit.Test;
2729
import org.junit.runner.RunWith;
2830
import org.junit.runners.JUnit4;
@@ -189,4 +191,35 @@ public void serialization() throws Exception {
189191
reserializeAndAssert(Key.of(Date.parseDate("2015-09-15")));
190192
reserializeAndAssert(Key.of(1, 2, 3));
191193
}
194+
195+
@Test
196+
public void toProto() {
197+
String timestamp = "2015-09-15T00:00:00Z";
198+
String date = "2015-09-15";
199+
Key k =
200+
Key.newBuilder()
201+
.append((Boolean) null)
202+
.append(true)
203+
.append(32)
204+
.append(64L)
205+
.append(2.0f)
206+
.append(4.0d)
207+
.append("x")
208+
.append(ByteArray.copyFrom("y"))
209+
.append(Timestamp.parseTimestamp(timestamp))
210+
.append(Date.parseDate(date))
211+
.build();
212+
ListValue.Builder builder = ListValue.newBuilder();
213+
builder.addValuesBuilder().setNullValue(NullValue.NULL_VALUE);
214+
builder.addValuesBuilder().setBoolValue(true);
215+
builder.addValuesBuilder().setStringValue("32");
216+
builder.addValuesBuilder().setStringValue("64");
217+
builder.addValuesBuilder().setNumberValue(2.0f);
218+
builder.addValuesBuilder().setNumberValue(4.0d);
219+
builder.addValuesBuilder().setStringValue("x");
220+
builder.addValuesBuilder().setStringValue("eQ==");
221+
builder.addValuesBuilder().setStringValue(timestamp);
222+
builder.addValuesBuilder().setStringValue(date);
223+
assertThat(k.toProto()).isEqualTo(builder.build());
224+
}
192225
}

0 commit comments

Comments
 (0)