// Path: src/test/java/com/hubspot/jackson/datatype/protobuf/util/ObjectMapperHelper.java
// public static ObjectMapper camelCase() {
//   return DEFAULT;
// }


import static com.hubspot.jackson.datatype.protobuf.util.ObjectMapperHelper.camelCase;
import static org.assertj.core.api.Assertions.assertThat;
import java.io.IOException;
import java.util.Map;
import org.junit.Test;
import com.fasterxml.jackson.databind.JsonNode;
import com.google.protobuf.ListValue;
import com.google.protobuf.NullValue;
import com.google.protobuf.Struct;
import com.google.protobuf.Value;
import com.hubspot.jackson.datatype.protobuf.util.BuiltInProtobufs.HasStruct;
            .putFields("boolean", Value.newBuilder().setBoolValue(true).build())
            .putFields("struct", Value.newBuilder().setStructValue(nestedStruct).build())
            .putFields("list", Value.newBuilder().setListValue(list).build())
            .build();
    HasStruct message = HasStruct
            .newBuilder()
            .setStruct(struct)
            .build();
    String json = camelCase().writeValueAsString(message);
    JsonNode node = camelCase().readTree(json).get("struct");
    assertThat(node.get("null").isNull()).isTrue();
    assertThat(node.get("number").isNumber()).isTrue();
    assertThat(node.get("number").numberValue().doubleValue()).isEqualTo(1.5d);
    assertThat(node.get("string").isTextual()).isTrue();
    assertThat(node.get("string").textValue()).isEqualTo("test");
    assertThat(node.get("boolean").isBoolean()).isTrue();
    assertThat(node.get("boolean").booleanValue()).isTrue();
    assertThat(node.get("struct").isObject()).isTrue();
    assertThat(node.get("struct").size()).isEqualTo(1);
    assertThat(node.get("struct").get("key").isTextual()).isTrue();
    assertThat(node.get("struct").get("key").textValue()).isEqualTo("nested");
    assertThat(node.get("list").isArray()).isTrue();
    assertThat(node.get("list").size()).isEqualTo(1);
    assertThat(node.get("list").get(0).isTextual()).isTrue();
    assertThat(node.get("list").get(0).textValue()).isEqualTo("nested");
  }

  @Test
  public void itDoesntSetStructWhenValueIsNull() throws IOException {
    String json = "{\"struct\":null}";
// Path: src/test/java/com/hubspot/jackson/datatype/protobuf/util/ObjectMapperHelper.java
// public static ObjectMapper camelCase() {
//   return DEFAULT;
// }


// Path: src/test/java/com/hubspot/jackson/datatype/protobuf/builtin/StructTest.java
import static com.hubspot.jackson.datatype.protobuf.util.ObjectMapperHelper.camelCase;
import static org.assertj.core.api.Assertions.assertThat;
import java.io.IOException;
import java.util.Map;
import org.junit.Test;
import com.fasterxml.jackson.databind.JsonNode;
import com.google.protobuf.ListValue;
import com.google.protobuf.NullValue;
import com.google.protobuf.Struct;
import com.google.protobuf.Value;
import com.hubspot.jackson.datatype.protobuf.util.BuiltInProtobufs.HasStruct;

            .putFields("boolean", Value.newBuilder().setBoolValue(true).build())
            .putFields("struct", Value.newBuilder().setStructValue(nestedStruct).build())
            .putFields("list", Value.newBuilder().setListValue(list).build())
            .build();
    HasStruct message = HasStruct
            .newBuilder()
            .setStruct(struct)
            .build();
    String json = camelCase().writeValueAsString(message);
    JsonNode node = camelCase().readTree(json).get("struct");
    assertThat(node.get("null").isNull()).isTrue();
    assertThat(node.get("number").isNumber()).isTrue();
    assertThat(node.get("number").numberValue().doubleValue()).isEqualTo(1.5d);
    assertThat(node.get("string").isTextual()).isTrue();
    assertThat(node.get("string").textValue()).isEqualTo("test");
    assertThat(node.get("boolean").isBoolean()).isTrue();
    assertThat(node.get("boolean").booleanValue()).isTrue();
    assertThat(node.get("struct").isObject()).isTrue();
    assertThat(node.get("struct").size()).isEqualTo(1);
    assertThat(node.get("struct").get("key").isTextual()).isTrue();
    assertThat(node.get("struct").get("key").textValue()).isEqualTo("nested");
    assertThat(node.get("list").isArray()).isTrue();
    assertThat(node.get("list").size()).isEqualTo(1);
    assertThat(node.get("list").get(0).isTextual()).isTrue();
    assertThat(node.get("list").get(0).textValue()).isEqualTo("nested");
  }

  @Test
  public void itDoesntSetStructWhenValueIsNull() throws IOException {
    String json = "{\"struct\":null}";
    HasStruct valueWrapper = camelCase().readValue(json, HasStruct.class);