From d0e6704539b3ba28dd3f18f36ee1424596799d22 Mon Sep 17 00:00:00 2001 From: Joshua Shorenstein Date: Wed, 18 Jun 2014 14:36:42 -0600 Subject: [PATCH] add datatype lookup for processed data --- qiita_db/data.py | 13 +++++++++++++ qiita_db/test/test_data.py | 4 ++++ 2 files changed, 17 insertions(+) diff --git a/qiita_db/data.py b/qiita_db/data.py index 59c8f1924..21a0e6cf7 100644 --- a/qiita_db/data.py +++ b/qiita_db/data.py @@ -453,3 +453,16 @@ def preprocessed_data(self): "SELECT preprocessed_data_id FROM qiita.{0} WHERE " "processed_data_id=%s".format(self._table), [self._id])[0] + + @property + def data_type(self): + r"""The data_type of the data used""" + conn_handler = SQLConnectionHandler() + sql = ("SELECT DISTINCT DT.data_type FROM qiita.processed_data PD " + "JOIN qiita.preprocessed_data PPD on PD.preprocessed_data_id " + "= PPD.preprocessed_data_id JOIN qiita.raw_data RD on " + "PPD.raw_data_id = RD.raw_data_id " + "JOIN qiita.common_prep_info CPI ON RD.raw_data_id = " + "CPI.raw_data_id JOIN qiita.data_type DT ON CPI.data_type_id = " + "DT.data_type_id WHERE PD.processed_data_id = %s") + return conn_handler.execute_fetchone(sql, [self._id])[0] diff --git a/qiita_db/test/test_data.py b/qiita_db/test/test_data.py index ef5375f64..03e38c632 100644 --- a/qiita_db/test/test_data.py +++ b/qiita_db/test/test_data.py @@ -339,6 +339,10 @@ def test_preprocessed_data(self): pd = ProcessedData(1) self.assertEqual(pd.preprocessed_data, 1) + def test_data_type(self): + pd = ProcessedData(1) + self.assertEqual(pd.data_type, "18S") + if __name__ == '__main__': main()