Example #1
0
def test_game_status_timezones():

    test_tstamp = dt.today() + timedelta(hours=-6)
    game_ongoing_date = dt.strftime(test_tstamp, "%m/%d/%y")
    game_ongoing_time = dt.strftime(test_tstamp, "%I:%M %p") + " CST"

    test_game = AUDLclasses.Game(game_ongoing_date, game_ongoing_time + " EST",
                                 game_ts(game_ongoing_date, game_ongoing_time),
                                 'Cincinnati Revolution', 'Madison Radicals')

    test_game.set_status()

    assert 2 == test_game.status, test_game.status

    test_tstamp = dt.today() + timedelta(hours=-6)
    game_ongoing_date = dt.strftime(test_tstamp, "%m/%d/%y")
    game_ongoing_time = dt.strftime(test_tstamp, "%I:%M %p") + " PST"

    test_game = AUDLclasses.Game(game_ongoing_date, game_ongoing_time,
                                 game_ts(game_ongoing_date, game_ongoing_time),
                                 'Cincinnati Revolution', 'Madison Radicals')

    test_game.set_status()

    assert 1 == test_game.status, test_game.status
Example #2
0
def test_single_game_merge():
    """
    Creates two team instances that share a game in the same file.
    Upon loading games from this file for both teams,
    there should be only one game in the Python instance 
    if game merging is working properly.
    """

    test_league = AUDLclasses.League()
    test_league.add_teams('multiple_teams_info',
                          games=False,
                          players=False,
                          stats=False)

    for team in test_league.Teams:
        test_league.Teams[team].add_games('test_game_data.json')

    game_instances = []

    for team in test_league.Teams:
        games = test_league.Teams[team].Games
        for game in games:
            if games[game] not in game_instances:
                game_instances.append(games[game])

    assert 1 == len(game_instances)
    for team in test_league.Teams:
        games = test_league.Teams[team].Games
        assert 1 == len(games), "%i" % len(games)
Example #3
0
def test_team_add_players():

    test_team = AUDLclasses.Team(None, 224002, "Radicals", "Madison")
    test_team.add_players("test_players.json")

    assert type(test_team.Players) is dict
    assert 0 != len(test_team.Players)
Example #4
0
def test_game_attrs():

    test_game = AUDLclasses.Game("4/12/14", "3:00 PM", '2014', 'Toronto Rush',
                                 'DC Breeze')

    assert type(test_game.time) is str

    assert type(test_game.Finished) is bool

    assert type(test_game.Score) is list

    assert type(test_game.Location) is str

    assert type(test_game.home_team) is str

    assert type(test_game.away_team) is str

    assert type(test_game.home_team) is str

    assert type(test_game.away_team) is str

    assert type(test_game.home_team) is str

    assert type(test_game.away_team) is str

    assert type(test_game.Home_stats) is dict

    assert type(test_game.Away_stats) is dict

    assert type(test_game.Goals) is dict

    assert type(test_game.Quarter) is int
Example #5
0
def test_league_game_exist():
    """
    Uses league data to ensure this function is working properly
    """

    test_league = AUDLclasses.League()
    test_league.add_teams(players=False, stats=False)

    # First hand it a fake team and a fake date
    assert (False,
            None) == test_league.league_game_exist('Dubai Ranchers', '4/5/03')

    # Now a real team and a fake date
    assert (False,
            None) == test_league.league_game_exist('Minnesota Wind Chill',
                                                   '4/5/03')

    # Finally a real team and a real date

    games = test_league.Teams[5638404075159552].Games

    key = unicode('4/12/14')

    game_inst = games[key]

    assert (True, game_inst) == test_league.league_game_exist(
        'Minnesota Wind Chill', '4/12/14')
Example #6
0
def test_league_videos():

    test_league = AUDLclasses.League()

    assert 0 != len(test_league.get_videos())

    assert True == hasattr(test_league, 'Videos')
Example #7
0
def test_team_add_games():

    test_team = AUDLclasses.Team(None, 224002, "Radicals", "Madison")
    test_team.add_games()

    assert type(test_team.Games) is dict
    assert 15 == len(test_team.Games)
Example #8
0
def team_roster_setup():
    test_league = AUDLclasses.League()

    test_league.add_teams("single_team_info",
                          games=False,
                          players=False,
                          stats=False)

    return test_league
Example #9
0
def test_team_attrs():

    test_team = AUDLclasses.Team(None, 224002, "Radicals", "Madison")
    test_team.populate_team_stats()

    assert type(test_team.ID) is int

    assert type(test_team.Streak) is str

    assert type(test_team.Top_Fives) is list
Example #10
0
def test_game_set_status_final():

    d = '4/12/14'
    t = '7:00 PM EST'
    test_game = AUDLclasses.Game(d, t, game_ts(d, t), 'Cincinnati Revolution',
                                 'Madison Radicals')

    test_game.set_status()

    assert 2 == test_game.status, test_game.status

    test_tstamp = dt.today() + timedelta(days=-1)
    game_over_date = dt.strftime(test_tstamp, "%m/%d/%y")

    test_game = AUDLclasses.Game(game_over_date, t, game_ts(game_over_date, t),
                                 'Cincinnati Revolution', 'Madison Radicals')

    test_game.set_status()

    assert 2 == test_game.status, test_game.status
Example #11
0
def test_league_get_news():

    test_league = AUDLclasses.League()

    test_league.get_news()

    assert type(test_league.News) is dict, \
    "League's News attribute is not a dictionary, it is %s" % type(test_league.News)

    assert len(test_league.News) is not 0, \
    "League news was not popultaed. Length is zero"
Example #12
0
def ret_games_setup():

    test_league = AUDLclasses.League()

    test_league.add_teams('single_team_info',
                          games=False,
                          players=False,
                          stats=False)

    test_league.Teams[224002].add_games('test_game_data.json')

    return test_league
Example #13
0
def load_team_test():
    """
    Tests that the method add_teams can find a single team in the test file 
    and create an instance for it.
    """
    test_league = AUDLclasses.League()
    test_league.add_teams('single_team_info',
                          games=False,
                          players=False,
                          stats=False)
    assert 1 == len(test_league.Teams)

    assert test_league.Teams[224002].Name == 'Radicals'
    assert test_league.Teams[224002].City == 'Madison'
Example #14
0
def test_league_methods():

    test_league = AUDLclasses.League()

    test_league.add_teams(filename='multiple_teams_info',
                          games=False,
                          players=False,
                          stats=False)

    for team in test_league.Teams:

        assert type(team) is int
        assert isinstance(test_league.Teams[team], AUDLclasses.Team)
        assert type(test_league.Teams) is dict
Example #15
0
def load_all_team_data_test():
    """
    Tests that the method add_teams can find a single team in the test file, create an
    instance of the team class, and populate its players and their statistics.
    """
    test_league = AUDLclasses.League()
    test_league.add_teams('single_team_info',
                          games=False,
                          players=False,
                          stats=False)
    for team in test_league.Teams:
        test_league.Teams[team].add_games('test_game_data.json')
        test_league.Teams[team].add_players(filename='test_players.json')

    assert 1 == len(test_league.Teams)
Example #16
0
def test_League_attrs():

    test_league = AUDLclasses.League()

    assert type(test_league.This_week) is list

    assert type(test_league.Apple_users) is list

    assert type(test_league.Android_users) is list

    assert type(test_league.Video_feeds) is list

    assert type(test_league.RSS_feeds) is list

    assert type(test_league.Top_fives) is dict
Example #17
0
def test_game_exist():
    """
    Uses league data to make sure that game exists is working properly
    """

    test_league = AUDLclasses.League()
    test_league.add_teams(players=False, stats=False)

    team = test_league.Teams[5182111044599808]
    # Hand the function a false date...
    assert (False, None) == team.game_exist('4/15/11')

    key = unicode('4/13/14')
    game_inst = team.Games[key]
    # Hand the function a correct date
    assert (True, game_inst) == team.game_exist('4/13/14')
Example #18
0
def test_player_attrs():

    test_player = AUDLclasses.Player("Tom", "Annen", 11)

    assert type(test_player.Stats) is dict

    assert type(test_player.First_name) is str

    assert type(test_player.Last_name) is str

    assert type(test_player.Number) is int

    assert type(test_player.Height) is str

    assert type(test_player.Weight) is str

    assert type(test_player.Age) is int
Example #19
0
def test_team_record_method():

    test_team = team_record_setup()

    test_record = test_team.record()

    assert tuple is type(test_record), type(test_record)
    assert 3 == len(test_record), len(test_record)
    assert 3 == test_record[0], test_record[0]
    assert 2 == test_record[1], test_record[1]
    assert 1 == test_record[2], test_record[2]

    # Test a team without games
    test_team = AUDLclasses.Team(None, 206002, "Breeze", "DC")

    test_record = test_team.record()

    assert None == test_record, test_record
Example #20
0
def load_teams_test():
    """
    Tests that the method add_teams can find multiple teams in the test file 
    and create an instance for it.
    """
    test_league = AUDLclasses.League()
    test_league.add_teams('multiple_teams_info',
                          games=False,
                          players=False,
                          stats=False)
    assert 2 == len(test_league.Teams)
    assert 1 == len(test_league.Divisions)

    assert test_league.Teams[224002].Name == "Radicals"
    assert test_league.Teams[224002].City == "Madison"

    assert test_league.Teams[210001].Name == "Wind Chill"
    assert test_league.Teams[210001].City == "Minnesota"
Example #21
0
def team_record_setup():

    test_team = AUDLclasses.Team(None, 224002, "Radicals", "Madison")
    test_team.Games = {}

    test_team.Games['4/10/13'] = AUDLclasses.Game('4/10/13', "7:00 EST",
                                                  "2013", "Madison Radicals",
                                                  "Minnesota Wind Chill")
    test_team.Games['4/10/13'].home_score = 23
    test_team.Games['4/10/13'].away_score = 22

    test_team.Games['4/17/13'] = AUDLclasses.Game('4/17/13', "7:00 EST",
                                                  "2013", "Madison Radicals",
                                                  "Minnesota Wind Chill")
    test_team.Games['4/17/13'].home_score = 23
    test_team.Games['4/17/13'].away_score = 22

    test_team.Games['4/24/13'] = AUDLclasses.Game('4/24/13', "7:00 EST",
                                                  "2013", "Madison Radicals",
                                                  "Minnesota Wind Chill")
    test_team.Games['4/24/13'].home_score = 23
    test_team.Games['4/24/13'].away_score = 25

    test_team.Games['5/1/13'] = AUDLclasses.Game('5/1/13', "7:00 EST", "2013",
                                                 "Madison Radicals",
                                                 "Minnesota Wind Chill")
    test_team.Games['5/1/13'].home_score = 23
    test_team.Games['5/1/13'].away_score = 25

    test_team.Games['5/8/13'] = AUDLclasses.Game('5/8/13', "7:00 EST", "2013",
                                                 "Madison Radicals",
                                                 "Minnesota Wind Chill")
    test_team.Games['5/8/13'].home_score = 28
    test_team.Games['5/8/13'].away_score = 25

    return test_team
Example #22
0
def test_match_games():

    game_dict = [{
        "teamId":
        "5182111044599808",
        "gameId":
        "game-8ECA8C1D-6968-4FD0-A361-DE4EFF20203D",
        "opponentName":
        "Cincinnati Revolution",
        "tournamentName":
        "",
        "gamePoint":
        1000,
        "wind": {
            "mph": 0,
            "degrees": -1
        },
        "timestamp":
        "2014-04-12 19:26",
        "date":
        "Sat, 4/12",
        "time":
        "7:26",
        "msSinceEpoch":
        1397330760000,
        "ours":
        25,
        "theirs":
        16,
        "timeoutDetailsJson":
        "{\"takenSecondHalf\":2,\"quotaPerHalf\":2,\"takenFirstHalf\":2,\"quotaFloaters\":0}"
    }, {
        "teamId":
        "5182111044599808",
        "gameId":
        "game-47F12B4E-52A2-4AC4-8047-FAC93845A51B",
        "opponentName":
        "Indianapolis alleyCats",
        "tournamentName":
        "",
        "gamePoint":
        1000,
        "wind": {
            "mph": 0,
            "degrees": -1
        },
        "timestamp":
        "2014-04-13 15:42",
        "date":
        "Sun, 4/13",
        "time":
        "3:42",
        "msSinceEpoch":
        1397403720000,
        "ours":
        26,
        "theirs":
        21,
        "timeoutDetailsJson":
        "{\"takenSecondHalf\":2,\"quotaPerHalf\":2,\"takenFirstHalf\":2,\"quotaFloaters\":0}"
    }]

    d = "4/12/14"
    t = "7:00 PM EST"
    test_game = AUDLclasses.Game(d, t, game_ts(d, t), 'Cincinnati Revolution',
                                 'Madison Radicals')

    test_game.match_game(game_dict, False)

    assert test_game.home_score == 16, test_game.home_score
    assert test_game.away_score == 25, test_game.away_score
Example #23
0
def test_news():

    test_league = AUDLclasses.League()
    test_league.get_news()

    assert 0 != len(test_league.News)
Example #24
0
#!/usr/bin/python

import AUDLclasses
import sheet_reader as sr
import argparse
import threading
import traceback
import pickle

# Initialize the league class
AUDL = AUDLclasses.League()
# Add teams from local files and populate
# their information from the ultimate-numbers
# server
sr.get_csv(sr.spreadsheet_key, sr.Team_Info_gid, sr.Team_Info_Filename)
sr.get_csv(sr.spreadsheet_key, sr.Schedule_gid, sr.Schedule_Filename)
sr.get_csv(sr.spreadsheet_key, sr.Rosters_gid, sr.Rosters_filename)
AUDL.add_teams()
# Get news articles for the team
AUDL.get_news()

#save AUDL class to file
pickle.dump(AUDL, open('audl_db16.p', 'wb'))


def parse_args():

    parser = argparse.ArgumentParser()

    parser.add_argument('--refresh-int',
                        dest='interval',
Example #25
0
def test_team_methods():

    test_team = AUDLclasses.Team(None, 224002, "Radicals", "Madison")
    test_team.add_players()
    test_team.populate_team_stats()
    assert type(test_team.top_five('Assists')) is list
Example #26
0
def load_test():

    test_league = AUDLclasses.League()
    test_league.add_teams()