comparison tests/test_riboplot.py @ 7:096c6bbf4a04

Bugfix: (ribocounts) Read length was sent as rnafile argument in check_optional_arguments
author Vimalkumar Velayudhan <vimal@biotechcoder.com>
date Thu, 13 Aug 2015 15:03:20 +0100
parents 2ffa8172dce1
children 61c47a1d6a7a
comparison
equal deleted inserted replaced
6:2ffa8172dce1 7:096c6bbf4a04
25 """If bedtools is not in PATH, raise an error.""" 25 """If bedtools is not in PATH, raise an error."""
26 args = self.parser.parse_args( 26 args = self.parser.parse_args(
27 ['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, '-n', RNA_FILE]) 27 ['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, '-n', RNA_FILE])
28 save_path = os.environ['PATH'] 28 save_path = os.environ['PATH']
29 os.environ['PATH'] = '' 29 os.environ['PATH'] = ''
30 self.assertRaises(OSError, ribocore.check_optional_arguments, args.ribo_file, args.rna_file) 30 self.assertRaises(OSError, ribocore.check_optional_arguments, ribo_file=args.ribo_file, rna_file=args.rna_file)
31 os.environ['PATH'] = save_path 31 os.environ['PATH'] = save_path
32 32
33 def test_is_bam_valid(self): 33 def test_is_bam_valid(self):
34 """Test if BAM file is valid.""" 34 """Test if BAM file is valid."""
35 valid = ribocore.is_bam_valid(RIBO_FILE) 35 valid = ribocore.is_bam_valid(RIBO_FILE)
68 def test_invalid_read_length(self): 68 def test_invalid_read_length(self):
69 """An error is raised if an invalid read length is used.""" 69 """An error is raised if an invalid read length is used."""
70 args = self.parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, 70 args = self.parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME,
71 '-l', '-1']) # invalid read length -1 71 '-l', '-1']) # invalid read length -1
72 self.assertRaises(ribocore.ArgumentError, ribocore.check_optional_arguments, 72 self.assertRaises(ribocore.ArgumentError, ribocore.check_optional_arguments,
73 args.ribo_file, None, args.read_length) 73 ribo_file=args.ribo_file, read_length=args.read_length)
74 74
75 args = self.parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, 75 args = self.parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME,
76 '-l', '100']) # invalid read length 100 76 '-l', '100']) # invalid read length 100
77 self.assertRaises(ribocore.ArgumentError, ribocore.check_optional_arguments, 77 self.assertRaises(ribocore.ArgumentError, ribocore.check_optional_arguments,
78 args.ribo_file, None, args.read_length) 78 ribo_file=args.ribo_file, read_length=args.read_length)
79 79
80 def test_valid_read_offset(self): 80 def test_valid_read_offset(self):
81 """Read offset should be positive.""" 81 """Read offset should be positive."""
82 args = self.parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, 82 args = self.parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME,
83 '-s', '-1']) # invalid read offset -1 83 '-s', '-1']) # invalid read offset -1
84 self.assertRaises(ribocore.ArgumentError, ribocore.check_optional_arguments, 84 self.assertRaises(ribocore.ArgumentError, ribocore.check_optional_arguments,
85 args.ribo_file, None, None, args.read_offset) 85 ribo_file=args.ribo_file, read_offset=args.read_offset)
86 86
87 def test_is_fasta_valid(self): 87 def test_is_fasta_valid(self):
88 """A valid FASTA file can be opened with pysam.FastaFile.""" 88 """A valid FASTA file can be opened with pysam.FastaFile."""
89 self.assertTrue(ribocore.is_fasta_valid(TRANSCRIPTOME_FASTA)) 89 self.assertTrue(ribocore.is_fasta_valid(TRANSCRIPTOME_FASTA))
90 90
114 def test_invalid_rna_file(self): 114 def test_invalid_rna_file(self):
115 """If an invalid RNA file is provided, generate an error message""" 115 """If an invalid RNA file is provided, generate an error message"""
116 # using transcriptome FASTA file as the invalid RNA file for test 116 # using transcriptome FASTA file as the invalid RNA file for test
117 parser = riboplot.create_parser() 117 parser = riboplot.create_parser()
118 args = parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, '-n', TRANSCRIPTOME_FASTA]) 118 args = parser.parse_args(['-b', RIBO_FILE, '-f', TRANSCRIPTOME_FASTA, '-t', TRANSCRIPT_NAME, '-n', TRANSCRIPTOME_FASTA])
119 self.assertRaises(ValueError, ribocore.check_optional_arguments, args.ribo_file, args.rna_file) 119 self.assertRaises(ValueError, ribocore.check_optional_arguments, ribo_file=args.ribo_file, rna_file=args.rna_file)
120 120
121 class RiboPlotTestCase(unittest.TestCase): 121 class RiboPlotTestCase(unittest.TestCase):
122 122
123 def test_get_codon_positions(self): 123 def test_get_codon_positions(self):
124 """Get codon positions in all frames given a sequence.""" 124 """Get codon positions in all frames given a sequence."""