aboutsummaryrefslogtreecommitdiffstats
path: root/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2019-03-07 19:51:59 -0500
committerJim Hahn <jrh3@att.com>2019-03-08 08:40:51 -0500
commit0af104298947b796ebd511dcabd17209bf452a06 (patch)
tree06d30f95f4afa20e4735ecb2ac195715fa9e3dde /common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
parentc6b9fe817369db9c5fc824ab49f0f04b83d72756 (diff)
Create ParameterGroupImpl
Classes that implement ParameterGroup all have to add their own name and validate() fields and methods. Added an "impl" class that provides the standard functionality and modified subclasses to use it. Change-Id: Ic6ee1607fb4fe7164a4e1eeebc480ea7d1e7e4d7 Issue-ID: POLICY-1542 Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java')
-rw-r--r--common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java48
1 files changed, 20 insertions, 28 deletions
diff --git a/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java b/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
index 57d69f8d..8adf1165 100644
--- a/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
+++ b/common-parameters/src/test/java/org/onap/policy/common/parameters/TestValidation.java
@@ -293,6 +293,12 @@ public class TestValidation {
// non-null should be OK
result = new ParameterValidationResult(NotNullSub.class.getDeclaredField(NOT_NULL_STRING_NAME), "");
assertEquals(ValidationStatus.CLEAN, result.getStatus());
+
+ /*
+ * Super class annotation - null should be OK
+ */
+ result = new ParameterValidationResult(NotNullSub2.class.getDeclaredField("anotherString"), null);
+ assertEquals(ValidationStatus.CLEAN, result.getStatus());
}
@Test
@@ -358,47 +364,34 @@ public class TestValidation {
// these classes are used to test class-level annotations
- @NotNull
- private static class NotNullBase {
+
+ private static class EmptyBase {
}
- private static class NotNullSub extends NotNullBase {
+ @NotNull
+ private static class NotNullSub extends EmptyBase {
@SuppressWarnings("unused")
private String notNullString;
}
- private static class NotBlankBase {
-
+ private static class NotNullSub2 extends NotNullSub {
+ @SuppressWarnings("unused")
+ private String anotherString;
}
@NotBlank
- private static class NotBlankSub extends NotBlankBase {
+ private static class NotBlankSub extends EmptyBase {
@SuppressWarnings("unused")
private String notBlankString;
}
- private abstract static class SimpleGroup implements ParameterGroup {
- private String name;
-
- @Override
- public String getName() {
- return name;
- }
-
- @Override
- public void setName(String name) {
- this.name = name;
- }
- }
-
- private static class Contained extends SimpleGroup {
+ private static class Contained extends ParameterGroupImpl {
@Min(value = 1)
private int minInt;
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
+ public Contained() {
+ super("Contained");
}
@SuppressWarnings("unused")
@@ -407,13 +400,12 @@ public class TestValidation {
}
}
- private static class Container extends SimpleGroup {
+ private static class Container extends ParameterGroupImpl {
@NotNull
private Contained item;
- @Override
- public GroupValidationResult validate() {
- return new GroupValidationResult(this);
+ public Container() {
+ super("Container");
}
@SuppressWarnings("unused")