当前位置: 首页>>代码示例>>Python>>正文


Python Analysis.share方法代码示例

本文整理汇总了Python中qiita_db.analysis.Analysis.share方法的典型用法代码示例。如果您正苦于以下问题:Python Analysis.share方法的具体用法?Python Analysis.share怎么用?Python Analysis.share使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在qiita_db.analysis.Analysis的用法示例。


在下文中一共展示了Analysis.share方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: TestAnalysis

# 需要导入模块: from qiita_db.analysis import Analysis [as 别名]
# 或者: from qiita_db.analysis.Analysis import share [as 别名]
class TestAnalysis(TestCase):
    def setUp(self):
        self.analysis = Analysis(1)
        _, self.fp = get_mountpoint("analysis")[0]
        self.biom_fp = join(self.fp, "1_analysis_18S.biom")
        self.map_fp = join(self.fp, "1_analysis_mapping.txt")

    def tearDown(self):
        with open(self.biom_fp, 'w') as f:
                f.write("")
        with open(self.map_fp, 'w') as f:
                f.write("")

        fp = join(get_mountpoint('analysis')[0][1], 'testfile.txt')
        if exists(fp):
            remove(fp)

        mp = get_mountpoint("processed_data")[0][1]
        study2fp = join(mp, "2_2_study_1001_closed_reference_otu_table.biom")
        if exists(study2fp):
            move(study2fp,
                 join(mp, "2_study_1001_closed_reference_otu_table.biom"))

    def test_lock_check(self):
        for status in ["queued", "running", "public", "completed",
                       "error"]:
            new = Analysis.create(User("[email protected]"), "newAnalysis",
                                  "A New Analysis")
            new.status = status
            with self.assertRaises(QiitaDBStatusError):
                new._lock_check(self.conn_handler)

    def test_lock_check_ok(self):
        self.analysis.status = "in_construction"
        self.analysis._lock_check(self.conn_handler)

    def test_status_setter_checks(self):
        self.analysis.status = "public"
        with self.assertRaises(QiitaDBStatusError):
            self.analysis.status = "queued"

    def test_get_by_status(self):
        self.assertEqual(Analysis.get_by_status('public'), set([]))
        self.analysis.status = "public"
        self.assertEqual(Analysis.get_by_status('public'), {1})

    def test_has_access_public(self):
        self.conn_handler.execute("UPDATE qiita.analysis SET "
                                  "analysis_status_id = 6")
        self.assertTrue(self.analysis.has_access(User("[email protected]")))

    def test_has_access_shared(self):
        self.assertTrue(self.analysis.has_access(User("[email protected]")))

    def test_has_access_private(self):
        self.assertTrue(self.analysis.has_access(User("[email protected]")))

    def test_has_access_admin(self):
        self.assertTrue(self.analysis.has_access(User("[email protected]")))

    def test_has_access_no_access(self):
        self.assertFalse(self.analysis.has_access(User("[email protected]")))

    def test_create(self):
        sql = "SELECT EXTRACT(EPOCH FROM NOW())"
        time1 = float(self.conn_handler.execute_fetchall(sql)[0][0])
        new_id = get_count("qiita.analysis") + 1
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis")
        self.assertEqual(new.id, new_id)
        sql = ("SELECT analysis_id, email, name, description, "
               "analysis_status_id, pmid, EXTRACT(EPOCH FROM timestamp) "
               "FROM qiita.analysis WHERE analysis_id = %s")
        obs = self.conn_handler.execute_fetchall(sql, [new_id])
        self.assertEqual(obs[0][:-1], [new_id, '[email protected]', 'newAnalysis',
                                       'A New Analysis', 1, None])
        self.assertTrue(time1 < float(obs[0][-1]))

    def test_create_parent(self):
        sql = "SELECT EXTRACT(EPOCH FROM NOW())"
        time1 = float(self.conn_handler.execute_fetchall(sql)[0][0])
        new_id = get_count("qiita.analysis") + 1
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis", Analysis(1))
        self.assertEqual(new.id, new_id)
        sql = ("SELECT analysis_id, email, name, description, "
               "analysis_status_id, pmid, EXTRACT(EPOCH FROM timestamp) "
               "FROM qiita.analysis WHERE analysis_id = %s")
        obs = self.conn_handler.execute_fetchall(sql, [new_id])
        self.assertEqual(obs[0][:-1], [new_id, '[email protected]', 'newAnalysis',
                                       'A New Analysis', 1, None])
        self.assertTrue(time1 < float(obs[0][-1]))

        sql = "SELECT * FROM qiita.analysis_chain WHERE child_id = %s"
        obs = self.conn_handler.execute_fetchall(sql, [new_id])
        self.assertEqual(obs, [[1, new_id]])

    def test_create_from_default(self):
        new_id = get_count("qiita.analysis") + 1
        owner = User("[email protected]")
#.........这里部分代码省略.........
开发者ID:RNAer,项目名称:qiita,代码行数:103,代码来源:test_analysis.py

示例2: TestAnalysis

# 需要导入模块: from qiita_db.analysis import Analysis [as 别名]
# 或者: from qiita_db.analysis.Analysis import share [as 别名]
class TestAnalysis(TestCase):
    def setUp(self):
        self.analysis = Analysis(1)

    def test_lock_check(self):
        for status in ["queued", "running", "public", "completed",
                       "error"]:
            new = Analysis.create(User("[email protected]"), "newAnalysis",
                                  "A New Analysis")
            new.status = status
            with self.assertRaises(QiitaDBStatusError):
                new._lock_check(self.conn_handler)

    def test_lock_check_ok(self):
        self.analysis.status = "in_construction"
        self.analysis._lock_check(self.conn_handler)

    def test_status_setter_checks(self):
        self.analysis.status = "public"
        with self.assertRaises(QiitaDBStatusError):
            self.analysis.status = "queued"

    def test_get_public(self):
        self.assertEqual(Analysis.get_public(), [])
        self.analysis.status = "public"
        self.assertEqual(Analysis.get_public(), [1])

    def test_create(self):
        sql = "SELECT EXTRACT(EPOCH FROM NOW())"
        time1 = float(self.conn_handler.execute_fetchall(sql)[0][0])

        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis")
        self.assertEqual(new.id, 3)
        sql = ("SELECT analysis_id, email, name, description, "
               "analysis_status_id, pmid, EXTRACT(EPOCH FROM timestamp) "
               "FROM qiita.analysis WHERE analysis_id = 3")
        obs = self.conn_handler.execute_fetchall(sql)
        self.assertEqual(obs[0][:-1], [3, '[email protected]', 'newAnalysis',
                                       'A New Analysis', 1, None])
        self.assertTrue(time1 < float(obs[0][-1]))

    def test_create_parent(self):
        sql = "SELECT EXTRACT(EPOCH FROM NOW())"
        time1 = float(self.conn_handler.execute_fetchall(sql)[0][0])

        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis", Analysis(1))
        self.assertEqual(new.id, 3)
        sql = ("SELECT analysis_id, email, name, description, "
               "analysis_status_id, pmid, EXTRACT(EPOCH FROM timestamp) "
               "FROM qiita.analysis WHERE analysis_id = 3")
        obs = self.conn_handler.execute_fetchall(sql)
        self.assertEqual(obs[0][:-1], [3, '[email protected]', 'newAnalysis',
                                       'A New Analysis', 1, None])
        self.assertTrue(time1 < float(obs[0][-1]))

        sql = "SELECT * FROM qiita.analysis_chain WHERE child_id = 3"
        obs = self.conn_handler.execute_fetchall(sql)
        self.assertEqual(obs, [[1, 3]])

    def test_retrieve_owner(self):
        self.assertEqual(self.analysis.owner, "[email protected]")

    def test_retrieve_name(self):
        self.assertEqual(self.analysis.name, "SomeAnalysis")

    def test_retrieve_description(self):
        self.assertEqual(self.analysis.description, "A test analysis")

    def test_set_description(self):
        self.analysis.description = "New description"
        self.assertEqual(self.analysis.description, "New description")

    def test_retrieve_samples(self):
        exp = {1: ['SKB8.640193', 'SKD8.640184', 'SKB7.640196',
                   'SKM9.640192', 'SKM4.640180']}
        self.assertEqual(self.analysis.samples, exp)

    def test_retrieve_dropped_samples(self):
        biom_fp = join(get_db_files_base_dir(), "analysis",
                       "1_analysis_18S.biom")
        try:
            samples = {1: ['SKB8.640193', 'SKD8.640184', 'SKB7.640196']}
            self.analysis._build_biom_tables(samples, 100,
                                             conn_handler=self.conn_handler)
            exp = {1: {'SKM4.640180', 'SKM9.640192'}}
            self.assertEqual(self.analysis.dropped_samples, exp)
        finally:
            with open(biom_fp, 'w') as f:
                f.write("")

    def test_retrieve_data_types(self):
        exp = ['18S']
        self.assertEqual(self.analysis.data_types, exp)

    def test_retrieve_shared_with(self):
        self.assertEqual(self.analysis.shared_with, ["[email protected]"])

    def test_retrieve_biom_tables(self):
#.........这里部分代码省略.........
开发者ID:Jorge-C,项目名称:qiita,代码行数:103,代码来源:test_analysis.py

示例3: TestAnalysis

# 需要导入模块: from qiita_db.analysis import Analysis [as 别名]
# 或者: from qiita_db.analysis.Analysis import share [as 别名]
class TestAnalysis(TestCase):
    def setUp(self):
        self.analysis = Analysis(1)
        self.portal = qiita_config.portal
        _, self.fp = get_mountpoint("analysis")[0]
        self.biom_fp = join(self.fp, "1_analysis_18S.biom")
        self.map_fp = join(self.fp, "1_analysis_mapping.txt")

    def tearDown(self):
        qiita_config.portal = self.portal
        with open(self.biom_fp, 'w') as f:
                f.write("")
        with open(self.map_fp, 'w') as f:
                f.write("")

        fp = join(get_mountpoint('analysis')[0][1], 'testfile.txt')
        if exists(fp):
            remove(fp)

        mp = get_mountpoint("processed_data")[0][1]
        study2fp = join(mp, "2_2_study_1001_closed_reference_otu_table.biom")
        if exists(study2fp):
            move(study2fp,
                 join(mp, "2_study_1001_closed_reference_otu_table.biom"))

    def test_lock_check(self):
        for status in ["queued", "running", "public", "completed",
                       "error"]:
            new = Analysis.create(User("[email protected]"), "newAnalysis",
                                  "A New Analysis")
            new.status = status
            with self.assertRaises(QiitaDBStatusError):
                new._lock_check()

    def test_lock_check_ok(self):
        self.analysis.status = "in_construction"
        self.analysis._lock_check()

    def test_status_setter_checks(self):
        self.analysis.status = "public"
        with self.assertRaises(QiitaDBStatusError):
            self.analysis.status = "queued"

    def test_get_by_status(self):
        qiita_config.portal = 'QIITA'
        self.assertEqual(Analysis.get_by_status('public'), set([]))
        qiita_config.portal = 'EMP'
        self.assertEqual(Analysis.get_by_status('public'), set([]))

        self.analysis.status = "public"
        qiita_config.portal = 'QIITA'
        self.assertEqual(Analysis.get_by_status('public'), {1})
        qiita_config.portal = 'EMP'
        self.assertEqual(Analysis.get_by_status('public'), set([]))

    def test_has_access_public(self):
        self.conn_handler.execute("UPDATE qiita.analysis SET "
                                  "analysis_status_id = 6")
        qiita_config.portal = 'QIITA'
        self.assertTrue(self.analysis.has_access(User("[email protected]")))
        qiita_config.portal = 'EMP'
        self.assertFalse(self.analysis.has_access(User("[email protected]")))

    def test_has_access_shared(self):
        self.assertTrue(self.analysis.has_access(User("[email protected]")))

    def test_has_access_private(self):
        self.assertTrue(self.analysis.has_access(User("[email protected]")))

    def test_has_access_admin(self):
        qiita_config.portal = 'QIITA'
        self.assertTrue(self.analysis.has_access(User("[email protected]")))
        qiita_config.portal = 'EMP'
        with self.assertRaises(QiitaDBError):
            Analysis(1).has_access(User("[email protected]"))

    def test_has_access_no_access(self):
        self.assertFalse(self.analysis.has_access(User("[email protected]")))

    def test_create(self):
        sql = "SELECT EXTRACT(EPOCH FROM NOW())"
        time1 = float(self.conn_handler.execute_fetchall(sql)[0][0])
        new_id = get_count("qiita.analysis") + 1
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis")
        self.assertEqual(new.id, new_id)
        sql = ("SELECT analysis_id, email, name, description, "
               "analysis_status_id, pmid, EXTRACT(EPOCH FROM timestamp) "
               "FROM qiita.analysis WHERE analysis_id = %s")
        obs = self.conn_handler.execute_fetchall(sql, [new_id])
        self.assertEqual(obs[0][:-1], [new_id, '[email protected]', 'newAnalysis',
                                       'A New Analysis', 1, None])
        self.assertTrue(time1 < float(obs[0][-1]))

        # make sure portal is associated
        obs = self.conn_handler.execute_fetchall(
            "SELECT * from qiita.analysis_portal WHERE analysis_id = %s",
            [new_id])
        self.assertEqual(obs, [[new_id, 1]])

#.........这里部分代码省略.........
开发者ID:MarkBruns,项目名称:qiita,代码行数:103,代码来源:test_analysis.py

示例4: TestAnalysis

# 需要导入模块: from qiita_db.analysis import Analysis [as 别名]
# 或者: from qiita_db.analysis.Analysis import share [as 别名]
class TestAnalysis(TestCase):
    def setUp(self):
        self.analysis = Analysis(1)

    def test_lock_check(self):
        self.analysis.status = "public"
        with self.assertRaises(QiitaDBStatusError):
            self.analysis._lock_check(self.conn_handler)

    def test_lock_check_ok(self):
        self.analysis.status = "queued"
        self.analysis._lock_check(self.conn_handler)

    def test_create(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis")
        self.assertEqual(new.id, 3)
        sql = "SELECT * FROM qiita.analysis WHERE analysis_id = 3"
        obs = self.conn_handler.execute_fetchall(sql)
        self.assertEqual(obs, [[3, '[email protected]', 'newAnalysis',
                                'A New Analysis', 1, None]])

    def test_create_parent(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis", Analysis(1))
        self.assertEqual(new.id, 3)
        sql = "SELECT * FROM qiita.analysis WHERE analysis_id = 3"
        obs = self.conn_handler.execute_fetchall(sql)
        self.assertEqual(obs, [[3, '[email protected]', 'newAnalysis',
                                'A New Analysis', 1, None]])

        sql = "SELECT * FROM qiita.analysis_chain WHERE child_id = 3"
        obs = self.conn_handler.execute_fetchall(sql)
        self.assertEqual(obs, [[1, 3]])

    def test_retrieve_owner(self):
        self.assertEqual(self.analysis.owner, "[email protected]")

    def test_retrieve_name(self):
        self.assertEqual(self.analysis.name, "SomeAnalysis")

    def test_retrieve_description(self):
        self.assertEqual(self.analysis.description, "A test analysis")

    def test_set_description(self):
        self.analysis.description = "New description"
        self.assertEqual(self.analysis.description, "New description")

    def test_retrieve_samples(self):
        exp = {1: ['SKB8.640193', 'SKD8.640184', 'SKB7.640196',
                   'SKM9.640192', 'SKM4.640180']}
        self.assertEqual(self.analysis.samples, exp)

    def test_retrieve_shared_with(self):
        self.assertEqual(self.analysis.shared_with, ["[email protected]"])

    def test_retrieve_biom_tables(self):
        self.assertEqual(self.analysis.biom_tables, [7])

    def test_retrieve_biom_tables_none(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis", Analysis(1))
        self.assertEqual(new.biom_tables, None)

    def test_retrieve_jobs(self):
        self.assertEqual(self.analysis.jobs, [1, 2])

    def test_retrieve_jobs_none(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis", Analysis(1))
        self.assertEqual(new.jobs, None)

    def test_retrieve_pmid(self):
        self.assertEqual(self.analysis.pmid, "121112")

    def test_retrieve_pmid_none(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis", Analysis(1))
        self.assertEqual(new.pmid, None)

    def test_set_pmid(self):
        self.analysis.pmid = "11211221212213"
        self.assertEqual(self.analysis.pmid, "11211221212213")

    # def test_get_parent(self):
    #     raise NotImplementedError()

    # def test_get_children(self):
    #     raise NotImplementedError()

    def test_add_samples(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
                              "A New Analysis")
        new.add_samples([(1, 'SKB8.640193')])

    def test_remove_samples(self):
        self.analysis.remove_samples([(1, 'SKB8.640193'), (1, 'SKD8.640184')])

    def test_add_biom_tables(self):
        new = Analysis.create(User("[email protected]"), "newAnalysis",
#.........这里部分代码省略.........
开发者ID:teravest,项目名称:qiita,代码行数:103,代码来源:test_analysis.py


注:本文中的qiita_db.analysis.Analysis.share方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。