Search in sources :

Example 1 with Regex

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"));
}
Also used : Regex(uk.gov.gchq.koryphe.impl.predicate.Regex) FreqMap(uk.gov.gchq.gaffer.types.FreqMap) Test(org.junit.jupiter.api.Test)

Example 2 with Regex

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);
}
Also used : Regex(uk.gov.gchq.koryphe.impl.predicate.Regex) Test(org.junit.jupiter.api.Test)

Example 3 with Regex

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);
}
Also used : Regex(uk.gov.gchq.koryphe.impl.predicate.Regex)

Example 4 with Regex

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);
}
Also used : MapContainsPredicate(uk.gov.gchq.koryphe.impl.predicate.MapContainsPredicate) Regex(uk.gov.gchq.koryphe.impl.predicate.Regex)

Example 5 with Regex

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"));
}
Also used : Regex(uk.gov.gchq.koryphe.impl.predicate.Regex) FreqMap(uk.gov.gchq.gaffer.types.FreqMap) Test(org.junit.jupiter.api.Test)

Aggregations

Regex (uk.gov.gchq.koryphe.impl.predicate.Regex)6 Test (org.junit.jupiter.api.Test)4 FreqMap (uk.gov.gchq.gaffer.types.FreqMap)3 MapContainsPredicate (uk.gov.gchq.koryphe.impl.predicate.MapContainsPredicate)1