Ejemplo n.º 1
0
 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'))
Ejemplo n.º 2
0
 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'])
Ejemplo n.º 3
0
 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)
Ejemplo n.º 4
0
 def test_history_crop(self):
     file = NamedTemporaryFile().name
     config = Config(file)
     for i in range(10):
         config.add_winner('Sisaket')
     config.save()
     config = Config(file)
     config.load()
     self.assertEqual(7, len(config._history))
Ejemplo n.º 5
0
 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'])
Ejemplo n.º 6
0
 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'])
Ejemplo n.º 7
0
 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))
Ejemplo n.º 8
0
 def test_history_crop(self):
     file = NamedTemporaryFile().name
     config = Config(file)
     for i in range(10):
         config.add_winner('Sisaket')
     config.save()
     config = Config(file)
     config.load()
     self.assertEqual(7, len(config._history))
Ejemplo n.º 9
0
 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)
Ejemplo n.º 10
0
 def test_leave(self):
     session = Session(Config())
     session.join(User('test'))
     self.assertEqual(1, len(session.users))
     session.join(User('test1'))
     self.assertEqual(2, len(session.users))
     session.leave(User('test'))
     self.assertEqual(1, len(session.users))
Ejemplo n.º 11
0
 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))
Ejemplo n.º 12
0
 def test_finished(self):
     session = Session(Config())
     self.assertEqual(session.finished, False)
     session.join(User('test'))
     session.finish()
     self.assertEqual(session.finished, True)
     with self.assertRaises(SessionFinished):
         session.finish()
     with self.assertRaises(SessionFinished):
         session.join(object())
     with self.assertRaises(SessionFinished):
         session.leave(object())
Ejemplo n.º 13
0
 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'))
Ejemplo n.º 14
0
 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'])
Ejemplo n.º 15
0
 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'])
Ejemplo n.º 16
0
 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'])