@Test public void parseConsequenceTypeSOTerm() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_CONSEQUENCE_TYPE.key(), "missense_variant"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=soAcc:\"1583\"", solrQuery.toString()); }
@Test public void parseExactSift() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), "sift==-0.3"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=sift:\\-0.3", solrQuery.toString()); }
@Test public void parseExactSift2() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), "sift=-0.3"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=sift:\\-0.3", solrQuery.toString()); }
@Test public void parseRegionChromosomeStartEnd() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(REGION.key(), "1:66381-76381,1:98766-117987"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(chromosome:\"1\"+AND+start:[66381+TO+*]+AND+end:[*+TO+76381])+OR+(chromosome:\"1\"+AND+start:[98766+TO+*]+AND+end:[*+TO+117987])", solrQuery.toString()); }
@Test public void parseXref() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_XREF.key(), "rs574335987"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=xrefs:\"rs574335987\"", solrQuery.toString()); }
@Test public void parseSiftScore() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), "sift==tolerated,polyphen==bening"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(siftDesc:\"tolerated\"+OR+polyphenDesc:\"bening\")", solrQuery.toString()); }
@Test public void parsePopMafScore() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY.key(), "1kG_phase3:YRI<0.01"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(popFreq__1kG_phase3__YRI:[0+TO+0.01}+OR+(*+-popFreq__1kG_phase3__YRI:*))", solrQuery.toString()); }
@Test public void parseClinVars() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_CLINVAR.key(), "RCV000010071"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=xrefs:\"RCV000010071\"", solrQuery.toString()); }
@Test public void parseConsequenceTypeSOAcc() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_CONSEQUENCE_TYPE.key(), "SO:0001792,SO:0001619"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=soAcc:\"1792\"+OR+soAcc:\"1619\"", solrQuery.toString()); }
@Test public void parsePopMafScoreMissing() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); // (* -popFreq__1kG_phase3__YRI:*) OR popFreq_1kG_phase3__YRI:[0.01 TO *] query.put(ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY.key(), "1kG_phase3:YRI<<0.01"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(popFreq__1kG_phase3__YRI:[0+TO+0.01}+OR+(*+-popFreq__1kG_phase3__YRI:*))", solrQuery.toString()); }
@Test public void parseNoPopMaf() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY.key(), "1kG_phase3:GWD!=0.061946902"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=-popFreq__1kG_phase3__GWD:0.061946902", solrQuery.toString()); }
@Test public void parseNoExactSift() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), "sift!=-0.3"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=-sift:\\-0.3", solrQuery.toString()); }
@Test public void parseHPOs() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_HPO.key(), "HP%3A000365,HP%3A0000007"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(traits:\"HP%253A000365\"+OR+traits:\"HP%253A0000007\")", solrQuery.toString()); }
@Test public void parsePhylop() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_CONSERVATION.key(), "phylop<-1.0"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=phylop:{-100.0+TO+-1.0}", solrQuery.toString()); }
@Test public void parsePhastCons() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_CONSERVATION.key(), "phastCons>0.02"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=phastCons:{0.02+TO+*]", solrQuery.toString()); }
@Test public void parseExactPopMaf() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_POPULATION_MINOR_ALLELE_FREQUENCY.key(), "1kG_phase3:GWD==0.061946902"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=popFreq__1kG_phase3__GWD:0.061946902", solrQuery.toString()); }
@Test public void parseExactSiftDesc() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(ANNOT_PROTEIN_SUBSTITUTION.key(), "sift==tolerated"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=siftDesc:\"tolerated\"", solrQuery.toString()); }
@Test public void parseRegionChromosome() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(REGION.key(), "1,3"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(chromosome:\"1\")+OR+(chromosome:\"3\")", solrQuery.toString()); }
@Test public void parseRegion() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(REGION.key(), "1:17700"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(chromosome:\"1\"+AND+start:17700)", solrQuery.toString()); }
@Test public void parseType() { QueryOptions queryOptions = new QueryOptions(); Query query = new Query(); query.put(TYPE.key(), "CNV,SNV"); SolrQuery solrQuery = solrQueryParser.parse(query, queryOptions); display(query, queryOptions, solrQuery); assertEquals(flDefault1 + "&q=*:*&fq=(type:\"CNV\"+OR+type:\"SNV\")", solrQuery.toString()); }