Пример #1
0
 def testImportLeagueWarnings(self):
     """Import a league that has warnings"""
     sponsor_name = str(uuid.uuid1())
     league_name = str(uuid.uuid1())
     division_name = str(uuid.uuid1())
     team_two_color = "Red"
     sponsor = self.add_sponsor(sponsor_name)
     league = self.add_league(league_name)
     division = self.add_division(division_name)
     team_two = self.add_team(team_two_color, sponsor, league)
     date = datetime.datetime.today().strftime("%Y-%m-%d")
     time = datetime.datetime.today().strftime("%H:%M")
     header_line = ",".join([
         HEADERS["home"], HEADERS["away"], HEADERS["date"], HEADERS["time"],
         HEADERS["field"]
     ])
     entry = "{},{},{},{},{}".format("not a team", team_two["team_name"],
                                     date, time, "WP1")
     lines = [
         "{}:,{},".format(BACKGROUND['league'], league["league_name"]),
         "{}:,{},".format(BACKGROUND['division'],
                          division["division_name"]), header_line, entry
     ]
     league_importer = LeagueList(lines,
                                  session=TestImportMockSession(self))
     league_importer.import_league_functional()
     error = "Expected warning when importing league with non-existent team"
     self.assertEqual(len(league_importer.warnings), 1, error)
     league = League.query.get(league["league_id"])
     games = []
     for game in league.games:
         games.append(game.json())
     self.assertEqual(len(games), 0, "Did add game where team was missing")
def admin_import_game_list():
    results = {'errors': [], 'success': False, 'warnings': []}
    if not logged_in():
        results['errors'].append("Permission denied")
        return dumps(results)
    file = request.files['file']
    if file and allowed_file(file.filename):
        content = (file.read()).decode("UTF-8")
        lines = content.replace("\r", "")
        lines = lines.split("\n")
        team = LeagueList(lines)
        team.import_league_functional()
        results['errors'] = team.errors
        results['warnings'] = team.warnings
        results['success'] = True
        if len(results['errors']) > 0:
            results['success'] = False
    else:
        results['errors'] = "File should be a CSV"
        results['success'] = False
    return dumps(results)