From 7e602d9a90be4625ef82773723f3a6e4423f21b5 Mon Sep 17 00:00:00 2001 From: Stephen Judkins Date: Wed, 20 Oct 2021 09:12:34 -0700 Subject: [PATCH] fix: add test for mixed-cased field name --- .../storage/v1/JsonToProtoMessageTest.java | 18 ++++++++++++++++++ .../src/test/proto/jsonTest.proto | 4 ++++ 2 files changed, 22 insertions(+) diff --git a/google-cloud-bigquerystorage/src/test/java/com/google/cloud/bigquery/storage/v1/JsonToProtoMessageTest.java b/google-cloud-bigquerystorage/src/test/java/com/google/cloud/bigquery/storage/v1/JsonToProtoMessageTest.java index 2101e3077a..868905feda 100644 --- a/google-cloud-bigquerystorage/src/test/java/com/google/cloud/bigquery/storage/v1/JsonToProtoMessageTest.java +++ b/google-cloud-bigquerystorage/src/test/java/com/google/cloud/bigquery/storage/v1/JsonToProtoMessageTest.java @@ -552,6 +552,24 @@ public void testNumericMismatch() throws Exception { } } + @Test public void testMixedCasedFieldNames() throws Exception { + TableFieldSchema field = TableFieldSchema + .newBuilder() + .setName("fooBar") + .setType(TableFieldSchema.Type.STRING) + .setMode(TableFieldSchema.Mode.NULLABLE) + .build(); + TableSchema tableSchema = TableSchema.newBuilder().addFields(field).build(); + + JSONObject json = new JSONObject(); + json.put("fooBar", "hello"); + + DynamicMessage protoMsg = JsonToProtoMessage.convertJsonToProtoMessage( + TestMixedCaseFieldNames.getDescriptor(), tableSchema, json + ); + + } + @Test public void testBigNumericMismatch() throws Exception { TableFieldSchema field = diff --git a/google-cloud-bigquerystorage/src/test/proto/jsonTest.proto b/google-cloud-bigquerystorage/src/test/proto/jsonTest.proto index c08dd7648f..29efcdfb9c 100644 --- a/google-cloud-bigquerystorage/src/test/proto/jsonTest.proto +++ b/google-cloud-bigquerystorage/src/test/proto/jsonTest.proto @@ -156,3 +156,7 @@ message TestNumeric { message TestBignumeric { repeated bytes bignumeric = 1; } + +message TestMixedCaseFieldNames { + required string foobar = 1; +}