def test_change_extra_metadata(self): epidb = DeepBlueClient(address="localhost", port=31415) self.init_base(epidb) user_id, user_key = self.get_new_user(epidb) self.modify_user_permission(epidb, user_id, "INCLUDE_COLLECTION_TERMS") s, id = epidb.add_biosource("lsdjf", "sdf", { "a": "b", "c": "d" }, user_key) s = epidb.change_extra_metadata(id, "a", "f", user_key) self.assertSuccess(s) s = epidb.change_extra_metadata(id, "c", "g", self.admin_key) self.assertSuccess(s) s, user = epidb.add_user("user2", "email2", "institution2", self.admin_key) self.assertSuccess(s) user_id2, user_key2 = user self.modify_user_permission(epidb, user_id2, "INCLUDE_COLLECTION_TERMS") s = epidb.change_extra_metadata(id, "c", "g", user_key2) self.assertFailure(s)
def test_change_extra_metadata(self): epidb = DeepBlueClient(address="localhost", port=31415) self.init_base(epidb) sample_id = self.sample_ids[0] regions_data = "chr1\t1\t100" format = "" # adding two experiments with the same data should work res = epidb.add_experiment("test_exp1", "hg19", "Methylation", sample_id, "tech1", "ENCODE", "desc1", regions_data, format, { "NAME": "FELIPE", "LAST_NAME": "ALBRECHT" }, self.admin_key) self.assertSuccess(res) _id = res[1] res = epidb.change_extra_metadata(_id, "NAME", "JOSE", self.admin_key) self.assertSuccess(res) res = epidb.change_extra_metadata(_id, "LAST_NAME", "FERNANDES", self.admin_key) self.assertSuccess(res) status, info = epidb.info(_id, self.admin_key) self.assertSuccess(status, info) self.assertEqual({ "NAME": "JOSE", "LAST_NAME": "FERNANDES" }, info[0]["extra_metadata"]) (status, ss) = epidb.search("JOSE", "", self.admin_key) self.assertEqual(1, len(ss)) (status, ss) = epidb.search("FELIPE", "", self.admin_key) self.assertEqual(0, len(ss)) res = epidb.change_extra_metadata(sample_id, "source", "ENCODE", self.admin_key) self.assertSuccess(res) s, info = epidb.info(sample_id, self.admin_key) self.assertEqual(info[0]["source"], "ENCODE")