Example #1
0
    def test_remove_project(self):
        epidb = DeepBlueClient(address="localhost", port=31415)
        self.init_base(epidb)

        sample_id = self.sample_ids[0]
        regions_data = helpers.load_bed("hg19_chr1_1")
        format = data_info.EXPERIMENTS["hg19_chr1_1"]["format"]

        res, projects = epidb.list_projects(self.admin_key)

        # adding two experiments with the same data should work
        res, eid = epidb.add_experiment("test_exp1", "hg19", "Methylation",
                                        sample_id, "tech1", projects[0][1],
                                        "desc1", regions_data, format, None,
                                        self.admin_key)
        self.assertSuccess(res, eid)

        res = epidb.remove(projects[0][0], self.admin_key)
        self.assertFailure(res)

        res = epidb.remove(eid, self.admin_key)
        self.assertSuccess(res)

        res = epidb.remove(projects[0][0], self.admin_key)
        self.assertSuccess(res)
    def test_set_project_publictest_project(self):
        epidb = DeepBlueClient(address="localhost", port=31415)
        self.init(epidb)

        res = epidb.add_project(
            "ENCODE", "The ENCODE Project: ENCyclopedia Of DNA Elements",
            self.admin_key)
        self.assertSuccess(res)

        res = epidb.add_project("Other", "Some other project", self.admin_key)
        self.assertSuccess(res)

        res, projects = epidb.list_projects(self.admin_key)
        self.assertSuccess(res, projects)

        self.assertEqual(len(projects), 2)

        project_names = [x[1] for x in projects]

        self.assertTrue("ENCODE" in project_names)
        self.assertTrue("Other" in project_names)
    def test_set_project_public(self):
        epidb = DeepBlueClient(address="localhost", port=31415)
        self.init_base(epidb)

        res = epidb.add_project("Other", "Some other project", self.admin_key)
        self.assertSuccess(res)

        s, user = epidb.add_user("user", "email", "institution",
                                 self.admin_key)
        (user_id, user_key) = user
        self.assertSuccess(s)

        status, projects = epidb.list_projects(self.admin_key)
        self.assertEqual(
            projects,
            [['p1', 'ENCODE'], ['p2', 'Mouse ENCODE'], ['p3', 'Other']])

        status, projects = epidb.list_projects(user_key)
        self.assertEqual(projects, [])

        epidb.set_project_public("ENCODE", True, self.admin_key)

        status, projects = epidb.list_projects(user_key)
        self.assertEqual(projects, [["p1", "ENCODE"]])

        epidb.set_project_public("ENCODE", False, self.admin_key)

        status, projects = epidb.list_projects(user_key)
        self.assertEqual(projects, [])

        epidb.set_project_public("Mouse ENCODE", True, self.admin_key)
        epidb.set_project_public("ENCODE", True, self.admin_key)

        status, projects = epidb.list_projects(user_key)
        self.assertEqual(projects, [['p1', 'ENCODE'], ['p2', 'Mouse ENCODE']])

        epidb.set_project_public("Other", True, self.admin_key)

        status, projects = epidb.list_projects(user_key)
        self.assertEqual(
            projects,
            [['p1', 'ENCODE'], ['p2', 'Mouse ENCODE'], ['p3', 'Other']])