@Test public void testTypeValueFromWithRegex() { final String entry = "pmid:/1234"; final TypeValue tvalue = DecoderUtil.typeValueFrom(entry, "\\r[:/]"); Assert.assertTrue(tvalue.getType().equals("pmid")); Assert.assertTrue(tvalue.getValue().equals("1234")); }
@Test public void testTypeValueFromWithDefault() { final String entry = "pmid:1234"; final TypeValue tvalue = DecoderUtil.typeValueFrom(entry, null); Assert.assertTrue(tvalue.getType().equals("pmid")); Assert.assertTrue(tvalue.getValue().equals("1234")); }
@Test public void testTypeValueListWithRegexBoth() { final String line = "pmid:/1234,pmid:4567,,pmid:7890,;pmid:/5678,"; final ImmutableList<TypeValue> expectedValues = ImmutableList.of( new TypeValue("pmid", "1234"), new TypeValue("pmid", "4567"), new TypeValue("pmid", "7890"), new TypeValue("pmid", "5678")); TypeValue defaultValue = new TypeValue("pmid", "default"); final List<TypeValue> items = DecoderUtil.typeValueListFrom(line, defaultValue, "\\r[,;]", "\\r[:/]"); Assert.assertTrue(items.containsAll(expectedValues)); }