def test_aggregate_statistics_and_reset_statistics(self): streak = Streak() streak.redis = self.redis streak.aggregate("david", 3) streak.aggregate("david", -2) streak.aggregate("david", 5) streak.aggregate("david", -1) statistics = streak.statistics("david") self.assertEquals(7, len(statistics)) self.assertEquals(0, statistics["wins"]) self.assertEquals(8, statistics["wins_total"]) self.assertEquals(5, statistics["wins_streak"]) self.assertEquals(1, statistics["losses"]) self.assertEquals(3, statistics["losses_total"]) self.assertEquals(2, statistics["losses_streak"]) self.assertEquals(11, statistics["total"]) statistics = streak.statistics( "david", [Streak.DEFAULTS["positive_streak_key"], Streak.DEFAULTS["negative_streak_key"]] ) self.assertEquals(2, len(statistics)) self.assertEquals(5, statistics["wins_streak"]) self.assertEquals(2, statistics["losses_streak"]) streak.reset_statistics("david") statistics = streak.statistics("david") self.assertEquals(0, statistics["wins"]) self.assertEquals(0, statistics["wins_total"]) self.assertEquals(0, statistics["wins_streak"]) self.assertEquals(0, statistics["losses"]) self.assertEquals(0, statistics["losses_total"]) self.assertEquals(0, statistics["losses_streak"]) self.assertEquals(0, statistics["total"])
def test_default_options_in_initializer(self): streak = Streak( { "positive_key": "kills", "positive_total_key": "kills_total", "positive_streak_key": "kills_streak", "negative_key": "deaths", "negative_total_key": "deaths_total", "negative_streak_key": "deaths_streak", } ) streak.redis = self.redis options = streak.options self.assertEquals("streak", options["namespace"]) self.assertEquals("kills", options["positive_key"]) self.assertEquals("kills_total", options["positive_total_key"]) self.assertEquals("kills_streak", options["positive_streak_key"]) self.assertEquals("deaths", options["negative_key"]) self.assertEquals("deaths_total", options["negative_total_key"]) self.assertEquals("deaths_streak", options["negative_streak_key"]) self.assertEquals("total", options["total_key"])