// Copyright 2014 Thomas Müller // This file is part of MarMoT, which is licensed under GPLv3. package marmot.test.util; import static org.junit.Assert.*; import java.util.Arrays; import java.util.List; import marmot.util.GeneralLevenshteinLattice; import org.junit.Test; public class GeneralLevenshteinLatticeTest { @Test public void costTest() { List<String> input, output; GeneralLevenshteinLattice<String> lattice; input = Arrays.asList("A", "C", "B"); output = Arrays.asList("A", "D", "B"); lattice = new GeneralLevenshteinLattice<String>(input, output, 2, 2, 3); assertEquals(3, lattice.getDistance()); input = Arrays.asList("A", "C", "B"); output = Arrays.asList("A", "D", "D", "B"); lattice = new GeneralLevenshteinLattice<String>(input, output, 2, 2, 3); assertEquals(5, lattice.getDistance()); input = Arrays.asList("A", "C", "B"); output = Arrays.asList("A","D", "D", "D", "D", "B"); lattice = new GeneralLevenshteinLattice<String>(input, output, 2, 2, 3); assertEquals(9, lattice.getDistance()); input = Arrays.asList("A", "C", "B"); output = Arrays.asList("A","D", "D", "D", "D", "D", "B"); lattice = new GeneralLevenshteinLattice<String>(input, output, 2, 2, 3); assertEquals(11, lattice.getDistance()); input = Arrays.asList("A", "C", "B"); output = Arrays.asList("A","D", "D", "D", "D", "D", "D", "B"); lattice = new GeneralLevenshteinLattice<String>(input, output, 2, 2, 3); assertEquals(13, lattice.getDistance()); } }