@Test public void resolveValidation() throws Exception { Message<?> message = MessageBuilder.withPayload("ABC".getBytes()).build(); this.resolver.resolveArgument(this.paramValidated, message); }
@Test public void resolveSpelExpressionNotSupported() throws Exception { Message<?> message = MessageBuilder.withPayload("ABC".getBytes()).build(); thrown.expect(IllegalStateException.class); this.resolver.resolveArgument(paramWithSpelExpression, message); }
@Test public void resolveNotRequired() throws Exception { Message<?> emptyByteArrayMessage = MessageBuilder.withPayload(new byte[0]).build(); assertNull(this.resolver.resolveArgument(this.paramAnnotatedNotRequired, emptyByteArrayMessage)); Message<?> emptyStringMessage = MessageBuilder.withPayload("").build(); assertNull(this.resolver.resolveArgument(this.paramAnnotatedNotRequired, emptyStringMessage)); Message<?> notEmptyMessage = MessageBuilder.withPayload("ABC".getBytes()).build(); assertEquals("ABC", this.resolver.resolveArgument(this.paramAnnotatedNotRequired, notEmptyMessage)); }
@Test public void resolveNonAnnotatedParameter() throws Exception { Message<?> notEmptyMessage = MessageBuilder.withPayload("ABC".getBytes()).build(); assertEquals("ABC", this.resolver.resolveArgument(this.paramNotAnnotated, notEmptyMessage)); Message<?> emptyStringMessage = MessageBuilder.withPayload("").build(); thrown.expect(MethodArgumentNotValidException.class); this.resolver.resolveArgument(this.paramValidated, emptyStringMessage); }
@Test public void resolveFailValidation() throws Exception { // See testValidator() Message<?> message = MessageBuilder.withPayload("invalidValue".getBytes()).build(); thrown.expect(MethodArgumentNotValidException.class); this.resolver.resolveArgument(this.paramValidated, message); }
@Test public void resolveRequired() throws Exception { Message<?> message = MessageBuilder.withPayload("ABC".getBytes()).build(); Object actual = this.resolver.resolveArgument(paramAnnotated, message); assertEquals("ABC", actual); }
@Test public void resolveRequiredEmptyNonAnnotatedParameter() throws Exception { Message<?> message = MessageBuilder.withPayload("").build(); thrown.expect(MethodArgumentNotValidException.class); // Required but empty this.resolver.resolveArgument(this.paramNotAnnotated, message); }
@Test public void resolveRequiredEmpty() throws Exception { Message<?> message = MessageBuilder.withPayload("").build(); thrown.expect(MethodArgumentNotValidException.class); // Required but empty this.resolver.resolveArgument(paramAnnotated, message); }
@Test public void resolveFailValidationNoConversionNecessary() throws Exception { Message<?> message = MessageBuilder.withPayload("invalidValue").build(); thrown.expect(MethodArgumentNotValidException.class); this.resolver.resolveArgument(this.paramValidated, message); }
@Test public void resolveNonAnnotatedParameterFailValidation() throws Exception { // See testValidator() Message<?> message = MessageBuilder.withPayload("invalidValue".getBytes()).build(); thrown.expect(MethodArgumentNotValidException.class); thrown.expectMessage("invalid value"); assertEquals("invalidValue", this.resolver.resolveArgument(this.paramValidatedNotAnnotated, message)); }
@Test public void resolveNonConvertibleParam() throws Exception { Message<?> notEmptyMessage = MessageBuilder.withPayload(123).build(); thrown.expect(MessageConversionException.class); thrown.expectMessage("Cannot convert"); this.resolver.resolveArgument(this.paramAnnotatedRequired, notEmptyMessage); }