def test_split_paired_reads_2_mixed_fq_orphans_to_file(): # test input file infile = utils.copy_test_data('paired-mixed-2.fq') in_dir = os.path.dirname(infile) outfile = utils.get_temp_filename('out.fq') script = 'split-paired-reads.py' args = ['-0', outfile, infile] status, out, err = utils.runscript(script, args, in_dir) assert status == 0 assert "split 6 sequences (3 left, 3 right, 5 orphans)" in err, err n_orphans = len([1 for record in screed.open(outfile)]) assert n_orphans == 5 n_left = len([1 for record in screed.open(infile + '.1')]) assert n_left == 3 n_right = len([1 for record in screed.open(infile + '.2')]) assert n_right == 3 for filename in [outfile, infile + '.1', infile + '.2']: fp = gzip.open(filename) try: fp.read() except IOError as e: assert "Not a gzipped file" in str(e), str(e) fp.close()
def test_split_paired_reads_2_mixed_fq_broken_pairing_format(): # test input file infile = utils.copy_test_data('paired-mixed-broken.fq') in_dir = os.path.dirname(infile) script = 'split-paired-reads.py' args = [infile] status, out, err = utils.runscript(script, args, in_dir, fail_ok=True) assert status == 1 assert "Unpaired reads found starting at 895:1:37:17593:9954" in err, err
def test_split_paired_reads_2_mixed_fq(): # test input file infile = utils.copy_test_data('paired-mixed-2.fq') in_dir = os.path.dirname(infile) script = 'split-paired-reads.py' args = ['-0', '/dev/null', infile] status, out, err = utils.runscript(script, args, in_dir) assert status == 0 assert "split 6 sequences (3 left, 3 right, 5 orphans)" in err, err
def test_split_paired_reads_2_mixed_fq_require_pair(): # test input file infile = utils.copy_test_data('paired-mixed.fq') in_dir = os.path.dirname(infile) script = 'split-paired-reads.py' args = [infile] status, out, err = utils.runscript(script, args, in_dir, fail_ok=True) assert status == 1, status assert "Unpaired reads found" in err
def test_split_paired_reads_2_mixed_fq_gzfile(): # test input file infile = utils.copy_test_data('paired-mixed-2.fq') in_dir = os.path.dirname(infile) outfile = utils.get_temp_filename('out.fq') script = 'split-paired-reads.py' args = ['-0', outfile, '--gzip', infile] status, out, err = utils.runscript(script, args, in_dir) assert status == 0 assert "split 6 sequences (3 left, 3 right, 5 orphans)" in err, err n_orphans = len([1 for record in screed.open(outfile)]) assert n_orphans == 5 n_left = len([1 for record in screed.open(infile + '.1')]) assert n_left == 3 n_right = len([1 for record in screed.open(infile + '.2')]) assert n_right == 3 for filename in [outfile, infile + '.1', infile + '.2']: fp = gzip.open(filename) fp.read() # this will fail if not gzip file. fp.close()