def test_weight_assigned_correctly(self): self.assertAlmostEquals(2.955684590875269, frecency.score_item([50, 30, 600, 200], 600), places=10) self.assertAlmostEquals(2.3168950227541245, frecency.score_item([50, 30.4, 200], 330), places=10) self.assertAlmostEquals(0.2865047968601901, frecency.score_item([500], 400), places=10)
def test_negative_recency_works(self): self.assertAlmostEquals(5.859195364518158, frecency.score_item([50, -10, 60, 200, -500], 600), places=10) self.assertAlmostEquals(6.804121392023058, frecency.score_item([-300, 12, -72.5, 120, -50], 300), places=10) self.assertAlmostEquals(1.9477340410546757, frecency.score_item([-200], 300), places=10) self.assertAlmostEquals(6.905469613962053, frecency.score_item([-50, -10, -60, -200, -500], 600), places=10)
def test_empty_list_returns_zero(self): self.assertEquals(0, frecency.score_item([], 600)) self.assertEquals(0, frecency.score_item([], 10.2)) self.assertEquals(0, frecency.score_item([], 0)) self.assertEquals(0, frecency.score_item([], -600))