use of uk.gov.gchq.koryphe.impl.predicate.Regex in project Gaffer by gchq.
the class FreqMapPredicatorTest method shouldFilterMapWithSingleResult.
@Test
public void shouldFilterMapWithSingleResult() {
// given
final Regex predicate = new Regex("^c.*o.*g$");
final FreqMapPredicator fRegexPredicator = new FreqMapPredicator(predicate);
// when
final FreqMap fRegex = fRegexPredicator.apply(freqMap);
// then
assertEquals(fRegex.size(), 1);
assertTrue(fRegex.containsKey("catdog"));
}
use of uk.gov.gchq.koryphe.impl.predicate.Regex in project Gaffer by gchq.
the class FreqMapPredicatorTest method shouldJsonSerialiseAndDeserialise.
@Test
public void shouldJsonSerialiseAndDeserialise() throws SerialisationException {
// given
final FreqMapPredicator nullPredicator = new FreqMapPredicator();
final FreqMapPredicator regexPredicator = new FreqMapPredicator(new Regex("^\\wo\\w$"));
// when
final String json = new String(JSONSerialiser.serialise(nullPredicator, true));
final String json2 = new String(JSONSerialiser.serialise(regexPredicator, false));
// then
JsonAssert.assertEquals(String.format("{%n" + " \"class\" : \"uk.gov.gchq.gaffer.types.function.FreqMapPredicator\"%n" + "}"), json);
JsonAssert.assertEquals("{\"class\":\"uk.gov.gchq.gaffer.types.function.FreqMapPredicator\"," + "\"predicate\":{\"class\":\"uk.gov.gchq.koryphe.impl.predicate.Regex\",\"value\":" + "{\"java.util.regex.Pattern\":\"^\\\\wo\\\\w$\"}}}", json2);
final FreqMapPredicator deserializedNull = JSONSerialiser.deserialise(json, FreqMapPredicator.class);
final FreqMapPredicator deserializedRegex = JSONSerialiser.deserialise(json2, FreqMapPredicator.class);
assertEquals(deserializedNull.apply(freqMap).size(), freqMap.size());
assertEquals(deserializedRegex.apply(freqMap).size(), 2);
}
use of uk.gov.gchq.koryphe.impl.predicate.Regex in project gaffer-doc by gchq.
the class RegexExample method regexWithPattern.
public void regexWithPattern() {
// ---------------------------------------------------------
final Regex function = new Regex("[a-d0-4]");
// ---------------------------------------------------------
runExample(function, null, "a", "z", "az", 'a', "2", 2, 2L);
}
use of uk.gov.gchq.koryphe.impl.predicate.Regex in project gaffer-doc by gchq.
the class MapContainsPredicateExample method mapContainsPredicate.
public void mapContainsPredicate() {
// ---------------------------------------------------------
final MapContainsPredicate function = new MapContainsPredicate(new Regex("a.*"));
// ---------------------------------------------------------
runExample(function, null, map, mapNoA, mapNullA);
}
use of uk.gov.gchq.koryphe.impl.predicate.Regex in project Gaffer by gchq.
the class FreqMapPredicatorTest method shouldFilterMapWithMultipleResults.
@Test
public void shouldFilterMapWithMultipleResults() {
// given
final Regex predicate = new Regex("^\\wo\\w$");
final FreqMapPredicator fRegexPredicator = new FreqMapPredicator(predicate);
// when
final FreqMap fRegex = fRegexPredicator.apply(freqMap);
// then
assertEquals(fRegex.size(), 2);
assertTrue(fRegex.containsKey("cow"));
assertTrue(fRegex.containsKey("dog"));
}
Aggregations