Exemplo n.º 1
0
    def test_get_count_without_update(self):
        """Example from chapter 4 of "Mining of Massing Datasets"""
        crt_timestamp = 65
        # hand built dgim
        queues = [
            deque([crt_timestamp - 1, crt_timestamp - 2]),
            deque([crt_timestamp - 4]),
            deque([crt_timestamp - 8]),
            deque()
        ]

        dgim = Dgim(10)
        dgim._timestamp = crt_timestamp
        dgim._queues = queues
        self.assertEquals(6, dgim.get_count())
Exemplo n.º 2
0
 def test_bucket_drop(self):
     crt_timestamp = 65
     # hand built dgim
     queues = [
         deque([crt_timestamp - 1, crt_timestamp - 2]),
         deque([crt_timestamp - 4]),
         deque()
     ]
     dgim = Dgim(6)
     dgim._timestamp = crt_timestamp
     dgim._queues = queues
     dgim._oldest_bucket_timestamp = crt_timestamp - 4
     self.assertEquals(3, dgim.nb_buckets)
     dgim.update(0)
     self.assertEquals(3, dgim.nb_buckets)
     dgim.update(0)
     self.assertEquals(2, dgim.nb_buckets)