diff --git a/google-http-client/src/test/java/com/google/api/client/util/DataTest.java b/google-http-client/src/test/java/com/google/api/client/util/DataTest.java index 75ebc160b..8a40c3f01 100644 --- a/google-http-client/src/test/java/com/google/api/client/util/DataTest.java +++ b/google-http-client/src/test/java/com/google/api/client/util/DataTest.java @@ -242,6 +242,25 @@ public void testParsePrimitiveValue() { // expected } assertNull(Data.parsePrimitiveValue(Void.class, "abc")); + assertNull(Data.parsePrimitiveValue(Enum.class, null)); + } + + private enum MyEnum { + A("a"); + private final String s; + + MyEnum(String s) { + this.s = s; + } + } + + public void testParsePrimitiveValueWithUnknownEnum() { + try { + Data.parsePrimitiveValue(MyEnum.class, "foo"); + fail("expected " + IllegalArgumentException.class); + } catch (IllegalArgumentException e) { + // expected + } } static class Resolve {