def testAddOtherCoreFacetFilter(self):
     cq = ComposedQuery('coreA')
     cq.addOtherCoreFacetFilter('coreB', 'field=value')
     self.assertValidateRaisesValueError(cq, "No match set for cores ('coreA', 'coreB')")
     cq.addMatch(dict(core='coreA', uniqueKey='kA'), dict(core='coreB', key='kB'))
     self.assertEquals(['field=value'], cq.otherCoreFacetFiltersFor('coreB'))
     cq.convertWith(coreB=lambda q: "converted_" + q)
     self.assertEquals(['converted_field=value'], cq.otherCoreFacetFiltersFor('coreB'))
 def testAddFilterQueryAfterConversion(self):
     cq = ComposedQuery('coreA')
     cq.setCoreQuery('coreA', query='A')
     cq.convertWith(coreA=lambda q: "converted_" + q)
     self.assertEquals('converted_A', cq.queryFor('coreA'))
     # Assert the following does not raise KeyError
     cq.addFilterQuery('coreA', 'field=value')
     cq.addFacet('coreA', 'F0')
     cq.addDrilldownQuery('coreA', 'drilldownQuery')
     cq.addOtherCoreFacetFilter('coreA', 'q')
 def testAddFilterQueryAfterConversion(self):
     cq = ComposedQuery('coreA')
     cq.setCoreQuery('coreA', query='A')
     cq.convertWith(coreA=lambda q, **kwargs: "converted_" + q)
     self.assertEquals('converted_A', cq.queryFor('coreA'))
     # Assert the following does not raise KeyError
     cq.addFilterQuery('coreA', 'field=value')
     cq.addFacet('coreA', 'F0')
     cq.addDrilldownQuery('coreA', 'drilldownQuery')
     cq.addOtherCoreFacetFilter('coreA', 'q')
 def testAddOtherCoreFacetFilter(self):
     cq = ComposedQuery('coreA')
     cq.addOtherCoreFacetFilter('coreB', 'field=value')
     self.assertValidateRaisesValueError(
         cq, "No match set for cores ('coreA', 'coreB')")
     cq.addMatch(dict(core='coreA', uniqueKey='kA'),
                 dict(core='coreB', key='kB'))
     self.assertEquals(['field=value'],
                       cq.otherCoreFacetFiltersFor('coreB'))
     cq.convertWith(coreB=lambda q: "converted_" + q)
     self.assertEquals(['converted_field=value'],
                       cq.otherCoreFacetFiltersFor('coreB'))