コード例 #1
0
ファイル: test_session.py プロジェクト: ramovsky/lunch
 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'))
コード例 #2
0
ファイル: test_session.py プロジェクト: ramovsky/lunch
 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'])
コード例 #3
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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)
コード例 #4
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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))
コード例 #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'])
コード例 #6
0
ファイル: test_session.py プロジェクト: ramovsky/lunch
 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'])
コード例 #7
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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))
コード例 #8
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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))
コード例 #9
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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)
コード例 #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))
コード例 #11
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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))
コード例 #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())
コード例 #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'))
コード例 #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'])
コード例 #15
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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'])
コード例 #16
0
ファイル: test_config.py プロジェクト: ramovsky/lunch
 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'])