示例#1
0
def test(islandId,custName,numMessages):
    mc = ManagementContainer.getInstance()
    
    custid = findCustomer(custName)    
    if custid < 0:
        print 'test failed because customer',custName,'was not found'
        return 1
        
    island = mc.getIslandManager().getIsland(islandId)
    
    try:
        msgs = findMessages(mc,custid,numMessages)
    
        if msgs.size() < numMessages:
            print 'Fail, Did not find all messages stored, only found', msgs.size()
            return 1
    
        if not checkSearchStatus(mc,msgs,custid):
            print 'Fail, could not find all messages in search index'
            return 1

        ism = mc.getIndexSearchManager()
        isc = IndexSearchConstraint(custid,None)

        isc.constrainByNumberOfHitsToReturn(1)
        isc.constrainByIsland(island)
        isc.constrainByOffset(0)
        try:
            results = ism.resolveLocations(isc)
            print 'Fail, expected IndexSearchException'
            return 1
        except IndexSearchException, e:
            print 'Pass, IndexSearchException',e
        except:
            print 'Expected IndexSearchException, but got',sys.exc_info(),traceback.print_exc(file=sys.stderr)
            return 1

        isc.constrainByNumberOfHitsToReturn(2)
        isc.constrainByOffset(0)
        try:
            results = ism.resolveLocations(isc)
            sz = getResultSize(results)
            print 'Pass, hits=2',sz
          
            if sz < numMessages:
                print 'Wrong number of results. Expected >=',numMessages,'Got',sz
        except:
            print 'Unexpected exception caught when hits was set to 2',sys.exc_info(),traceback.print_exc(file=sys.stderr)
            return 1

        isc.constrainByNumberOfHitsToReturn(numMessages)
        isc.constrainByOffset(0)
        try:
            results = ism.resolveLocations(isc)
            sz = getResultSize(results)
            print 'Pass, hits=',numMessages,sz
            if sz < numMessages:
                print 'Wrong number of results. Expected >=',numMessages,'Got',sz,results.getResults()
        except:
            print 'Unexpected exception caught when hits was set to',numMessages,sys.exc_info(),traceback.print_exc(file=sys.stderr)
            return 1