From 465295b223699de4bf361ec4399e12b9b30c8f2e Mon Sep 17 00:00:00 2001 From: schneefux Date: Thu, 16 Mar 2017 21:34:38 +0100 Subject: support Telemetry via assets --- gamelocker/datatypes.py | 13 +++++++++++++ tests/gamelocker_test.py | 5 +++++ 2 files changed, 18 insertions(+) diff --git a/gamelocker/datatypes.py b/gamelocker/datatypes.py index b1e83cf..afa0aad 100644 --- a/gamelocker/datatypes.py +++ b/gamelocker/datatypes.py @@ -38,6 +38,18 @@ def rel(typ, key): return attr(typ, key, True) +class Asset(DataMessage): + type_name = "asset" + key_id = attr(str, "id") + + url = attr(str, "URL") + content_type = attr(str, "contentType") + created_at = attr(str, "createdAt") + description = attr(str, "description") + filename = attr(str, "filename") + name = attr(str, "name") + + class Player(DataMessage): type_name = "player" key_id = attr(str, "id") @@ -85,6 +97,7 @@ class Match(DataMessage): stats = attr(dict, "stats") rosters = rel(Roster, "rosters") + assets = rel(Asset, "assets") def modulemap(): diff --git a/tests/gamelocker_test.py b/tests/gamelocker_test.py index c7a27a9..f94216f 100644 --- a/tests/gamelocker_test.py +++ b/tests/gamelocker_test.py @@ -41,6 +41,11 @@ class TestGamelocker: assert isinstance(matches[0], gamelocker.datatypes.Match) assert matches[0].duration > 0 + def test_asset(self, api): + match = api.match(elid="f73274b2-0a7f-11e7-a28f-0206eb3a2f5b", + region="eu") + assert isinstance(match.assets[0].url, str) + def test_region(self, api): assert len(api.matches(region="na", params={ -- cgit v1.3.1