Exemple #1
0
 def test_add_network(self):
     """
     Tests if the network file is added
     to the database.
     :return:
     """
     conn_object = BiomConnection()
     conn_object.create_tables()
     conn_object.add_biom(testbiom, 'banana')
     conn_object = IoConnection()
     conn_object.add_network(g, 'banana', 'banana')
     conn = psycopg2.connect(
         **{
             "host": "localhost",
             "database": "test",
             "user": "******",
             "password": "******"
         })
     cur = conn.cursor()
     cur.execute("SELECT * from edges;")
     result = cur.fetchall()
     # 3 edges in g
     cur.close()
     conn.close()
     conn_object.delete_tables()
     self.assertEqual(len(result), 3)
Exemple #2
0
 def test_add_observations(self):
     """
     Tests whether multiple rows are added to the counts table.
     :return:
     """
     conn_object = BiomConnection()
     conn_object.create_tables()
     conn_object.add_summary(values=('banana', 1, 2))
     conn_object.add_sample(values=('Sample1', 'banana'))
     conn_object.add_taxon(values=[('Listeria', 'banana', 'Bacteria',
                                    'Firmicutes', 'Bacilli', 'Bacillales',
                                    'Listeriaceae', 'Listeria',
                                    'monocytogenes'),
                                   ('Listeria2', 'banana', 'Bacteria',
                                    'Firmicutes', 'Bacilli', 'Bacillales',
                                    'Listeriaceae', 'Listeria',
                                    'monocytogenes')])
     conn_object.add_observation(
         values=[('banana', 'Listeria', 'Sample1',
                  0.5), ('banana', 'Listeria2', 'Sample1', 0.75)])
     conn = psycopg2.connect(
         **{
             "host": "localhost",
             "database": "test",
             "user": "******",
             "password": "******"
         })
     cur = conn.cursor()
     cur.execute("SELECT count from counts;")
     result = cur.fetchall()
     self.assertEqual(len(result), 2)
     cur.close()
     conn.close()
     conn_object.delete_tables()
Exemple #3
0
 def test_observation_error(self):
     """
     Tests if the query correctly reports an error
     when a taxon is not present in the taxonomy table.
     :return:
     """
     conn_object = BiomConnection()
     conn_object.create_tables()
     conn_object.add_summary(values=('banana', 1, 2))
     conn_object.add_sample(values=('Sample1', 'banana'))
     conn_object.add_taxon(values=('Listeria', 'banana', 'Bacteria',
                                   'Firmicutes', 'Bacilli', 'Bacillales',
                                   'Listeriaceae', 'Listeria',
                                   'monocytogenes'))
     self.assertRaises(
         psycopg2.Error,
         conn_object.add_observation(values=('banana', 'Streptococcus',
                                             'Sample1', 0.5)),
     )
     # long format table of 5 * 6 observations
     conn_object.delete_tables()
Exemple #4
0
 def test_add_meta(self):
     """
     Tests whether a row is added to the meta table.
     :return:
     """
     conn_object = BiomConnection()
     conn_object.create_tables()
     conn_object.add_summary(values=('banana', 1, 2))
     conn_object.add_sample(values=('Sample1', 'banana'))
     conn_object.add_meta(values=('Sample1', 'banana', 'colour', 'yellow',
                                  None))
     conn = psycopg2.connect(
         **{
             "host": "localhost",
             "database": "test",
             "user": "******",
             "password": "******"
         })
     cur = conn.cursor()
     cur.execute("SELECT property from meta;")
     result = cur.fetchall()
     # long format table of 5 * 6 observations
     self.assertEqual(result[0][0], 'colour')
     cur.close()
     conn.close()
     conn_object.delete_tables()