예제 #1
0
 def __init__(self, opt_prefix="--rg-", *args, **kwargs):
     ReadGroup.__init__(self, *args, **kwargs)
     self._opt_prefix = opt_prefix
예제 #2
0
 def test_rg_disallowed_key(self):
     """Test setting a read group object with a key not present in allowed keys"""
     rg = ReadGroup("(?P<PU1>[0-9])_(?P<DATE>[0-9]+)_(?P<PU2>[A-Z0-9]+XX)_(?P<SM>P[0-9]+_[0-9]+)")
     s = (rg.parse("../data/projects/J.Doe_00_01/P001_101/121015_BB002BBBXX/1_121015_BB002BBBXX_P001_101_1.fastq.gz"))
예제 #3
0
 def test_os_sep(self, mock_re):
     mock_re.return_value = None
     rg = ReadGroup("(?P<SM>[a-zA-Z0-9]+)/(?P<PU>[A-Za-z0-9]+)/(?P<PU1>[0-9])_(?P<DT>[0-9]+)_(?P<PU2>[A-Z0-9]+XX)_(?P=SM)")
     rg.parse("/data/projects/J.Doe_00_01/P001_101/121015_BB002BBBXX/1_121015_BB002BBBXX_P001_101_1.fastq.gz", "")
     (args, kw) = mock_re.call_args
     self.assertTrue(args[0].startswith('(?:[\\.\\w\\/]+)?\\/'))
예제 #4
0
 def test_rg_parse_illumina_like(self):
     """Test parsing illumina-like-based file names"""
     rg = ReadGroup("(?P<SM>[a-zA-Z0-9_]+)/(?P<DT>[0-9]+)_(?P<PU2>[A-Z0-9]+XX)/(?P<PU1>[0-9])_(?P=DT)_(?P=PU2)_(?P=SM)")
     rg.parse("../data/projects/J.Doe_00_01/P001_101/121015_BB002BBBXX/1_121015_BB002BBBXX_P001_101_1.fastq.gz")
     self.assertEqual("--date 2012-10-15 --identifier 1_121015_BB002BBBXX_P001_101 --platform-unit 1_BB002BBBXX --sample P001_101", str(rg))