def test_get_table_count_2(self): """Verify the correct number of phages is returned when the database contains one genome.""" phage_data = test_data_utils.get_trixie_phage_data() test_db_utils.insert_data(PHAGE, phage_data) count = mysqldb_basic.get_table_count(self.engine, TABLE) self.assertEqual(count, 1)
def test_change_version_3(self): """Verify the version is decremented by 5.""" data = {"Version": 10, "SchemaVersion": 1} test_db_utils.insert_data(VERSION, data) mysqldb.change_version(self.engine, amount=-5) result = test_db_utils.get_data(test_db_utils.version_table_query) output_value = result[0]["Version"] self.assertEqual(output_value, 5)
def test_scalar_1(self): """Verify dictionary is returned when there are two rows of data.""" phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "Trixie" phage_data2["PhageID"] = "L5" test_db_utils.insert_data(PHAGE, phage_data1) test_db_utils.insert_data(PHAGE, phage_data2) count = mysqldb_basic.scalar(self.engine, COUNT_QUERY) self.assertEqual(count, 2)
def test_first_1(self): """Verify dictionary is returned when there are two rows of data.""" phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "Trixie" phage_data2["PhageID"] = "L5" test_db_utils.insert_data(PHAGE, phage_data1) test_db_utils.insert_data(PHAGE, phage_data2) data = mysqldb_basic.first(self.engine, PHAGE_QUERY, return_dict=True) self.assertTrue(COLUMN in data.keys())
def setUp(self): self.engine = sqlalchemy.create_engine(ENGINE_STRING, echo=False) phage_data = test_data_utils.get_trixie_phage_data() phage_data["PhageID"] = "Trixie" phage_data["HostGenus"] = "Mycobacterium" phage_data["Accession"] = "ABC123" phage_data["Cluster"] = "A" phage_data["Subcluster"] = "A1" phage_data["Sequence"] = "atcg" phage_data["Length"] = 6 phage_data["DateLastModified"] = constants.EMPTY_DATE test_db_utils.insert_data(PHAGE, phage_data)
def test_first_2(self): """Verify tuple is returned when there are two rows of data.""" phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "Trixie" phage_data2["PhageID"] = "L5" test_db_utils.insert_data(PHAGE, phage_data1) test_db_utils.insert_data(PHAGE, phage_data2) data = mysqldb_basic.first(self.engine, PHAGE_QUERY, return_dict=False) with self.subTest(): self.assertIsInstance(data, tuple) with self.subTest(): self.assertTrue(len(data) > 1)
def test_get_first_row_data_3(self): """Verify dictionary is returned when there are two rows of data.""" phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "Trixie" phage_data2["PhageID"] = "L5" test_db_utils.insert_data(PHAGE, phage_data1) test_db_utils.insert_data(PHAGE, phage_data2) # Get all data from table just to confirm there is more than one row. all_data = test_db_utils.get_data(test_db_utils.phage_table_query) data = mysqldb_basic.get_first_row_data(self.engine, TABLE) with self.subTest(): self.assertEqual(len(all_data), 2) with self.subTest(): self.assertTrue(COLUMN in data.keys())
def test_create_update_4(self): """Verify Gene table statement is created correctly.""" # First add gene Trixie_1 to the database. gene_data = test_data_utils.get_trixie_gene_data() gene_data["PhageID"] = "Trixie" gene_data["Notes"] = "none" gene_data["GeneID"] = "Trixie_1" test_db_utils.insert_data(GENE, gene_data) # Second run the update statement. statement = mysqldb.create_update("gene", "Notes", "Repressor", "GeneID", "Trixie_1") test_db_utils.execute(statement) result = test_db_utils.get_data(GENE_QUERY2) results = result[0] exp = "UPDATE gene SET Notes = 'Repressor' WHERE GeneID = 'Trixie_1';" with self.subTest(): self.assertEqual(statement, exp) with self.subTest(): self.assertEqual(results["Notes"].decode("utf-8"), "Repressor")
def setUpClass(self): test_db_utils.create_empty_test_db(db=DB2) test_db_utils.create_empty_test_db() phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data3 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "L5" phage_data2["PhageID"] = "Trixie" phage_data3["PhageID"] = "D29" phage_data1["HostGenus"] = "Mycobacterium" phage_data2["HostGenus"] = "Mycobacterium" phage_data3["HostGenus"] = "Gordonia" phage_data1["Accession"] = "ABC123" phage_data2["Accession"] = "XYZ456" phage_data3["Accession"] = "" phage_data1["Cluster"] = "A" phage_data2["Cluster"] = "B" phage_data3["Cluster"] = "NULL" phage_data1["Subcluster"] = "A1" phage_data2["Subcluster"] = "NULL" phage_data3["Subcluster"] = "NULL" phage_data1["Sequence"] = "atcg" phage_data2["Sequence"] = "AATT" phage_data3["Sequence"] = "GGCC" phage_data1["Length"] = 6 phage_data2["Length"] = 4 phage_data3["Length"] = 5 phage_data1["DateLastModified"] = constants.EMPTY_DATE phage_data2["DateLastModified"] = constants.EMPTY_DATE phage_data3["DateLastModified"] = constants.EMPTY_DATE phage_data_list = [phage_data1, phage_data2, phage_data3] for phage_data in phage_data_list: test_db_utils.insert_data(PHAGE, phage_data) gene_data1 = test_data_utils.get_trixie_gene_data() gene_data2 = test_data_utils.get_trixie_gene_data() gene_data3 = test_data_utils.get_trixie_gene_data() gene_data4 = test_data_utils.get_trixie_gene_data() gene_data1["PhageID"] = "Trixie" gene_data2["PhageID"] = "Trixie" gene_data3["PhageID"] = "Trixie" gene_data4["PhageID"] = "D29" gene_data1["GeneID"] = "Trixie_1" gene_data2["GeneID"] = "Trixie_2" gene_data3["GeneID"] = "Trixie_3" gene_data4["GeneID"] = "D29_1" gene_data_list = [gene_data1, gene_data2, gene_data3, gene_data4] for gene_data in gene_data_list: test_db_utils.insert_data(GENE, gene_data)
def test_get_first_row_data_2(self): """Verify dictionary is returned when there is one row of data.""" phage_data = test_data_utils.get_trixie_phage_data() test_db_utils.insert_data(PHAGE, phage_data) data = mysqldb_basic.get_first_row_data(self.engine, TABLE) self.assertTrue(COLUMN in data.keys())
def setUp(self): test_db_utils.create_empty_test_db(db=DB2) self.alchemist2 = AlchemyHandler(database=DB2, username=USER, password=PWD) self.alchemist2.build_engine() self.engine2 = self.alchemist2.engine test_db_utils.create_empty_test_db() self.alchemist1 = AlchemyHandler(database=DB, username=USER, password=PWD) self.alchemist1.build_engine() self.engine1 = self.alchemist1.engine phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data3 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "L5" phage_data2["PhageID"] = "Trixie" phage_data3["PhageID"] = "D29" phage_data1["HostGenus"] = "Mycobacterium" phage_data2["HostGenus"] = "Mycobacterium" phage_data3["HostGenus"] = "Gordonia" phage_data1["Accession"] = "ABC123" phage_data2["Accession"] = "XYZ456" phage_data3["Accession"] = "" phage_data1["Cluster"] = "A" phage_data2["Cluster"] = "B" phage_data3["Cluster"] = "NULL" phage_data1["Subcluster"] = "A1" phage_data2["Subcluster"] = "NULL" phage_data3["Subcluster"] = "NULL" phage_data1["Sequence"] = "atcg" phage_data2["Sequence"] = "AATT" phage_data3["Sequence"] = "GGCC" phage_data1["Length"] = 6 phage_data2["Length"] = 4 phage_data3["Length"] = 5 phage_data1["DateLastModified"] = constants.EMPTY_DATE phage_data2["DateLastModified"] = constants.EMPTY_DATE phage_data3["DateLastModified"] = constants.EMPTY_DATE phage_data_list = [phage_data1, phage_data2, phage_data3] for phage_data in phage_data_list: test_db_utils.insert_data(PHAGE, phage_data) gene_data1 = test_data_utils.get_trixie_gene_data() gene_data2 = test_data_utils.get_trixie_gene_data() gene_data3 = test_data_utils.get_trixie_gene_data() gene_data4 = test_data_utils.get_trixie_gene_data() gene_data1["PhageID"] = "Trixie" gene_data2["PhageID"] = "Trixie" gene_data3["PhageID"] = "Trixie" gene_data4["PhageID"] = "D29" gene_data1["GeneID"] = "Trixie_1" gene_data2["GeneID"] = "Trixie_2" gene_data3["GeneID"] = "Trixie_3" gene_data4["GeneID"] = "D29_1" gene_data_list = [gene_data1, gene_data2, gene_data3, gene_data4] for gene_data in gene_data_list: test_db_utils.insert_data(GENE, gene_data)
def setUp(self): self.engine = sqlalchemy.create_engine(ENGINE_STRING, echo=False) test_db_utils.create_empty_test_db() phage_data1 = test_data_utils.get_trixie_phage_data() phage_data2 = test_data_utils.get_trixie_phage_data() phage_data3 = test_data_utils.get_trixie_phage_data() phage_data1["PhageID"] = "L5" phage_data2["PhageID"] = "Trixie" phage_data3["PhageID"] = "D29" phage_data1["HostGenus"] = "Mycobacterium" phage_data2["HostGenus"] = "Mycobacterium" phage_data3["HostGenus"] = "Gordonia" phage_data1["Accession"] = "ABC123" phage_data2["Accession"] = "XYZ456" phage_data3["Accession"] = "" phage_data1["Cluster"] = "A" phage_data2["Cluster"] = "B" phage_data3["Cluster"] = "NULL" phage_data1["Subcluster"] = "A1" phage_data2["Subcluster"] = "NULL" phage_data3["Subcluster"] = "NULL" phage_data1["Sequence"] = "atcg" phage_data2["Sequence"] = "AATT" phage_data3["Sequence"] = "GGCC" phage_data1["Length"] = 6 phage_data2["Length"] = 4 phage_data3["Length"] = 5 phage_data1["DateLastModified"] = constants.EMPTY_DATE phage_data2["DateLastModified"] = constants.EMPTY_DATE phage_data3["DateLastModified"] = constants.EMPTY_DATE phage_data_list = [phage_data1, phage_data2, phage_data3] for phage_data in phage_data_list: test_db_utils.insert_data(PHAGE, phage_data) gene_data1 = test_data_utils.get_trixie_gene_data() gene_data2 = test_data_utils.get_trixie_gene_data() gene_data3 = test_data_utils.get_trixie_gene_data() gene_data4 = test_data_utils.get_trixie_gene_data() gene_data1["PhageID"] = "Trixie" gene_data2["PhageID"] = "Trixie" gene_data3["PhageID"] = "Trixie" gene_data4["PhageID"] = "D29" gene_data1["GeneID"] = "Trixie_1" gene_data2["GeneID"] = "Trixie_2" gene_data3["GeneID"] = "Trixie_3" gene_data4["GeneID"] = "D29_1" gene_data_list = [gene_data1, gene_data2, gene_data3, gene_data4] for gene_data in gene_data_list: test_db_utils.insert_data(GENE, gene_data) trna_data1 = test_data_utils.get_trixie_trna_data() trna_data2 = test_data_utils.get_trixie_trna_data() trna_data3 = test_data_utils.get_trixie_trna_data() trna_data1["PhageID"] = "Trixie" trna_data2["PhageID"] = "Trixie" trna_data3["PhageID"] = "D29" trna_data1["GeneID"] = "Trixie_4" trna_data2["GeneID"] = "Trixie_5" trna_data3["GeneID"] = "D29_1" trna_data_list = [trna_data1, trna_data2, trna_data3] for trna_data in trna_data_list: test_db_utils.insert_data(TRNA, trna_data) tmrna_data1 = test_data_utils.get_trixie_tmrna_data() tmrna_data2 = test_data_utils.get_trixie_tmrna_data() tmrna_data1["PhageID"] = "Trixie" tmrna_data2["PhageID"] = "L5" tmrna_data1["GeneID"] = "Trixie_6" tmrna_data2["GeneID"] = "L5_1" tmrna_data_list = [tmrna_data1, tmrna_data2] for tmrna_data in tmrna_data_list: test_db_utils.insert_data(TMRNA, tmrna_data)