This is an automated email from the ASF dual-hosted git repository. awasum pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/fineract-cn-payroll.git
commit 8a38bb19f1dad2156cb095821852f29a7b1a3153 Author: myrle-krantz <[email protected]> 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
