public AlignmentRecord(Term sourceTerm, Term targetTerm) {
    super();

    this.sourceTerm = Optional.of(sourceTerm);
    this.sourceLemma = Optional.of(sourceTerm.getLemma());
    this.targetTerm = Optional.of(targetTerm);
    this.targetLemma = Optional.of(targetTerm.getLemma());
  }
  @Test
  public void testFindBiggestPrefix() {
    assertEquals(
        recouvrement_total, TermUtils.findBiggestPrefix(termIndex, recouvrement_total.getWords()));

    assertEquals(recouvrement, TermUtils.findBiggestPrefix(termIndex, recouvrement.getWords()));

    assertEquals(null, TermUtils.findBiggestPrefix(termIndex, termWords("de", "P")));

    assertEquals(
        recouvrement_total,
        TermUtils.findBiggestPrefix(
            termIndex, termWords("recouvrement", "N", "total", "A", "de", "P", "pezojc", "U")));
    assertEquals(
        null,
        TermUtils.findBiggestPrefix(
            termIndex,
            termWords("de", "P", "recouvrement", "N", "total", "A", "de", "P", "pezojc", "U")));
  }