def test_player_creation(self):
        datetime_str = '2015-12-06T00:27:30'
        response_data = self.post_valid_player('colin', 1300, datetime_str)
        assert response_data == 'colin'

        assert Player.query.count() == 1
        db_player = Player.query.get(1)
        assert db_player.name == 'colin'
        assert db_player.rating == 1300
        assert db_player.time_created == util.parse_datetime(datetime_str)
    def test_db_is_updated(self):
        datetime_str = '2012-11-02T14:22:07'
        kumanan = self.post_valid_player('kumanan', rating=1000)
        colin = self.post_valid_player('colin', rating=1200)
        game_id = self.post_valid_game(kumanan, colin, 21, 19, datetime_str)
        assert game_id == 1

        assert Game.query.count() == 1
        game = Game.query.get(1)
        assert game.winner.name == 'kumanan'
        assert game.loser.name == 'colin'
        assert game.winner_score == 21
        assert game.loser_score == 19
        assert game.time_created == util.parse_datetime(datetime_str)
    def test_db_is_updated(self):
        time1 = '2014-12-07T02:36:34'
        time2 = '2015-12-07T02:36:34'
        robert = self.post_valid_player('robert', time_created=time1)
        colin = self.post_valid_player('colin', rating=1300, time_created=time1)

        challenge_id = \
            self.post_valid_challenge(robert, colin, time_created=time2)
        assert challenge_id == 1

        assert Challenge.query.count() == 1
        challenge = Challenge.query.first()
        assert challenge.id == 1
        assert challenge.challenger.name == 'robert'
        assert challenge.challenged.name == 'colin'
        assert challenge.time_created == util.parse_datetime(time2)