| package com.fasterxml.jackson.databind.deser.inject; |
| |
| import com.fasterxml.jackson.annotation.JacksonInject; |
| |
| import com.fasterxml.jackson.databind.BaseMapTest; |
| import com.fasterxml.jackson.databind.ObjectMapper; |
| import com.fasterxml.jackson.databind.exc.InvalidDefinitionException; |
| |
| public class InvalidInjectionTest extends BaseMapTest |
| { |
| static class BadBean1 { |
| @JacksonInject protected String prop1; |
| @JacksonInject protected String prop2; |
| } |
| |
| static class BadBean2 { |
| @JacksonInject("x") protected String prop1; |
| @JacksonInject("x") protected String prop2; |
| } |
| |
| /* |
| /********************************************************** |
| /* Unit tests |
| /********************************************************** |
| */ |
| |
| private final ObjectMapper MAPPER = newObjectMapper(); |
| |
| public void testInvalidDup() throws Exception |
| { |
| try { |
| MAPPER.readValue("{}", BadBean1.class); |
| fail("Should not pass"); |
| } catch (InvalidDefinitionException e) { |
| verifyException(e, "Duplicate injectable value"); |
| } |
| try { |
| MAPPER.readValue("{}", BadBean2.class); |
| fail("Should not pass"); |
| } catch (InvalidDefinitionException e) { |
| verifyException(e, "Duplicate injectable value"); |
| } |
| } |
| |
| } |