def test_grant(self): ok = FakeAchievement(can_unlock=True) not_ok = FakeAchievement(can_unlock=False) processor = Processor([ok, not_ok]) sprinter = FakeSprinter() sprinters_and_changes = [(sprinter, [], [])] processor.grant(sprinters_and_changes) expect(sprinter.achievements) == [ok]
def test_earns_only_unlockable_achievements(self): ok = FakeAchievement() not_ok = FakeAchievement(can_unlock=False) achievements = [ok, not_ok] sprinter_changes = [SprinterChange()] processor = Processor(achievements) earned = processor.earned_achievements(sprinter_changes, []) expect(earned) == [ok]