def _render(self, event_key): self._set_event(event_key) matches = self.event.matches match_dicts = [ModelToDict.matchConverter(match) for match in matches] return json.dumps(match_dicts, ensure_ascii=True)
def _render(self, team_key, event_key): match_keys_future = Match.query(Match.event == ndb.Key(Event, self.event_key), Match.team_key_names == self.team_key).fetch_async(None, keys_only=True) match_futures = ndb.get_multi_async(match_keys_future.get_result()) matches = [ModelToDict.matchConverter(match_future.get_result()) for match_future in match_futures] return json.dumps(matches, ensure_ascii=True)
def _build_dict(self): data = {} data['message_type'] = NotificationType.type_names[self._type] data['message_data'] = {} data['message_data']['event_name'] = self.event.name data['message_data']['match'] = ModelToDict.matchConverter(self.match) return data
def _build_dict(self): data = {} data['message_type'] = NotificationType.type_names[self._type] data['message_data'] = {} data['message_data']['event_name'] = self.match.event.get().name data['message_data']['match'] = ModelToDict.matchConverter(self.match) return data
def _render(self, team_key, year=None): self._set_cache_header_length(61) self.team = Team.get_by_id(self.team_key) if self.team is None: self._errors = json.dumps( {"404": "%s team not found" % self.team_key}) self.abort(404) events_sorted, matches_by_event_key, awards_by_event_key, _ = TeamDetailsDataFetcher.fetch( self.team, self.year) team_dict = ModelToDict.teamConverter(self.team) team_dict["events"] = list() for event in events_sorted: event_dict = ModelToDict.eventConverter(event) event_dict["matches"] = [ ModelToDict.matchConverter(match) for match in matches_by_event_key.get(event.key, []) ] event_dict["awards"] = [ ModelToDict.awardConverter(award) for award in awards_by_event_key.get(event.key, []) ] team_dict["events"].append(event_dict) return json.dumps(team_dict, ensure_ascii=True)
def webhook_message_data(self): from helpers.model_to_dict import ModelToDict payload = self.data_payload # Remove the FCM-only keys del payload['match_key'] payload['event_name'] = self.event.name payload['match'] = ModelToDict.matchConverter(self.match) return payload
def _render_android(self): gcm_keys = self.keys[ClientType.OS_ANDROID] data = {} data["message_type"] = NotificationType.type_names[NotificationType.MATCH_SCORE] data["message_data"] = {} data["message_data"]["event_name"] = self.match.event.get().name data["message_data"]["match"] = ModelToDict.matchConverter(self.match) return GCMMessage(gcm_keys, data)
def test_build(self): expected = {} expected['message_type'] = NotificationType.type_names[NotificationType.MATCH_SCORE] expected['message_data'] = {} expected['message_data']['event_name'] = self.event.name expected['message_data']['match'] = ModelToDict.matchConverter(self.match) data = self.notification._build_dict() self.assertEqual(expected, data)
def test_build(self): expected = {} expected['message_type'] = NotificationType.type_names[NotificationType.MATCH_SCORE] expected['message_data'] = {} expected['message_data']['event_key'] = self.event.key_name expected['message_data']['event_name'] = self.event.name expected['message_data']['match'] = ModelToDict.matchConverter(self.match) data = self.notification._build_dict() self.assertEqual(expected, data)
def _render(self, team_key, year=None): self._write_cache_headers(61) self.team = Team.get_by_id(self.team_key) if self.team is None: self._errors = json.dumps({"404": "%s team not found" % self.team_key}) self.abort(404) events_sorted, matches_by_event_key, awards_by_event_key, _ = TeamDetailsDataFetcher.fetch(self.team, self.year) team_dict = ModelToDict.teamConverter(self.team) team_dict["events"] = list() for event in events_sorted: event_dict = ModelToDict.eventConverter(event) event_dict["matches"] = [ModelToDict.matchConverter(match) for match in matches_by_event_key.get(event.key, [])] event_dict["awards"] = [ModelToDict.awardConverter(award) for award in awards_by_event_key.get(event.key, [])] team_dict["events"].append(event_dict) return json.dumps(team_dict, ensure_ascii=True)
def _render(self, match_key): self._set_match(match_key) match_dict = ModelToDict.matchConverter(self.match) return json.dumps(match_dict, ensure_ascii=True)
def data_payload(self): from helpers.model_to_dict import ModelToDict return { 'event_key': self.event.key_name, 'match': ModelToDict.matchConverter(self.match) }
def _render(self, team_key, event_key): matches = TeamEventMatchesQuery(self.team_key, self.event_key).fetch() matches = [ModelToDict.matchConverter(match) for match in matches] return json.dumps(matches, ensure_ascii=True)