Пример #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")
Пример #2
0
 def testImportGame(self):
     self.addTeamWithLegaue()
     self.show_results = True
     # add games to the league
     self.valid_test = [
                        "League:,Monday & Wednesday,,,",
                        "Home Team,Away Team,Date,Time,Field",
                        "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]
     self.tl = LeagueList(self.valid_test)
     self.tl.league_id = 1
     self.tl.set_columns_indices(self.valid_test[1].split(","))
     self.tl.set_teams()
     self.tl.import_game(self.valid_test[2])
     self.assertEqual(self.tl.warnings, [])
     self.assertEqual(self.tl.errors, [])
     # not a team in the league
     self.valid_test = [
                        "League:,Monday and Wednesday,,,",
                        "Home Team,Away Team,Date,Time,Field",
                        "Domus Black,Chainsaw Black,2015-10-01,12:00, WP1"]
     self.tl = LeagueList(self.valid_test)
     self.tl.league_id = 1
     self.tl.set_columns_indices(self.valid_test[1].split(","))
     self.tl.set_teams()
     self.tl.import_game(self.valid_test[2])
     self.assertEqual(self.tl.warnings, [])
     self.assertEqual(self.tl.errors, ["Domus Black is not a team in the league"])
Пример #3
0
 def testGetLeagueID(self):
     self.addLeagues()
     self.tl = LeagueList(TestImportGames.TEST)
     team = self.tl.get_league_id("Monday & Wedneday") 
     self.assertEqual(team, 1)
     self.tl = LeagueList(TestImportGames.TEST)
     try:
         team = self.tl.get_league_id("No League") 
         self.assertEqual(True, False, "League does not exist error should be raised")
     except:
         pass
Пример #4
0
 def testGetLeagueID(self):
     league_name = "Test Import Fake League"
     league = self.add_league(league_name)
     self.tl = LeagueList(TestImportGames.TEST,
                          session=MockSession(self))
     league_id = self.tl.get_league_id(league_name)
     self.assertEqual(league['league_id'], league_id)
     self.tl = LeagueList(TestImportGames.TEST,
                          session=MockSession(self))
     try:
         self.tl.get_league_id("No League")
         self.assertEqual(True, False,
                          "League does not exist error should be raised")
     except Exception:
         pass
Пример #5
0
 def testCheckHeader(self):
     # check valid header
     self.tl = LeagueList(TestImportGames.TEST)
     valid = self.tl.check_header(TestImportGames.TEST[0:2])
     self.assertEqual(valid, True)
     # check a header that is too short
     self.tl = LeagueList(TestImportGames.TOO_SHORT)
     valid = self.tl.check_header(TestImportGames.TOO_SHORT[0:2])
     self.assertEqual(valid, False)
     # check a header that has too few columns
     self.tl = LeagueList(TestImportGames.TOO_FEW_COLUMNS)
     valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
     self.assertEqual(valid, False)
     # check a header that is missing a column
     self.tl = LeagueList(TestImportGames.MISSING_HOME_NAME)
     valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
     self.assertEqual(valid, False)
Пример #6
0
 def testInvalidCases(self):
     self.addTeamWithLegaue()
     # test bad header
     self.bad_header = [
                        "League:,Monday & Wedneday,,,",
                        "Home Team,Away Team,Date,Time,sdjfkhskdj",
                        "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]        
     self.tl = LeagueList(self.bad_header)
     self.tl.import_league()
     # test bad league
     self.bad_league = [
                        "Leaguex:,Monday & Wedneday,,,",
                        "Home Team,Away Team,Date,Time,Field",
                        "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]
     self.tl = LeagueList(self.bad_league)
     try:
         self.tl.import_league()
     except LeagueDoesNotExist:
         pass
     # test bad game
     self.bad_game = [
                        "League:,Monday & Wedneday,,,",
                        "Home Team,Away Team,Date,Time,Field",
                        "Domus Green,Chainsaw Black,2015-xx-01,12:00,WP1"]
     
     self.tl = LeagueList(self.bad_game)
     try:
         self.tl.import_league()
         self.assertEqual(True, False, "should raise error")
     except InvalidField:
         pass
     self.bad_team = [
                        "League:,Monday & Wedneday,,,",
                        "Home Team,Away Team,Date,Time,Field",
                        "X Green,Chainsaw Black,2015-10-01,12:00,WP1"]
     
     # test bad team in game
     self.tl = LeagueList(self.bad_team)
     self.tl.import_league()
     self.assertEqual(self.tl.warnings, [])
     self.assertEqual(['X Green is not a team in the league'],
                      self.tl.errors)
Пример #7
0
 def testValidCases(self):
     self.addTeamWithLegaue()
     # import  a set of good games
     self.valid_test = [
                        "League:,Monday & Wedneday,,,",
                        "Home Team,Away Team,Date,Time,Field",
                        "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]
     self.tl = LeagueList(self.valid_test)
     self.tl.import_league()
     self.assertEqual([], self.tl.warnings)
     self.assertEqual([], self.tl.errors)
Пример #8
0
    def testImportGame(self):
        # add a league, sponsor and two teams
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        sponsor = self.add_sponsor("Import Test Sponsor")
        t1 = self.add_team("Green", sponsor, league)
        t2 = self.add_team("Black", sponsor, league)

        # a valid request to add a game
        day = datetime.date.today().strftime("%Y-%m-%d")
        game_entry = "{},{},{},12:00,WP1".format(t1['team_name'],
                                                 t2['team_name'],
                                                 day)
        self.valid_test = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.valid_test,
                             session=MockSession(self))
        self.tl.league_id = league['league_id']
        self.tl.set_columns_indices(self.valid_test[1].split(","))
        self.tl.set_teams()
        self.tl.import_game(self.valid_test[2])
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(self.tl.errors, [])

        # an invalid request - one team not in the league
        game_entry = "{},{},{},12:00,WP1".format("NOT A TEAM",
                                                 t2['team_name'],
                                                 day)
        self.valid_test = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.valid_test,
                             session=MockSession(self))
        self.tl.league_id = league['league_id']
        self.tl.set_columns_indices(self.valid_test[1].split(","))
        self.tl.set_teams()
        self.tl.import_game(self.valid_test[2])
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(self.tl.errors,
                         ["NOT A TEAM is not a team in the league"])
Пример #9
0
    def testValidCases(self):
        # add a league, sponsor and two teams
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        sponsor = self.add_sponsor("Import Test Sponsor")
        t1 = self.add_team("Green", sponsor, league)
        t2 = self.add_team("Black", sponsor, league)

        # import  a set of good games
        day = datetime.date.today().strftime("%Y-%m-%d")
        game_entry = "{},{},{},12:00,WP1".format(t1['team_name'],
                                                 t2['team_name'],
                                                 day)
        self.valid_test = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.valid_test,
                             session=MockSession(self))
        self.tl.import_league()
        self.assertEqual([], self.tl.warnings)
        self.assertEqual([], self.tl.errors)
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)
Пример #11
0
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")
        print(content)
        lines = content.replace("\r", "")
        lines = lines.split("\n")
        team = LeagueList(lines)
        team.import_league()
        results['errors'] = team.errors
        results['warnings'] = team.warnings
        results['success'] = True
        if len(results['errors']) > 0:
            results['success'] = False
    else:
        results['errors'] = "File should ba CSV"
        results['success'] = False
    return dumps(results)
Пример #12
0
 def testCheckHeader(self):
     # check valid header
     self.tl = LeagueList(TestImportGames.TEST,
                          session=MockSession(self))
     valid = self.tl.check_header(TestImportGames.TEST[0:2])
     self.assertEqual(valid, True)
     # check a header that is too short
     self.tl = LeagueList(TestImportGames.TOO_SHORT,
                          session=MockSession(self))
     valid = self.tl.check_header(TestImportGames.TOO_SHORT[0:2])
     self.assertEqual(valid, False)
     # check a header that has too few columns
     self.tl = LeagueList(TestImportGames.TOO_FEW_COLUMNS,
                          session=MockSession(self))
     valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
     self.assertEqual(valid, False)
     # check a header that is missing a column
     self.tl = LeagueList(TestImportGames.MISSING_HOME_NAME,
                          session=MockSession(self))
     valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
     self.assertEqual(valid, False)
Пример #13
0
class TestImportGames(TestSetup):
    TEST = [
                 "League:,Monday and Wednesday,,,",
                 "Home Team,Away Team,Date,Time,Field",
                 "Domus Green,Chainsaw Black,2015-10-01", "12:00", "WP1"]
    TOO_SHORT = ["Home Team,Away Team,Date,Time,Field"]
    TOO_FEW_COLUMNS = ["League:,Monday and Wednesday,,,",
                       "Home Team,Away Team,Date,Time",
                       "Domus Green,Chainsaw Black,2015-10-01", "12:00", "WP1"
                       ]
    MISSING_HOME_NAME = [
                         "League:,Monday and Wednesday,,,",
                         ",Away Team,Date,Time",
                         "Domus Green,Chainsaw Black,2015-10-01",
                         "12:00",
                         "WP1"
                            ]

    def testParseHeader(self):
        self.tl = LeagueList(TestImportGames.TEST, session=MockSession(self))
        l, h = self.tl.parse_header(TestImportGames.TEST[0: 2])
        self.assertEqual(l, 'Monday and Wednesday')
        self.assertEqual(h,
                         ["Home Team", "Away Team", "Date", "Time", "Field"])

    def testCheckHeader(self):
        # check valid header
        self.tl = LeagueList(TestImportGames.TEST,
                             session=MockSession(self))
        valid = self.tl.check_header(TestImportGames.TEST[0:2])
        self.assertEqual(valid, True)
        # check a header that is too short
        self.tl = LeagueList(TestImportGames.TOO_SHORT,
                             session=MockSession(self))
        valid = self.tl.check_header(TestImportGames.TOO_SHORT[0:2])
        self.assertEqual(valid, False)
        # check a header that has too few columns
        self.tl = LeagueList(TestImportGames.TOO_FEW_COLUMNS,
                             session=MockSession(self))
        valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
        self.assertEqual(valid, False)
        # check a header that is missing a column
        self.tl = LeagueList(TestImportGames.MISSING_HOME_NAME,
                             session=MockSession(self))
        valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
        self.assertEqual(valid, False)

    def testGetLeagueID(self):
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        self.tl = LeagueList(TestImportGames.TEST,
                             session=MockSession(self))
        league_id = self.tl.get_league_id(league_name)
        self.assertEqual(league['league_id'], league_id)
        self.tl = LeagueList(TestImportGames.TEST,
                             session=MockSession(self))
        try:
            self.tl.get_league_id("No League")
            self.assertEqual(True, False,
                             "League does not exist error should be raised")
        except Exception:
            pass

    def testImportGame(self):
        # add a league, sponsor and two teams
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        sponsor = self.add_sponsor("Import Test Sponsor")
        t1 = self.add_team("Green", sponsor, league)
        t2 = self.add_team("Black", sponsor, league)

        # a valid request to add a game
        day = datetime.date.today().strftime("%Y-%m-%d")
        game_entry = "{},{},{},12:00,WP1".format(t1['team_name'],
                                                 t2['team_name'],
                                                 day)
        self.valid_test = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.valid_test,
                             session=MockSession(self))
        self.tl.league_id = league['league_id']
        self.tl.set_columns_indices(self.valid_test[1].split(","))
        self.tl.set_teams()
        self.tl.import_game(self.valid_test[2])
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(self.tl.errors, [])

        # an invalid request - one team not in the league
        game_entry = "{},{},{},12:00,WP1".format("NOT A TEAM",
                                                 t2['team_name'],
                                                 day)
        self.valid_test = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.valid_test,
                             session=MockSession(self))
        self.tl.league_id = league['league_id']
        self.tl.set_columns_indices(self.valid_test[1].split(","))
        self.tl.set_teams()
        self.tl.import_game(self.valid_test[2])
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(self.tl.errors,
                         ["NOT A TEAM is not a team in the league"])

    def testValidCases(self):
        # add a league, sponsor and two teams
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        sponsor = self.add_sponsor("Import Test Sponsor")
        t1 = self.add_team("Green", sponsor, league)
        t2 = self.add_team("Black", sponsor, league)

        # import  a set of good games
        day = datetime.date.today().strftime("%Y-%m-%d")
        game_entry = "{},{},{},12:00,WP1".format(t1['team_name'],
                                                 t2['team_name'],
                                                 day)
        self.valid_test = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.valid_test,
                             session=MockSession(self))
        self.tl.import_league()
        self.assertEqual([], self.tl.warnings)
        self.assertEqual([], self.tl.errors)

    def testInvalidCases(self):
        # add a league, sponsor and two teams
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        sponsor = self.add_sponsor("Import Test Sponsor")
        t1 = self.add_team("Green", sponsor, league)
        t2 = self.add_team("Black", sponsor, league)

        # test bad header
        # import  a set of good games
        day = datetime.date.today().strftime("%Y-%m-%d")
        game_entry = "{},{},{},12:00,WP1".format(t1['team_name'],
                                                 t2['team_name'],
                                                 day)

        self.bad_header = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,asjdl9798u",
                           game_entry]
        self.tl = LeagueList(self.bad_header)
        self.tl.import_league()

        # test bad league
        self.bad_league = ["Leaguex:,{}xas,,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.bad_league,
                             session=MockSession(self))
        try:
            self.tl.import_league()
        except LeagueDoesNotExist:
            pass

        # test bad game
        game_entry = "{},{},2015-XX-01,12:00,WP1".format(t1['team_name'],
                                                         t2['team_name'])
        self.bad_game = ["League:,{},,,".format(league_name),
                         "Home Team,Away Team,Date,Time,Field",
                         game_entry]
        self.tl = LeagueList(self.bad_game,
                             session=MockSession(self))
        try:
            self.tl.import_league()
            self.assertEqual(True, False, "should raise error")
        except InvalidField:
            pass

        # test bad team in game
        bad_team = "xaasdasd3"
        game_entry = "{},{},{},12:00,WP1".format(bad_team,
                                                 t2['team_name'],
                                                 day)
        self.bad_team = ["League:,{},,,".format(league_name),
                         "Home Team,Away Team,Date,Time,Field",
                         game_entry]

        self.tl = LeagueList(self.bad_team,
                             session=MockSession(self))
        self.tl.import_league()
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(['{} is not a team in the league'.format(bad_team)],
                         self.tl.errors)
Пример #14
0
    def testInvalidCases(self):
        # add a league, sponsor and two teams
        league_name = "Test Import Fake League"
        league = self.add_league(league_name)
        sponsor = self.add_sponsor("Import Test Sponsor")
        t1 = self.add_team("Green", sponsor, league)
        t2 = self.add_team("Black", sponsor, league)

        # test bad header
        # import  a set of good games
        day = datetime.date.today().strftime("%Y-%m-%d")
        game_entry = "{},{},{},12:00,WP1".format(t1['team_name'],
                                                 t2['team_name'],
                                                 day)

        self.bad_header = ["League:,{},,,".format(league_name),
                           "Home Team,Away Team,Date,Time,asjdl9798u",
                           game_entry]
        self.tl = LeagueList(self.bad_header)
        self.tl.import_league()

        # test bad league
        self.bad_league = ["Leaguex:,{}xas,,,".format(league_name),
                           "Home Team,Away Team,Date,Time,Field",
                           game_entry]
        self.tl = LeagueList(self.bad_league,
                             session=MockSession(self))
        try:
            self.tl.import_league()
        except LeagueDoesNotExist:
            pass

        # test bad game
        game_entry = "{},{},2015-XX-01,12:00,WP1".format(t1['team_name'],
                                                         t2['team_name'])
        self.bad_game = ["League:,{},,,".format(league_name),
                         "Home Team,Away Team,Date,Time,Field",
                         game_entry]
        self.tl = LeagueList(self.bad_game,
                             session=MockSession(self))
        try:
            self.tl.import_league()
            self.assertEqual(True, False, "should raise error")
        except InvalidField:
            pass

        # test bad team in game
        bad_team = "xaasdasd3"
        game_entry = "{},{},{},12:00,WP1".format(bad_team,
                                                 t2['team_name'],
                                                 day)
        self.bad_team = ["League:,{},,,".format(league_name),
                         "Home Team,Away Team,Date,Time,Field",
                         game_entry]

        self.tl = LeagueList(self.bad_team,
                             session=MockSession(self))
        self.tl.import_league()
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(['{} is not a team in the league'.format(bad_team)],
                         self.tl.errors)
Пример #15
0
 def testParseHeader(self):
     self.tl = LeagueList(TestImportGames.TEST, session=MockSession(self))
     l, h = self.tl.parse_header(TestImportGames.TEST[0: 2])
     self.assertEqual(l, 'Monday and Wednesday')
     self.assertEqual(h,
                      ["Home Team", "Away Team", "Date", "Time", "Field"])
Пример #16
0
 def testParseHeader(self):
     self.tl = LeagueList(TestImportGames.TEST)
     l,h = self.tl.parse_header(TestImportGames.TEST[0:2])
     self.assertEqual(l, 'Monday and Wednesday')
     self.assertEqual(h, ["Home Team", "Away Team", "Date", "Time", "Field"])
Пример #17
0
class TestImportGames(TestSetup):
    TEST = [
                 "League:,Monday and Wednesday,,,",
                 "Home Team,Away Team,Date,Time,Field",
                 "Domus Green,Chainsaw Black,2015-10-01", "12:00", "WP1"]
    TOO_SHORT = ["Home Team,Away Team,Date,Time,Field",]
    TOO_FEW_COLUMNS = ["League:,Monday and Wednesday,,,",
                            "Home Team,Away Team,Date,Time",
                            "Domus Green,Chainsaw Black,2015-10-01", "12:00", "WP1"
                            ]
    MISSING_HOME_NAME = [
                                "League:,Monday and Wednesday,,,",
                                ",Away Team,Date,Time",
                                "Domus Green,Chainsaw Black,2015-10-01", "12:00", "WP1"
                            ]
    def testParseHeader(self):
        self.tl = LeagueList(TestImportGames.TEST)
        l,h = self.tl.parse_header(TestImportGames.TEST[0:2])
        self.assertEqual(l, 'Monday and Wednesday')
        self.assertEqual(h, ["Home Team", "Away Team", "Date", "Time", "Field"])

    def testCheckHeader(self):
        # check valid header
        self.tl = LeagueList(TestImportGames.TEST)
        valid = self.tl.check_header(TestImportGames.TEST[0:2])
        self.assertEqual(valid, True)
        # check a header that is too short
        self.tl = LeagueList(TestImportGames.TOO_SHORT)
        valid = self.tl.check_header(TestImportGames.TOO_SHORT[0:2])
        self.assertEqual(valid, False)
        # check a header that has too few columns
        self.tl = LeagueList(TestImportGames.TOO_FEW_COLUMNS)
        valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
        self.assertEqual(valid, False)
        # check a header that is missing a column
        self.tl = LeagueList(TestImportGames.MISSING_HOME_NAME)
        valid = self.tl.check_header(TestImportGames.TOO_FEW_COLUMNS[0:2])
        self.assertEqual(valid, False)

    def testGetLeagueID(self):
        self.addLeagues()
        self.tl = LeagueList(TestImportGames.TEST)
        team = self.tl.get_league_id("Monday & Wedneday") 
        self.assertEqual(team, 1)
        self.tl = LeagueList(TestImportGames.TEST)
        try:
            team = self.tl.get_league_id("No League") 
            self.assertEqual(True, False, "League does not exist error should be raised")
        except:
            pass

    def testImportGame(self):
        self.addTeamWithLegaue()
        self.show_results = True
        # add games to the league
        self.valid_test = [
                           "League:,Monday & Wednesday,,,",
                           "Home Team,Away Team,Date,Time,Field",
                           "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]
        self.tl = LeagueList(self.valid_test)
        self.tl.league_id = 1
        self.tl.set_columns_indices(self.valid_test[1].split(","))
        self.tl.set_teams()
        self.tl.import_game(self.valid_test[2])
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(self.tl.errors, [])
        # not a team in the league
        self.valid_test = [
                           "League:,Monday and Wednesday,,,",
                           "Home Team,Away Team,Date,Time,Field",
                           "Domus Black,Chainsaw Black,2015-10-01,12:00, WP1"]
        self.tl = LeagueList(self.valid_test)
        self.tl.league_id = 1
        self.tl.set_columns_indices(self.valid_test[1].split(","))
        self.tl.set_teams()
        self.tl.import_game(self.valid_test[2])
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(self.tl.errors, ["Domus Black is not a team in the league"])

    def testValidCases(self):
        self.addTeamWithLegaue()
        # import  a set of good games
        self.valid_test = [
                           "League:,Monday & Wedneday,,,",
                           "Home Team,Away Team,Date,Time,Field",
                           "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]
        self.tl = LeagueList(self.valid_test)
        self.tl.import_league()
        self.assertEqual([], self.tl.warnings)
        self.assertEqual([], self.tl.errors)

    def testInvalidCases(self):
        self.addTeamWithLegaue()
        # test bad header
        self.bad_header = [
                           "League:,Monday & Wedneday,,,",
                           "Home Team,Away Team,Date,Time,sdjfkhskdj",
                           "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]        
        self.tl = LeagueList(self.bad_header)
        self.tl.import_league()
        # test bad league
        self.bad_league = [
                           "Leaguex:,Monday & Wedneday,,,",
                           "Home Team,Away Team,Date,Time,Field",
                           "Domus Green,Chainsaw Black,2015-10-01,12:00,WP1"]
        self.tl = LeagueList(self.bad_league)
        try:
            self.tl.import_league()
        except LeagueDoesNotExist:
            pass
        # test bad game
        self.bad_game = [
                           "League:,Monday & Wedneday,,,",
                           "Home Team,Away Team,Date,Time,Field",
                           "Domus Green,Chainsaw Black,2015-xx-01,12:00,WP1"]
        
        self.tl = LeagueList(self.bad_game)
        try:
            self.tl.import_league()
            self.assertEqual(True, False, "should raise error")
        except InvalidField:
            pass
        self.bad_team = [
                           "League:,Monday & Wedneday,,,",
                           "Home Team,Away Team,Date,Time,Field",
                           "X Green,Chainsaw Black,2015-10-01,12:00,WP1"]
        
        # test bad team in game
        self.tl = LeagueList(self.bad_team)
        self.tl.import_league()
        self.assertEqual(self.tl.warnings, [])
        self.assertEqual(['X Green is not a team in the league'],
                         self.tl.errors)