package org.openstack.atlas.api.validation.verifiers; import org.openstack.atlas.api.validation.SimpleBean; import org.openstack.atlas.api.validation.context.HttpRequestType; import org.openstack.atlas.api.validation.Validator; import org.openstack.atlas.api.validation.ValidatorBuilder; import org.junit.Before; import org.junit.Test; import org.junit.experimental.runners.Enclosed; import org.junit.runner.RunWith; import static org.openstack.atlas.api.validation.ValidatorBuilder.build; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @RunWith(Enclosed.class) public class MustBeEmptyTest { public static class WhenVerifyingMustBeEmpty { private SimpleBean testObjectA; private SimpleBean testObjectB; @Before public void standUp() { testObjectA = new SimpleBean("1", "2", "3", 1, 2, 3); testObjectB = new SimpleBean(null, null, null, null, null, null); } @Test public void shouldValidateNotNull() { final Validator<SimpleBean> validator = build(new ValidatorBuilder<SimpleBean>(SimpleBean.class) { { result(validationTarget().getIntProperty1()).must().not().beEmptyOrNull().withMessage("Must not be empty or null"); } }); assertTrue(validator.validate(testObjectA, HttpRequestType.POST).passedValidation()); assertFalse(validator.validate(testObjectB, HttpRequestType.POST).passedValidation()); } } }