Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #32058
| From | Jeff Higgins <jeff@invalid.invalid> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: How to test my @NotEmpty with JUnit |
| Date | 2015-07-17 07:27 -0400 |
| Organization | A noiseless patient Spider |
| Message-ID | <moap0a$qil$1@dont-email.me> (permalink) |
| References | <87io9jyycu.fsf@Equus.decebal.nl> |
On 07/17/2015 04:36 AM, Cecil Westerhof wrote:
> We have to remove almost every framework used in the code. I started
> with the @NotEmpty from Hibernate. It was the only class used from
> Hibernate, so low hanging fruit we thought.
>
> I wrote the following implementation:
>
> import java.lang.annotation.Documented;
> import static java.lang.annotation.ElementType.FIELD;
> import java.lang.annotation.Retention;
> import static java.lang.annotation.RetentionPolicy.RUNTIME;
> import java.lang.annotation.Target;
>
> import javax.validation.Constraint;
> import javax.validation.constraints.NotNull;
> import javax.validation.constraints.Size;
> import javax.validation.ReportAsSingleViolation;
>
> @Documented
> @Constraint(validatedBy = {})
> @Target({ FIELD })
> @Retention(RUNTIME)
> @ReportAsSingleViolation
> @NotNull
> @Size(min = 1)
> public @interface NotEmpty {
> public abstract String message() default "Field has to be filled";
> }
>
>
> But it should be tested also of-course. So I wrote the following test:
>
> import org.junit.Test;
>
> class NotEmptyClass {
> @NotEmpty
> String notEmpty;
>
> NotEmptyClass(String value) {
> notEmpty = value;
> }
> }
>
> public class NotEmptyTest {
> @Test
> public void firstTest() {
> new NotEmptyClass(null);
> }
> }
>
> I would expect this test not to pass, but it does. So clearly I am
> doing something wrong, but I have no idea what. (This is the first
> time I really work with annotations.) I did some Googling but until
> now to no avail. So if someone could point me to the right direction …
>
As I stated before I'm not a JPA or JavaEE user so this might be
CompleteBS.
I also did some googling "test custom bean validation" and from
what I read I wonder why you don't show a ConstraintValidator class.
And also the JUnit tests I ran across seem to do a good bit of
setup that you don't show.
One link that I picked almost at random.
<http://www.javabeat.net/bean-validation-java-ee-creating-custom-constraints-validations/>
Also the spec seems easy to read. Overwhelming? Well, yep, but...
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
How to test my @NotEmpty with JUnit Cecil Westerhof <Cecil@decebal.nl> - 2015-07-17 10:36 +0200
Re: How to test my @NotEmpty with JUnit Joerg Meier <joergmmeier@arcor.de> - 2015-07-17 12:28 +0200
Re: How to test my @NotEmpty with JUnit Cecil Westerhof <Cecil@decebal.nl> - 2015-07-17 13:22 +0200
Re: How to test my @NotEmpty with JUnit Cecil Westerhof <Cecil@decebal.nl> - 2015-07-22 11:49 +0200
Re: How to test my @NotEmpty with JUnit Jeff Higgins <jeff@invalid.invalid> - 2015-07-17 07:27 -0400
Re: How to test my @NotEmpty with JUnit Jeff Higgins <jeff@invalid.invalid> - 2015-07-17 07:58 -0400
Re: How to test my @NotEmpty with JUnit Jeff Higgins <jeff@invalid.invalid> - 2015-07-17 09:14 -0400
Re: How to test my @NotEmpty with JUnit Jeff Higgins <jeff@invalid.invalid> - 2015-07-17 10:59 -0400
Re: How to test my @NotEmpty with JUnit Jeff Higgins <jeff@invalid.invalid> - 2015-07-17 11:39 -0400
Re: How to test my @NotEmpty with JUnit Cecil Westerhof <Cecil@decebal.nl> - 2015-07-22 12:09 +0200
Re: How to test my @NotEmpty with JUnit Cecil Westerhof <Cecil@decebal.nl> - 2015-07-25 17:10 +0200
csiph-web