/** * Aligns query sequence with the previously built database. * @param query list of words to look for * * @return indices of alignment */ public int[] align(List<String> query) { return align(query, new Range(0, refWords.size())); }
@Test(invocationTimeOut = 10000, invocationCount = 1, enabled = false) public void alignShortSequence() { List<String> query = database.subList(100, 200); Integer[] ids = new Integer[query.size()]; for (int i = 0; i < query.size(); ++i) ids[i] = 100 + i; assertThat(Utilities.asList(aligner.align(query)), contains(ids)); }
@Test(invocationTimeOut = 10000, invocationCount = 1, enabled = false) public void alignLongSequence() { List<String> query = database.subList(1999, 8777); assertThat(Utilities.asList(aligner.align(query)), contains(1)); } }
@Test(dataProvider = "words") public void align(List<String> words, Matcher<List<Integer>> matcher) { assertThat(Utilities.asList(aligner.align(words)), matcher); }
private void align(List<String> database, List<String> query, Integer... result) { LongTextAligner aligner = new LongTextAligner(database, 1); int[] alignment = aligner.align(query); assertThat(Utilities.asList(alignment), contains(result)); } }
words.add(wr.getWord().getSpelling()); int[] alignment = aligner.align(words, range);
/** * Aligns query sequence with the previously built database. * @param query list of words to look for * * @return indices of alignment */ public int[] align(List<String> query) { return align(query, new Range(0, refWords.size())); }
words.add(wr.getWord().getSpelling()); int[] alignment = aligner.align(words, range);