def test_aggregator_nums(self): a = [0, 0, 1, 1, 1] s = aggregator.streaksIn(a) self.assertEquals(s[0].getStreaks(), [2]) self.assertEquals(s[0].getStreakExp(2), [4]) self.assertEquals(s[1].getStreaks(), [3]) self.assertEquals(s[1].getStreakExp(2), [9])
def test_aggregator_strings(self): c = ["cat", "826", "826", "826", "~~", "~~", "cat", "cat", "~~"] s = aggregator.streaksIn(c) self.assertEquals(s["cat"].getStreaks(), [1, 2]) self.assertEquals(s["cat"].getStreakExp(2), [1, 4]) self.assertEquals(s["826"].getStreaks(), [3]) self.assertEquals(s["826"].getStreakExp(3), [27]) self.assertEquals(s["~~"].getStreaks(), [2, 1]) self.assertEquals(s["~~"].getStreakExp(-1), [0.5, 1])
def test_aggregator_bools(self): b = [True, False, False, True, False] s = aggregator.streaksIn(b) self.assertEquals(s[True].getStreaks(), [1, 1]) self.assertEquals(s[False].getStreaks(), [2, 1]) self.assertEquals(s[False].getStreakExp(2), [4, 1])