def test_build_trim_command_typical(self): for fwd in self.demux_seqs.sequences.iter_views(FastqGzFormat): obs = _build_trim_command(self.demux_seqs, fwd[0], None, self.trimmed_seqs, cores=0, adapter_f=['AAAA'], front_f=['GGGG'], anywhere_f=['CCCC'], error_rate=2, indels=False, times=3, overlap=4, match_read_wildcards=True, match_adapter_wildcards=False) obs = ' '.join(obs) self.assertTrue('-o %s' % str(self.trimmed_seqs.path / fwd[0]) in obs) self.assertTrue('--cores 0' in obs) self.assertTrue('--adapter AAAA' in obs) self.assertTrue('--front GGGG' in obs) self.assertTrue('--anywhere CCCC' in obs) self.assertTrue('--error-rate 2' in obs) self.assertTrue('--times 3' in obs) self.assertTrue('--overlap 4' in obs) self.assertTrue('--no-indels' in obs) self.assertTrue('--match-read-wildcards' in obs) self.assertTrue('--no-match-adapter-wildcards' in obs) self.assertTrue(str(self.demux_seqs) in obs)
def test_build_trim_command_typical(self): df = self.demux_seqs.manifest.view(pd.DataFrame) for _, fwd in df.itertuples(): obs = _build_trim_command(fwd, None, self.trimmed_seqs, cores=0, adapter_f=['AAAA'], front_f=['GGGG'], anywhere_f=['CCCC'], error_rate=2, indels=False, times=3, overlap=4, match_read_wildcards=True, match_adapter_wildcards=False, minimum_length=2, discard_untrimmed=True) obs = ' '.join(obs) self.assertTrue('-o %s' % str(self.trimmed_seqs.path / fwd[0]) in obs) self.assertTrue('--cores 0' in obs) self.assertTrue('--adapter AAAA' in obs) self.assertTrue('--front GGGG' in obs) self.assertTrue('--anywhere CCCC' in obs) self.assertTrue('--error-rate 2' in obs) self.assertTrue('--times 3' in obs) self.assertTrue('--overlap 4' in obs) self.assertTrue('--no-indels' in obs) self.assertTrue('--match-read-wildcards' in obs) self.assertTrue('--no-match-adapter-wildcards' in obs) self.assertTrue('--minimum-length 2' in obs) self.assertTrue('--discard-untrimmed' in obs) self.assertTrue(str(self.demux_seqs) in obs)
def test_build_trim_command_no_adapters_or_flags(self): for fwd in self.demux_seqs.sequences.iter_views(FastqGzFormat): obs = _build_trim_command(self.demux_seqs, fwd[0], None, self.trimmed_seqs) obs = ' '.join(obs) self.assertTrue('--adapter' not in obs) self.assertTrue('--front' not in obs) self.assertTrue('--anywhere' not in obs) self.assertTrue('--no-indels' not in obs) self.assertTrue('--match-read-wildcards' not in obs) self.assertTrue('--no-match-adapter-wildcards' not in obs)
def test_build_trim_command_multiple_adapters(self): for fwd in self.demux_seqs.sequences.iter_views(FastqGzFormat): obs = _build_trim_command(self.demux_seqs, fwd[0], None, self.trimmed_seqs, adapter_f=['AAAA', 'GGGG', 'CCCC']) obs = ' '.join(obs) self.assertTrue('--adapter AAAA' in obs) self.assertTrue('--adapter GGGG' in obs) self.assertTrue('--adapter CCCC' in obs) self.assertTrue('--front' not in obs) self.assertTrue('--anywhere' not in obs)
def test_build_trim_command_multiple_adapters(self): df = self.demux_seqs.manifest.view(pd.DataFrame) for _, fwd in df.itertuples(): obs = _build_trim_command(fwd, None, self.trimmed_seqs, adapter_f=['AAAA', 'GGGG', 'CCCC']) obs = ' '.join(obs) self.assertTrue('--adapter AAAA' in obs) self.assertTrue('--adapter GGGG' in obs) self.assertTrue('--adapter CCCC' in obs) self.assertTrue('--front' not in obs) self.assertTrue('--anywhere' not in obs)
def test_build_trim_command_no_adapters_or_flags(self): df = self.demux_seqs.manifest.view(pd.DataFrame) for _, fwd in df.itertuples(): obs = _build_trim_command(fwd, None, self.trimmed_seqs) obs = ' '.join(obs) self.assertTrue('--adapter' not in obs) self.assertTrue('--front' not in obs) self.assertTrue('--anywhere' not in obs) self.assertTrue('--no-indels' not in obs) self.assertTrue('--match-read-wildcards' not in obs) self.assertTrue('--no-match-adapter-wildcards' not in obs) self.assertTrue('--minimum-length 1' in obs) self.assertTrue('--discard-untrimmed' not in obs)
def test_build_trim_command_multiple_adapters(self): itr = self.demux_seqs.sequences.iter_views(FastqGzFormat) for fwd in itr: rev = next(itr) obs = _build_trim_command(self.demux_seqs, fwd[0], rev[0], self.trimmed_seqs, adapter_f=['AAAA', 'GGGG', 'CCCC'], adapter_r=['TTTT', 'CCCC', 'GGGG']) obs = ' '.join(obs) self.assertTrue('--adapter AAAA' in obs) self.assertTrue('--adapter GGGG' in obs) self.assertTrue('--adapter CCCC' in obs) self.assertTrue('-A TTTT' in obs) self.assertTrue('-A CCCC' in obs) self.assertTrue('-A GGGG' in obs) self.assertTrue('--front' not in obs) self.assertTrue('--anywhere' not in obs) self.assertTrue('-G' not in obs) self.assertTrue('-B' not in obs)