예제 #1
0
 def test_parse_genome_data_17(self):
     """Verify retrieved flat file data is parsed correctly with no
     filepath provided."""
     gnm = flat_files.parse_genome_data(self.record, gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "")
     with self.subTest():
         self.assertEqual(gnm.name, "KatherineG")
예제 #2
0
 def test_parse_genome_data_19(self):
     """Verify retrieved flat file data is parsed correctly with
     modified translation table."""
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file",
                                        translation_table=1)
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.translation_table, 1)
예제 #3
0
 def test_parse_genome_data_9(self):
     """Verify retrieved flat file data is parsed correctly with no
     references."""
     self.annotation_dict.pop("references")
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.authors, "")
예제 #4
0
 def test_parse_genome_data_6(self):
     """Verify retrieved flat file data is parsed correctly with more
     than one accession."""
     self.annotation_dict["accessions"] = [" ABC123.1 ", "TUV456"]
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.accession, "ABC123")
예제 #5
0
 def test_parse_genome_data_18(self):
     """Verify retrieved flat file data is parsed correctly with no
     date provided."""
     self.annotation_dict.pop("date")
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     self.exp_date = constants.EMPTY_DATE
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.date, self.exp_date)
예제 #6
0
 def test_parse_genome_data_10(self):
     """Verify retrieved flat file data is parsed correctly with
     references that contain no authors."""
     ref1 = test_data_utils.create_reference()
     ref2 = test_data_utils.create_reference()
     self.annotation_dict["references"] = [ref1, ref2]
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.authors, "")
예제 #7
0
 def test_parse_genome_data_8(self):
     """Verify retrieved flat file data is parsed correctly with no
     record source."""
     self.annotation_dict.pop("source")
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.source, "")
     with self.subTest():
         self.assertEqual(gnm._source_name, "")
     with self.subTest():
         self.assertEqual(gnm._source_host_genus, "")
예제 #8
0
 def test_parse_genome_data_20(self):
     """Verify retrieved flat file data is parsed correctly with
     id field and host genus field specified as non-standard fields."""
     gnm = flat_files.parse_genome_data(
         self.record,
         self.filepath,
         gnm_type="flat_file",
         genome_id_field="_description_name",
         host_genus_field="_description_host_genus")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.id, "L5")
     with self.subTest():
         self.assertEqual(gnm.host_genus, "Mycobacterium")
예제 #9
0
 def test_parse_genome_data_11(self):
     """Verify retrieved flat file data is parsed correctly with an
     empty sequence."""
     print(self.record.seq)
     self.record.seq = Seq("")
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.seq, "")
     with self.subTest():
         self.assertEqual(gnm.length, 0)
     with self.subTest():
         self.assertEqual(gnm.gc, -1)
예제 #10
0
 def test_parse_genome_data_7(self):
     """Verify retrieved flat file data is parsed correctly with no
     record description."""
     self.record = SeqRecord(seq=Seq("atgc"),
                             id="OPQ123.1",
                             name="XYZ123",
                             annotations=self.annotation_dict,
                             features=self.feature_list)
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.description, "")
     with self.subTest():
         self.assertEqual(gnm._description_name, "")
     with self.subTest():
         self.assertEqual(gnm._description_host_genus, "")
예제 #11
0
 def test_parse_genome_data_4(self):
     """Verify retrieved flat file data is parsed correctly with no
     record id."""
     self.record = SeqRecord(
         seq=Seq("atgc"),
         name="XYZ123",
         annotations=self.annotation_dict,
         description=self.description,
         features=self.feature_list,
     )
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file",
                                        genome_id_field="")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.id, "")
     with self.subTest():
         self.assertEqual(gnm.name, "XYZ123")
예제 #12
0
 def test_parse_genome_data_12(self):
     """Verify retrieved flat file data is parsed correctly with no
     CDS features."""
     self.feature_list = [
         self.seqfeature2, self.seqfeature3, self.seqfeature7
     ]
     self.record.features = self.feature_list
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(len(gnm.cds_features), 0)
     with self.subTest():
         self.assertEqual(len(gnm.source_features), 2)
     with self.subTest():
         self.assertEqual(len(gnm.trna_features), 1)
     with self.subTest():
         self.assertEqual(gnm._cds_features_tally, 0)
예제 #13
0
 def test_parse_genome_data_16(self):
     """Verify retrieved flat file data is parsed correctly with no
     features."""
     self.record.features = []
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(len(gnm.cds_features), 0)
     with self.subTest():
         self.assertEqual(len(gnm.source_features), 0)
     with self.subTest():
         self.assertEqual(len(gnm.trna_features), 0)
     with self.subTest():
         self.assertEqual(gnm._cds_features_tally, 0)
     with self.subTest():
         self.assertEqual(gnm._source_features_tally, 0)
     with self.subTest():
         self.assertEqual(gnm._trna_features_tally, 0)
     with self.subTest():
         self.assertEqual(gnm._tmrna_features_tally, 0)
예제 #14
0
 def test_parse_genome_data_1(self):
     """Verify retrieved flat file data is parsed correctly."""
     gnm = flat_files.parse_genome_data(self.record,
                                        self.filepath,
                                        gnm_type="flat_file")
     with self.subTest():
         self.assertEqual(gnm.filename, "Phage_ZZZ")
     with self.subTest():
         self.assertEqual(gnm.name, "KatherineG")
     with self.subTest():
         self.assertEqual(gnm.organism, self.organism)
     with self.subTest():
         self.assertEqual(gnm._organism_name, "KatherineG")
     with self.subTest():
         self.assertEqual(gnm._organism_host_genus, "Gordonia")
     with self.subTest():
         self.assertEqual(gnm.accession, "ABC123")
     with self.subTest():
         self.assertEqual(gnm.description, self.description)
     with self.subTest():
         self.assertEqual(gnm._description_name, "L5")
     with self.subTest():
         self.assertEqual(gnm._description_host_genus, "Mycobacterium")
     with self.subTest():
         self.assertEqual(gnm.source, self.source)
     with self.subTest():
         self.assertEqual(gnm._source_name, "phiC31")
     with self.subTest():
         self.assertEqual(gnm._source_host_genus, "Streptomyces")
     with self.subTest():
         self.assertEqual(gnm.authors, "Jane;Doe;Smith")
     with self.subTest():
         self.assertEqual(gnm.seq, "ATGC")
     with self.subTest():
         self.assertEqual(gnm.length, 4)
     with self.subTest():
         self.assertEqual(gnm.gc, 50.00)
     with self.subTest():
         self.assertEqual(gnm.date, self.exp_date)
     with self.subTest():
         self.assertEqual(len(gnm.cds_features), 4)
     with self.subTest():
         self.assertEqual(len(gnm.source_features), 2)
     with self.subTest():
         self.assertEqual(len(gnm.trna_features), 2)
     with self.subTest():
         self.assertEqual(len(gnm.tmrna_features), 2)
     with self.subTest():
         self.assertEqual(gnm._cds_features_tally, 4)
     with self.subTest():
         self.assertEqual(gnm._source_features_tally, 2)
     with self.subTest():
         self.assertEqual(gnm._trna_features_tally, 2)
     with self.subTest():
         self.assertEqual(gnm._tmrna_features_tally, 2)
     with self.subTest():
         self.assertEqual(gnm.translation_table, 11)
     with self.subTest():
         self.assertEqual(gnm.id, "KatherineG")
     with self.subTest():
         self.assertEqual(gnm.host_genus, "Gordonia")
     with self.subTest():
         self.assertEqual(gnm.type, "flat_file")
     with self.subTest():
         self.assertEqual(gnm.cds_features[0].genome_id, "KatherineG")
     with self.subTest():
         self.assertEqual(gnm.cds_features[0].id, "KatherineG_CDS_1")
     with self.subTest():
         self.assertEqual(gnm.cds_features[1].id, "KatherineG_CDS_4")
     with self.subTest():
         self.assertEqual(gnm.cds_features[2].id, "KatherineG_CDS_3")
     with self.subTest():
         self.assertEqual(gnm.cds_features[3].id, "KatherineG_CDS_2")
     with self.subTest():
         self.assertEqual(gnm.cds_features[0].start, 2)
     with self.subTest():
         self.assertEqual(gnm.cds_features[0].stop, 10)
     with self.subTest():
         self.assertEqual(gnm.cds_features[0].genome_length, 4)
     with self.subTest():
         self.assertEqual(gnm.cds_features[1].start, 152829)
     with self.subTest():
         self.assertEqual(gnm.cds_features[1].stop, 4)
     with self.subTest():
         self.assertEqual(gnm.cds_features[1].genome_length, 4)
     with self.subTest():
         self.assertEqual(gnm.cds_features[2].start, 9)
     with self.subTest():
         self.assertEqual(gnm.cds_features[2].stop, 50)
     with self.subTest():
         self.assertEqual(gnm.cds_features[3].start, 9)
     with self.subTest():
         self.assertEqual(gnm.cds_features[3].stop, 30)
     with self.subTest():
         self.assertEqual(gnm.source_features[0].genome_id, "KatherineG")
     with self.subTest():
         self.assertEqual(gnm.source_features[0].start, 1)
     with self.subTest():
         self.assertEqual(gnm.source_features[0].stop, 11000)
     with self.subTest():
         self.assertEqual(gnm.source_features[0].id, "KatherineG_SRC_2")
     with self.subTest():
         self.assertEqual(gnm.source_features[1].id, "KatherineG_SRC_1")
     with self.subTest():
         self.assertEqual(gnm.trna_features[0].start, 5000)
     with self.subTest():
         self.assertEqual(gnm.trna_features[0].stop, 6000)
     with self.subTest():
         self.assertEqual(gnm.trna_features[0].genome_length, 4)
     with self.subTest():
         self.assertEqual(gnm.trna_features[0].id, "KatherineG_TRNA_1")
     with self.subTest():
         self.assertEqual(gnm.trna_features[1].genome_length, 4)
     with self.subTest():
         self.assertEqual(gnm.trna_features[1].id, "KatherineG_TRNA_2")
     with self.subTest():
         self.assertEqual(gnm.tmrna_features[0].start, 50000)
     with self.subTest():
         self.assertEqual(gnm.tmrna_features[0].stop, 60000)
     with self.subTest():
         self.assertEqual(gnm.tmrna_features[0].genome_length, 4)
     with self.subTest():
         self.assertEqual(gnm.tmrna_features[0].id, "KatherineG_TMRNA_1")
     with self.subTest():
         self.assertEqual(gnm.tmrna_features[1].genome_length, 4)
     with self.subTest():
         self.assertEqual(gnm.tmrna_features[1].id, "KatherineG_TMRNA_2")