package fr.ens.biologie.genomique.eoulsan.bio.readsfilters;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
import fr.ens.biologie.genomique.eoulsan.EoulsanException;
import fr.ens.biologie.genomique.eoulsan.bio.ReadSequence;
public class SlidingWindowTrimmerReadFilterTest {
@Test
public void SlidingWindowTirmmertest() throws EoulsanException {
ReadFilter filter = new SlidingWindowTrimmerReadFilter();
filter.setParameter("arguments", "4:29");
filter.init();
assertFalse(filter.accept(null));
ReadSequence read =
new ReadSequence(0, "read1", "AGGT", "AA;;");
assertTrue(filter.accept(read));
assertEquals("read1", read.getName());
assertEquals("AG", read.getSequence());
assertEquals("AA", read.getQuality());
filter = new SlidingWindowTrimmerReadFilter();
filter.setParameter("arguments", "6:29");
filter.init();
read = new ReadSequence(0, "read2", "ATCTGGT", "A;;AA;;");
assertTrue(filter.accept(read));
assertEquals("read2", read.getName());
assertEquals("ATCTG", read.getSequence());
assertEquals("A;;AA", read.getQuality());
filter = new SlidingWindowTrimmerReadFilter();
filter.setParameter("arguments", "9:27.3");
filter.init();
read = new ReadSequence(0, "read3", "ATATCTGGT", ";;A;;AA;;");
assertTrue(filter.accept(read));
assertEquals("read3", read.getName());
assertEquals("ATATCTG", read.getSequence());
assertEquals(";;A;;AA", read.getQuality());
filter = new SlidingWindowTrimmerReadFilter();
filter.setParameter("arguments", "9:27");
filter.init();
read = new ReadSequence(0, "read3", "ATATCTGGT", "AA;;;;;;;");
assertTrue(filter.accept(read));
assertEquals("read3", read.getName());
assertEquals("AT", read.getSequence());
assertEquals("AA", read.getQuality());
read = new ReadSequence(0, "read3", "ATATCTGGT", ";;;;;;;AA");
assertTrue(filter.accept(read));
assertEquals("read3", read.getName());
assertEquals("ATATCTGGT", read.getSequence());
assertEquals(";;;;;;;AA", read.getQuality());
}
}