Exemple #1
0
 def args(self):
     cls = self.parent()[0]
     seq = self.threeprime
     if determine_read_type(self.input()[0].path, self.read1_suffix,
                            self.read2_suffix) == 2:
         seq = self.fiveprime
     return [
         "-a", seq,
         self.input()[0], "-o",
         self.output(), ">",
         rreplace(self.input()[0].path, str(cls().suffix[0]),
                  self.label + self.suffix[1], 1)
     ]
Exemple #2
0
 def requires(self):
     cls = self.parent()[0]
     source = self.source()[0]
     # Ugly hack for 1 -> 2 dependency: works but should be dealt with otherwise
     if str(fullclassname(cls)) in ["ratatosk.lib.utils.misc.ResyncMates"]:
         rt = determine_read_type(source, self.read1_suffix, self.read2_suffix)
         if rt == 1:
             self.is_read1 = True
             fq1 = source
             fq2 = rreplace(source, self.read1_suffix, self.read2_suffix, 1)
         elif rt == 2:
             self.is_read1 = False
             fq1 = rreplace(source, self.read2_suffix, self.read1_suffix, 1)
             fq2 = source
         retval = [cls(target=[fq1, fq2])]
     else:
         retval = [cls(target=source)]
     if len(self.parent()) > 1:
         retval += [cls(target=source) for cls, source in izip(self.parent()[1:], self.source()[1:])]
     return retval
Exemple #3
0
 def test_determine_read_type(self):
     fn = "sample_index1_1.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 1)
     fn = "sample_index1_2.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 2)
     fn = "4_120924_AC003CCCXX_P001_101_index1_1.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 1)
     fn = "4_120924_AC003CCCXX_P001_101_index1_2.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 2)
     fn = "P001_101_index3_TGACCA_L001_R1_001.fastq.gz"
     rtype = determine_read_type(fn, "_R1_001", "_R2_001")
     self.assertEqual(rtype, 1)
     fn = "P001_101_index3_TGACCA_L001_R2_001.fastq.gz"
     rtype = determine_read_type(fn, "_R1_001", "_R2_001")
     self.assertEqual(rtype, 2)
 def test_determine_read_type(self):
     fn = "sample_index1_1.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 1)
     fn = "sample_index1_2.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 2)
     fn = "4_120924_AC003CCCXX_P001_101_index1_1.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 1)
     fn = "4_120924_AC003CCCXX_P001_101_index1_2.fastq.gz"
     rtype = determine_read_type(fn, "_1", "_2")
     self.assertEqual(rtype, 2)
     fn = "P001_101_index3_TGACCA_L001_R1_001.fastq.gz"
     rtype = determine_read_type(fn, "_R1_001", "_R2_001")
     self.assertEqual(rtype, 1)
     fn = "P001_101_index3_TGACCA_L001_R2_001.fastq.gz"
     rtype = determine_read_type(fn, "_R1_001", "_R2_001")
     self.assertEqual(rtype, 2)
Exemple #5
0
 def args(self):
     cls = self.parent()[0]
     seq = self.threeprime 
     if determine_read_type(self.input()[0].path, self.read1_suffix, self.read2_suffix) == 2:
         seq = self.fiveprime
     return ["-a", seq, self.input()[0], "-o", self.output(), ">", rreplace(self.input()[0].path, str(cls().suffix[0]), self.label + self.suffix[1], 1)]