def start(self): while (True): teamsList = self.loadTeams() team_id_list = self.genereateTeamIDList(teamsList) try: currentRelevantGames = self.getRelevantLiveLeagueGames( team_id_list) except ApiException: currentRelevantGames = self.oldRelevantGames new_finished_games = self.findFinishedGames( self.oldRelevantGames, currentRelevantGames) if len(new_finished_games) > 0: self.finishedGames.extend(new_finished_games) # process matches match_processor = MatchProcessor() processed_matches = [] to_remove_finished_games = [ ] # games not up after 2hrs, can remove for obj in self.finishedGames: if obj["countdown"] <= 0: match_details_obj = self.api_wrapper.getMatchDetails( obj["match_id"]) if match_details_obj.isEmpty(): # match data is not available yet obj["age"] = (obj["age"] + 1) if obj["age"] > 60: to_remove_finished_games.append(obj) obj["countdown"] = int( self.configMap["match_parser_countdown"]) continue match_processor.process(match_details_obj) processed_matches.append(obj) # delete finished games older than 2hrs for obj in to_remove_finished_games: HelperTools.log("gave up on match " + obj["match_id"]) self.finishedGames.remove(obj) # delete all parsed matches from finishedGames list for game in processed_matches: self.finishedGames.remove(game) # iterate cooldowns of finished gamess for obj in self.finishedGames: countdown = obj["countdown"] obj["countdown"] = countdown - int( self.configMap["crawler_sleep_time"]) for hook in self.hooks: hook.update() if self.stopBool: HelperTools.log("stop message received") break time.sleep(int(self.configMap["crawler_sleep_time"]))
def test_loadLocalPlayer(self, MockHelperTools): players_test_dir = os.path.join(HelperTools.getParentDir(__file__), "res", "players_test") MockHelperTools.getPlayersDir = MagicMock( return_value=players_test_dir) mp = MatchProcessor() local_player_obj = mp.loadLocalPlayer("21232132") self.assertEquals(local_player_obj.getPlayerID(), 21232132)
def start(self): while(True): teamsList = self.loadTeams() team_id_list = self.genereateTeamIDList(teamsList) try: currentRelevantGames = self.getRelevantLiveLeagueGames(team_id_list) except ApiException: currentRelevantGames = self.oldRelevantGames new_finished_games = self.findFinishedGames(self.oldRelevantGames, currentRelevantGames) if len(new_finished_games) > 0: self.finishedGames.extend(new_finished_games) # process matches match_processor = MatchProcessor() processed_matches = [] to_remove_finished_games = [] # games not up after 2hrs, can remove for obj in self.finishedGames: if obj["countdown"] <= 0: match_details_obj = self.api_wrapper.getMatchDetails(obj["match_id"]) if match_details_obj.isEmpty(): # match data is not available yet obj["age"] = (obj["age"] + 1) if obj["age"] > 60: to_remove_finished_games.append(obj) obj["countdown"] = int(self.configMap["match_parser_countdown"]) continue match_processor.process(match_details_obj) processed_matches.append(obj) # delete finished games older than 2hrs for obj in to_remove_finished_games: HelperTools.log("gave up on match " + obj["match_id"]) self.finishedGames.remove(obj) # delete all parsed matches from finishedGames list for game in processed_matches: self.finishedGames.remove(game) # iterate cooldowns of finished gamess for obj in self.finishedGames: countdown = obj["countdown"] obj["countdown"] = countdown - int(self.configMap["crawler_sleep_time"]) for hook in self.hooks: hook.update() if self.stopBool: HelperTools.log("stop message received") break time.sleep(int(self.configMap["crawler_sleep_time"]))
def test_loadLocalPlayer(self, MockHelperTools): players_test_dir = os.path.join(HelperTools.getParentDir(__file__), "res", "players_test") MockHelperTools.getPlayersDir = MagicMock(return_value=players_test_dir) mp = MatchProcessor() local_player_obj = mp.loadLocalPlayer("21232132") self.assertEquals(local_player_obj.getPlayerID(), 21232132)