def test_winner(self): config = Config() config.add_place('Sisaket') config.add_place('Mall') session = Session(config) session.join(User('test')) session.finish() self.assertIn(session.winner, ('Mall', 'Sisaket'))
def test_history_penalty(self): config = Config() config.add_place('Sisaket', .7) session = Session(config, .8) session.join(User('test')) old_weights = session._calc_weights() config.add_winner('Sisaket') new_weights = session._calc_weights() self.assertGreater(old_weights['Sisaket'], new_weights['Sisaket'])
def test_save_load(self): file = NamedTemporaryFile().name config = Config(file) config.add_place('Sisaket') config.save() places = config.places config = Config(file) config.load() self.assertEqual(places, config.places)
def test_weather(self): config = Config() config.add_place('Sisaket', .7) config.add_place('Russian', .1) session = Session(config, .8) session.join(User('test')) weights = session._calc_weights() self.assertGreater(weights['Sisaket'], weights['Russian']) session = Session(config, .1) session.join(User('test')) weights = session._calc_weights() self.assertLess(weights['Sisaket'], weights['Russian'])
def test_add_place(self): config = Config() config.add_place('Sisaket') self.assertAlmostEqual(1, len(config)) config.add_place('Indian') self.assertAlmostEqual(2, len(config)) config.add_place('Sisaket') self.assertAlmostEqual(2, len(config))
def test_update_place(self): config = Config() config.add_place('Sisaket') self.assertAlmostEqual(.5, config.places['Sisaket']) config.add_place('Sisaket', .7) self.assertAlmostEqual(.7, config.places['Sisaket'])