Exemple #1
0
    def testCompoundFeatureSearch(self):
        datasetName, featureSet = self.getCGDDataSetFeatureSet()
        featureId = \
            "http://cancer.sanger.ac.uk/cosmic/mutation/overview?id=736"
        obfuscated = self.getObfuscatedFeatureCompoundId(
            datasetName, featureSet.name, featureId)
        request = protocol.GetFeatureRequest
        request.feature_id = obfuscated
        response = self.sendGetRequest('/features/{}'.format(obfuscated))

        feature = protocol.fromJson(response.data, protocol.Feature)

        self.assertIsNotNone(feature)
        featureId = feature.id

        request = protocol.SearchGenotypePhenotypeRequest()
        request.phenotype_association_set_id = \
            self.getPhenotypeAssociationSetId()
        request.feature_ids.append(featureId)
        response = self.sendSearchRequest(
            '/featurephenotypeassociations/search',
            request,
            protocol.SearchGenotypePhenotypeResponse)
        self.assertEqual(1, len(response.associations))
        self.assertEqual(1, len(response.associations[0].feature_ids))
Exemple #2
0
 def testNoFind(self):
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     request.feature_ids.extend(["FOOBAR"])
     response = self.sendSearchRequest(
         '/featurephenotypeassociations/search', request,
         protocol.SearchGenotypePhenotypeResponse)
     self.assertEqual(0, len(response.associations))
Exemple #3
0
 def testGenotypePhenotypeSearchPhenotype(self):
     """
     Search for associations given a phenotype
     """
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     request.phenotype_ids.extend(["http://ohsu.edu/cgd/25abbb09"])
     response = self.sendSearchRequest(
         '/featurephenotypeassociations/search', request,
         protocol.SearchGenotypePhenotypeResponse)
     self.assertEqual(1, len(response.associations[0].feature_ids))
Exemple #4
0
 def testGenotypePhenotypeSearchEvidence(self):
     """
     Search for associations given an evidence
     """
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     eq = protocol.EvidenceQuery()
     eq.description = "imatinib"
     request.evidence.extend([eq])
     response = self.sendSearchRequest(
         '/featurephenotypeassociations/search', request,
         protocol.SearchGenotypePhenotypeResponse)
     self.assertEqual(1, len(response.associations[0].feature_ids))
Exemple #5
0
 def testGenotypePhenotypeSearchFeature(self):
     """
     Search for associations given a feature
     """
     # simulate user interacting with sequenceAnnotations
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     datasetName, featureSet = self.getCGDDataSetFeatureSet()
     featureId = \
         "http://ohsu.edu/cgd/27d2169c"
     obfuscated = self.getObfuscatedFeatureCompoundId(
         datasetName, featureSet.name, featureId)
     # use the feature to look up associations
     request.feature_ids.extend([obfuscated])
     response = self.sendSearchRequest(
         '/featurephenotypeassociations/search', request,
         protocol.SearchGenotypePhenotypeResponse)
     self.assertEqual(1, len(response.associations[0].feature_ids))
Exemple #6
0
 def testGenotypePhenotypeSearchEnsureEnvironment(self):
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     datasetName, featureSet = self.getCGDDataSetFeatureSet()
     featureId = \
         "http://ohsu.edu/cgd/27d2169c"
     obfuscated = self.getObfuscatedFeatureCompoundId(
         datasetName, featureSet.name, featureId)
     request.feature_ids.extend([obfuscated])
     eq = protocol.EvidenceQuery()
     eq.description = "imatinib"
     request.evidence.extend([eq])
     response = self.sendSearchRequest(
         '/featurephenotypeassociations/search', request,
         protocol.SearchGenotypePhenotypeResponse)
     self.assertEqual(1,
                      len(response.associations[0].environmental_contexts))
     environmentalContext = response.associations[0] \
                                    .environmental_contexts[0]
     self.assertEqual('imatinib', environmentalContext.description)
Exemple #7
0
 def testGenotypePhenotypeSearchEnsureEvidence(self):
     """
     Ensure evidence level is serialized in responses
     """
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     request.phenotype_association_set_id = \
         self.getPhenotypeAssociationSetId()
     datasetName, featureSet = self.getCGDDataSetFeatureSet()
     featureId = \
         "http://ohsu.edu/cgd/27d2169c"
     obfuscated = self.getObfuscatedFeatureCompoundId(
         datasetName, featureSet.name, featureId)
     request.feature_ids.extend([obfuscated])
     response = self.sendSearchRequest(
         '/featurephenotypeassociations/search', request,
         protocol.SearchGenotypePhenotypeResponse)
     self.assertEqual(1, len(response.associations[0].evidence))
     evidence = response.associations[0].evidence[0]
     self.assertEqual('decreased_sensitivity', evidence.description)
Exemple #8
0
 def sendGenotypePhenotypesSearch(self):
     request = protocol.SearchGenotypePhenotypeRequest()
     request.phenotype_association_set_id = self.phenotypeAssociationSetId
     return self.sendPostRequest('/featurephenotypeassociations/search',
                                 request)