コード例 #1
0
ファイル: test_flat_files.py プロジェクト: tmavrich/pdm_utils
    def setUp(self):
        self.string1 = "Mycobacterium phage Trixie"
        self.string2 = "Mycobacterium smegmatis"
        self.string3 = "Gordonia terrae"
        self.qualifier_dict = {
            "organism": [self.string1],
            "host": [self.string2],
            "lab_host": [self.string3]
        }

        self.seqfeature = test_data_utils.create_1_part_seqfeature(
            2, 10, 1, "source", qualifiers=self.qualifier_dict)
コード例 #2
0
    def setUp(self):
        self.qualifier_dict = {
            "locus_tag": ["SEA_L5_1"],
            "translation": ["ABCDE"],
            "transl_table": ["11"],
            "product": [" gp3; terminase "],
            "function": [" orf4; repressor "],
            "note": [" ORF5; lysin "],
            "gene": ["GP2"]
        }

        self.seqfeature = test_data_utils.create_1_part_seqfeature(
            2, 10, 1, "CDS", qualifiers=self.qualifier_dict)
コード例 #3
0
 def test_parse_coordinates_10(self):
     """Verify non-compound location with fuzzy stop coordinate
     is parsed correctly."""
     seqfeature = test_data_utils.create_1_part_seqfeature(2,
                                                           10,
                                                           1,
                                                           "CDS",
                                                           fuzzy="stop")
     start, stop, parts = flat_files.parse_coordinates(seqfeature)
     with self.subTest():
         self.assertEqual(start, 2)
     with self.subTest():
         self.assertEqual(stop, -1)
     with self.subTest():
         self.assertEqual(parts, 1)
コード例 #4
0
 def test_parse_cds_seqfeature_10(self):
     """Verify CDS feature is parsed with fuzzy coordinates."""
     seqfeature = test_data_utils.create_1_part_seqfeature(
         2, 10, 1, "CDS", fuzzy="start", qualifiers=self.qualifier_dict)
     cds_ftr = flat_files.parse_cds_seqfeature(seqfeature)
     with self.subTest():
         self.assertEqual(cds_ftr.locus_tag, "SEA_L5_1")
     with self.subTest():
         self.assertEqual(cds_ftr.orientation, "F")
     with self.subTest():
         self.assertEqual(cds_ftr.start, -1)
     with self.subTest():
         self.assertEqual(cds_ftr.stop, 10)
     with self.subTest():
         self.assertEqual(cds_ftr.parts, 1)
     with self.subTest():
         self.assertEqual(cds_ftr.coordinate_format, "0_half_open")
     with self.subTest():
         self.assertEqual(cds_ftr.length, 18)
コード例 #5
0
ファイル: test_flat_files.py プロジェクト: tmavrich/pdm_utils
    def setUp(self):
        self.seqfeature1 = test_data_utils.create_1_part_seqfeature(
            2, 10, 1, "CDS")
        self.seqfeature2 = test_data_utils.create_1_part_seqfeature(
            5000, 6000, 1, "tRNA")
        self.seqfeature3 = test_data_utils.create_1_part_seqfeature(
            1, 11000, 1, "source")
        self.seqfeature7 = test_data_utils.create_1_part_seqfeature(
            1, 9000, 1, "source")

        # Wrap-around feature, directly copied from
        # Biopython-parsed Alice flat file.
        # start1 = 152829, stop1 = 153401, start2 = 0, stop2 = 4, strand = 1
        self.seqfeature4 = test_data_utils.get_alice_cds_252_seqfeature()
        self.seqfeature5 = test_data_utils.create_1_part_seqfeature(
            9, 50, -1, "CDS")
        self.seqfeature6 = test_data_utils.create_1_part_seqfeature(
            9, 30, 1, "CDS")
        self.feature_list = [
            self.seqfeature1, self.seqfeature2, self.seqfeature3,
            self.seqfeature4, self.seqfeature5, self.seqfeature6,
            self.seqfeature7
        ]
        self.reference1 = test_data_utils.create_reference("Jane")
        self.reference2 = test_data_utils.create_reference("Doe")
        self.reference3 = test_data_utils.create_reference("Smith")
        self.refs_list = [self.reference1, self.reference2, self.reference3]

        self.description = "Mycobacterium phage L5 complete genome"
        self.organism = "Gordonia phage KatherineG"
        self.source = "Streptomyces phage phiC31"
        self.date = "23-JAN-2014"
        self.annotation_dict = {
            "accessions": [" ABC123.1 "],
            "source": self.source,
            "organism": self.organism,
            "references": self.refs_list,
            "date": self.date
        }
        self.record = SeqRecord(seq=Seq("atgc"),
                                id="OPQ123.1",
                                name="XYZ123",
                                annotations=self.annotation_dict,
                                description=self.description,
                                features=self.feature_list)

        self.filepath = Path("/path/to/file/Phage_ZZZ.gb")
        self.exp_date = datetime.strptime(self.date, '%d-%b-%Y')
コード例 #6
0
 def test_create_seqfeature_dictionary_3(self):
     """Verify feature dictionary is constructed correctly with
     several different feature types."""
     ftr1 = test_data_utils.create_1_part_seqfeature(2, 10, 1, "CDS")
     ftr2 = test_data_utils.create_1_part_seqfeature(2, 10, 1, "tRNA")
     ftr3 = test_data_utils.create_1_part_seqfeature(2, 10, 1, "tmRNA")
     ftr4 = test_data_utils.create_1_part_seqfeature(2, 10, 1, "other")
     ftr5 = test_data_utils.create_1_part_seqfeature(2, 10, 1, "gene")
     ftr6 = test_data_utils.create_1_part_seqfeature(2, 10, 1, "CDS")
     feature_list = [ftr1, ftr2, ftr3, ftr4, ftr5, ftr6]
     feature_dict = flat_files.create_seqfeature_dictionary(feature_list)
     with self.subTest():
         self.assertEqual(len(feature_dict.keys()), 5)
     with self.subTest():
         self.assertEqual(len(feature_dict["CDS"]), 2)
     with self.subTest():
         self.assertEqual(len(feature_dict["tRNA"]), 1)
     with self.subTest():
         self.assertEqual(len(feature_dict["tmRNA"]), 1)
     with self.subTest():
         self.assertEqual(len(feature_dict["other"]), 1)
     with self.subTest():
         self.assertEqual(len(feature_dict["gene"]), 1)