You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by ju...@apache.org on 2019/10/16 20:03:16 UTC

[fineract-cn-template] 03/45: Adding example for test

This is an automated email from the ASF dual-hosted git repository.

juhan pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract-cn-template.git

commit 8a38bb19f1dad2156cb095821852f29a7b1a3153
Author: myrle-krantz <mk...@mifos.org>
AuthorDate: Tue Apr 4 17:11:41 2017 +0200

    Adding example for test
---
 api/build.gradle                                   |  4 ++
 .../mifos/template/api/v1/domain/SampleTest.java   | 55 ++++++++++++++++++++++
 2 files changed, 59 insertions(+)

diff --git a/api/build.gradle b/api/build.gradle
index c5b6745..17c6648 100644
--- a/api/build.gradle
+++ b/api/build.gradle
@@ -21,6 +21,10 @@ dependencies {
             [group: 'org.hibernate', name: 'hibernate-validator', version: versions.validator],
             [group: 'org.hibernate', name: 'hibernate-validator-annotation-processor', version: versions.validator]
     )
+
+    testCompile(
+            [group: 'io.mifos.core', name: 'test', version: versions.frameworktest],
+    )
 }
 
 publishing {
diff --git a/api/src/test/java/io/mifos/template/api/v1/domain/SampleTest.java b/api/src/test/java/io/mifos/template/api/v1/domain/SampleTest.java
new file mode 100644
index 0000000..acf33cb
--- /dev/null
+++ b/api/src/test/java/io/mifos/template/api/v1/domain/SampleTest.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright 2017 The Mifos Initiative.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package io.mifos.template.api.v1.domain;
+
+import io.mifos.core.test.domain.ValidationTest;
+import io.mifos.core.test.domain.ValidationTestCase;
+import org.apache.commons.lang.RandomStringUtils;
+import org.junit.runners.Parameterized;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+public class SampleTest extends ValidationTest<Sample> {
+
+  public SampleTest(ValidationTestCase<Sample> testCase) {
+    super(testCase);
+  }
+
+  @Override
+  protected Sample createValidTestSubject() {
+    return Sample.create("xxxx", "yyy");
+  }
+
+  @Parameterized.Parameters
+  public static Collection testCases() {
+    final Collection<ValidationTestCase> ret = new ArrayList<>();
+    ret.add(new ValidationTestCase<Sample>("basicCase")
+            .adjustment(x -> {})
+            .valid(true));
+    ret.add(new ValidationTestCase<Sample>("nullIdentifier")
+            .adjustment(x -> x.setIdentifier(null))
+            .valid(false));
+    ret.add(new ValidationTestCase<Sample>("tooShortIdentifier")
+            .adjustment(x -> x.setIdentifier("z"))
+            .valid(false));
+    ret.add(new ValidationTestCase<Sample>("tooLongPayload")
+            .adjustment(x -> x.setPayload(RandomStringUtils.randomAlphanumeric(513)))
+            .valid(false));
+    return ret;
+  }
+
+}
\ No newline at end of file