def test1stTriggerActivation(self):
     '1st trigger activation'
     self.updateTriggersWrapper.wait()
     checkData = self.channelServerObj.check(
         CheckQuery(1, "1", time2orb(self.checkTimeStamp), [], False))
     self.assertEqual(self.checkTimeStamp, orb2time(checkData.master_stamp))
     result = self.channelServerObj.update_triggers([13, 14])
     tlog(10, "ChannelServer.update_triggers([13,14]): %s" % result)
     self.assertEqual(1, len(result.channels), 'channel size')
     self.assertEqual(13, result.channels[0].channel_id, 'channel#1.id')
     self.assertNotEqual(None, orb2time(result.channels[0].stamp),
                         'channel#1.stamp')
     self.assertNotEqual(1, len(result.channels[0].words),
                         'channel#1.triggers')
     self.updateTriggersWrapper.proceed()
     self.checkCallSequence(expCalls=['ChannelProxy_update_triggers'],
                            timeout=10)
 def testDelayedSimpleChannels(self):
     'CampaignServer simple_channels delayed'
     tlog(10, "Calls: %s" % self.calls.queue)
     self.checkLastCall('CampaignServer_chsv_simple_channels', timeout=2)
     checkData = self.channelServerObj.check(
         CheckQuery(1, "1", time2orb(), [], False))
     self.assertNotEqual(self.checkTimeStamp,
                         orb2time(checkData.master_stamp),
                         'CheckData.master_stamp')
     self.checkTimeStamp = orb2time(checkData.master_stamp)
     self.assertEqual(False, checkData.special_track,
                      'CheckData.special_track')
     self.assertEqual(False, checkData.special_adv, 'CheckData.special_adv')
     result = self.channelServerObj.update_triggers([13, 14])
     self.assertEqual(0, len(result.channels), 'channel size')
     self.simpleChannelWrapper.proceed()
     tlog(10, "Calls: %s" % self.calls.queue)
 def testDelayedUpdate(self):
     'ChannelProxy update delayed'
     self.updateTriggersWrapper.wait()
     checkData = self.channelServerObj.check(
         CheckQuery(1, "1", time2orb(self.checkTimeStamp), [], False))
     self.assertEqual(self.checkTimeStamp, orb2time(checkData.master_stamp))
     result = self.channelServerObj.update_triggers([13, 14])
     self.assertEqual(0, len(result.channels), 'channel size')
     self.updateTriggersWrapper.proceed()
     self.checkCallSequence(expCalls=['ChannelProxy_update_triggers'],
                            timeout=10)
 def test2ndTriggerActivation(self):
     '2nd trigger activation'
     self.checkCallSequence(
         expCalls=[CallSequence('CampaignServer_chsv_simple_channels', 20)],
         timeout=10)
     checkData = self.channelServerObj.check(
         CheckQuery(1, "1", time2orb(self.checkTimeStamp), [], False))
     self.assertNotEqual(self.checkTimeStamp,
                         orb2time(checkData.master_stamp))
     self.channelServerObj.update_triggers([13, 14])
     result = self.channelServerObj.update_triggers([13, 14])
     tlog(10, "ChannelServer.update_triggers([13,14]): %s" % result)
     self.assertEqual(2, len(result.channels), 'channel size')
     self.assertEqual(13, result.channels[0].channel_id, 'channel#1.id')
     self.assertEqual(14, result.channels[1].channel_id, 'channel#2.id')
     self.assertNotEqual(None, orb2time(result.channels[0].stamp),
                         'channel#1.stamp')
     self.assertNotEqual(None, orb2time(result.channels[1].stamp),
                         'channel#2.stamp')
     self.assertNotEqual(1, len(result.channels[0].words),
                         'channel#1.triggers')
     self.assertNotEqual(1, len(result.channels[1].words),
                         'channel#2.triggers')
    def testPrepare(self):
        '1st full update withot delays'
        self.checkCallSequence(expCalls=[
            CallSequence('CampaignServer_chsv_simple_channels',
                         20), 'ChannelProxy_check',
            'ChannelProxy_update_all_ccg', 'ChannelProxy_update_triggers'
        ],
                               timeout=2)

        self.ChannelServer.waitReady()

        checkData = self.channelServerObj.check(
            CheckQuery(1, "1", time2orb(), [], False))
        self.assertNotEqual(None, orb2time(checkData.master_stamp))
        result = self.channelServerObj.update_triggers([12])
        self.assertEqual(1, len(result.channels), 'channel size')
        self.assertEqual(12, result.channels[0].channel_id, 'channel#1.id')
        self.assertNotEqual(None, orb2time(result.channels[0].stamp),
                            'channel#1.stamp')
        self.assertNotEqual(1, len(result.channels[0].words),
                            'channel#1.triggers')
        self.__prepareDelay()
        tlog(10, "Calls: %s" % self.calls.queue)
 def testDelayedCheck(self):
     'ChannelProxy check delayed'
     self.checkWrapper.wait()
     checkData = self.channelServerObj.check(
         CheckQuery(1, "1", time2orb(self.checkTimeStamp), [], False))
     self.assertEqual(self.checkTimeStamp, orb2time(checkData.master_stamp),
                      'CheckData.master_stamp')
     self.assertEqual(False, checkData.special_track,
                      'CheckData.special_track')
     self.assertEqual(False, checkData.special_adv, 'CheckData.special_adv')
     result = self.channelServerObj.update_triggers([13, 14])
     self.assertEqual(0, len(result.channels), 'channel size')
     self.checkWrapper.proceed()
     self.checkCallSequence(expCalls=[
         CallSequence('CampaignServer_chsv_simple_channels', 19),
         'ChannelProxy_check', 'ChannelProxy_update_all_ccg'
     ])
     tlog(10, "Calls: %s" % self.calls.queue)
Esempio n. 7
0
 def ChannelProxy_check(self, query):
   tlog(10, "ChannelProxy.check(colo=%d, version='%s', timestamp='%s', new_ids=%s)" % \
        (query.colo_id,
         query.version,
         time2str(orb2time(query.master_stamp)),
         query.new_ids))
   def channel2version(channel):
     return ChannelVersion(
       channel.channel_id,
       reduce(lambda x, y: x+y, map(lambda x: len(x.trigger), channel.words), 0) - \
         (len(channel.words) * 3),
       channel.stamp)
   return CheckData(
     time2orb(self.first_stamp), # first_stamp
     time2orb(currentTime()),  # master_stamp
     # versions (trigger versions sequence)
     map(channel2version, self.channelById),
     self.specialTrack,        # special_track
     self.specialAdv,          # special_adv
     self.SourceID,            # source_id
     time2orb(currentTime())   # max_time
     )
Esempio n. 8
0
 def ChannelProxy_update_all_ccg(self, query):
   tlog(10, "ChannelProxy.update_all_ccg(timestamp='%s', start=%d, limit=%d)" % \
        (time2str(orb2time(query.master_stamp)),
         query.start, query.limit))
   return PosCCGResult(query.start, [], [], 1)
Esempio n. 9
0
 def CampaignServer_detectors(self, request_timestamp):
     tlog(
         10, "CampaignServer.search_engines %s" %
         time2str(orb2time(request_timestamp)))
     return DetectorsConfig(time2orb(currentTime()), self.search_engines,
                            self.web_browsers, self.platforms)