diff --git a/src/test/java/uk/org/iay/incommon/mda/validate/string/AsLiteralTailStringValidatorTest.java b/src/test/java/uk/org/iay/incommon/mda/validate/string/AsLiteralTailStringValidatorTest.java index 10fe9fd..a86d885 100644 --- a/src/test/java/uk/org/iay/incommon/mda/validate/string/AsLiteralTailStringValidatorTest.java +++ b/src/test/java/uk/org/iay/incommon/mda/validate/string/AsLiteralTailStringValidatorTest.java @@ -64,4 +64,28 @@ public void testExample() throws Exception { Assert.assertEquals(ccv.value, "aaf.edu.au"); } + /* + * Example from the REFEDS MRPS template document. + * + * See https://github.com/REFEDS/MRPS/blob/master/MRPS-templatev1.1.pdf + */ + @Test + public void testREFEDSExample() throws Exception { + final CountingCapturingValidator ccv = new CountingCapturingValidator(Action.CONTINUE); + ccv.setId("ccv"); + ccv.initialize(); + + final List> nvs = new ArrayList<>(); + nvs.add(ccv); + + final AsLiteralTailStringValidator val = new AsLiteralTailStringValidator(); + val.setId("val"); + val.setValidators(nvs); + val.initialize(); + + final Item item = new MockItem("content"); + Assert.assertEquals(val.validate("^(foo|bar)\\.example\\.com$", item, "stage"), Action.CONTINUE); + Assert.assertEquals(ccv.count, 1); + Assert.assertEquals(ccv.value, "example.com"); + } }