@Override public void setup() { d = new org.apache.commons.text.similarity.LongestCommonSubsequenceDistance(); }
@Override public void eval() { String input1 = org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.toStringFromUTF8(rawInput1.start, rawInput1.end, rawInput1.buffer); String input2 = org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.toStringFromUTF8(rawInput2.start, rawInput2.end, rawInput2.buffer); out.value = d.apply(input1, input2); } }
@Test public void testGettingLogestCommonSubsequenceDistacne() { assertThat(subject.apply("", "")).isEqualTo(0); assertThat(subject.apply("left", "")).isEqualTo(4); assertThat(subject.apply("", "right")).isEqualTo(5); assertThat(subject.apply("frog", "fog")).isEqualTo(1); assertThat(subject.apply("fly", "ant")).isEqualTo(6); assertThat(subject.apply("elephant", "hippo")).isEqualTo(11); assertThat(subject.apply("ABC Corporation", "ABC Corp")).isEqualTo(7); assertThat(subject.apply("D N H Enterprises Inc", "D & H Enterprises, Inc.")).isEqualTo(4); assertThat(subject.apply("My Gym Children's Fitness Center", "My Gym. Childrens Fitness")).isEqualTo(9); assertThat(subject.apply("PENNSYLVANIA", "PENNCISYLVNIA")).isEqualTo(3); assertThat(subject.apply("left", "right")).isEqualTo(7); assertThat(subject.apply("leettteft", "ritttght")).isEqualTo(9); assertThat(subject.apply("the same string", "the same string")).isEqualTo(0); }
@BeforeAll public static void setup() { subject = new LongestCommonSubsequenceDistance(); }
@Test public void testGettingLongestCommonSubsequenceDistanceNullNull() { assertThatIllegalArgumentException().isThrownBy(() -> subject.apply(null, null)); }
@Test public void testGettingLongestCommonSubsequenceDistanceNullString() { assertThatIllegalArgumentException().isThrownBy(() -> subject.apply(null, "right")); }
@Test public void testGettingLongestCommonSubsequenceDistanceStringNull() { assertThatIllegalArgumentException().isThrownBy(() -> subject.apply(" ", null)); }