# -*- coding: utf -*- import datetime from q3stats.lib.scripts import utils from q3stats.models import Game, Score from q3stats.testing import BaseQ3StatsWebAppTestCase from q3stats.web_app.blueprints.api_v1.views import players as views_mod class Test_GetAPIv1Players(BaseQ3StatsWebAppTestCase): @classmethod def setUpClass(cls): super(Test_GetAPIv1Players, cls).setUpClass() with utils.db_session(cls._config) as session: game1_dt = datetime.datetime(2017, 2, 21, 18, 30) game1 = Game( uuid='game1', map='Q3DM7', date=game1_dt.date(), time=game1_dt.time(), fraglimit=20, attrs={} ) game1.scores.extend([ Score( player='Player 1', score=20, kills=21, deaths=10, suicides=1, net=11, damage_taken=123, damage_given=456, total_health=123, total_armor=456, weapons={}, items={}, powerups={} ), Score( player='Player 2', score=10, kills=11, deaths=20, suicides=1, net=10, damage_taken=123, damage_given=456, total_health=123, total_armor=456, weapons={}, items={}, powerups={} ), ]) game2_dt = datetime.datetime(2017, 2, 21, 18, 31) game2 = Game( uuid='game2', map='Q3DM17', date=game2_dt.date(), time=game2_dt.time(), fraglimit=20, attrs={} ) game2.scores.extend([ Score( player='Player 1', score=20, kills=21, deaths=10, suicides=1, net=11, damage_taken=123, damage_given=456, total_health=123, total_armor=456, weapons={}, items={}, powerups={} ), Score( player='Player 3', score=10, kills=11, deaths=20, suicides=1, net=10, damage_taken=123, damage_given=456, total_health=123, total_armor=456, weapons={}, items={}, powerups={} ), ]) session.add_all([game1, game2]) session.commit() def test_ok(self): with self.app.test_request_context(): rsp = self.client.get('/api/v1/players/') assert rsp.status_code == 200 assert rsp.json['players'] == ['Player 1', 'Player 2', 'Player 3']