sportsball 0.3.85__tar.gz → 0.3.86__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sportsball-0.3.85/sportsball.egg-info → sportsball-0.3.86}/PKG-INFO +24 -1
- {sportsball-0.3.85 → sportsball-0.3.86}/README.md +23 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/setup.py +1 -1
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/__init__.py +1 -1
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/combined/afl_combined_league_model.py +0 -16
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_league_model.py +1 -3
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_team_model.py +3 -2
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/game_model.py +5 -1
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/google/google_address_model.py +37 -9
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/combined/nba_combined_league_model.py +1 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsreference/sportsreference_game_model.py +3 -0
- {sportsball-0.3.85 → sportsball-0.3.86/sportsball.egg-info}/PKG-INFO +24 -1
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball.egg-info/SOURCES.txt +1 -0
- sportsball-0.3.86/tests/data/combined/combined_team_model_test.py +215 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/LICENSE +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/MANIFEST.in +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/requirements.txt +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/setup.cfg +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/__main__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/args.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/cache.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/address_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afl/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afl/afl_afl_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afl/afl_afl_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afl/afl_afl_player_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afl/afl_afl_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afl/afl_afl_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_player_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/aussportsbetting/afl_aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/espn/afl_espn_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/oddsportal/afl_oddsportal_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/aussportsbetting_bookie_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/aussportsbetting_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/aussportsbetting_odds_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/aussportsbetting_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/aussportsbetting/aussportsbetting_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/bookie_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_address_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_player_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/combined/combined_weather_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_bookie_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_odds_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_player_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/espn/espn_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/field_type.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/google/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/google/google_news_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/league.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/espn/nba_espn_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/nba/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/nba/nba_nba_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/nba/nba_nba_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/nba/nba_nba_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/oddsportal/nba_oddsportal_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/sportsdb/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/sportsdb/nba_sportsdb_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/sportsreference/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nba/sportsreference/nba_sportsreference_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/combined/ncaab_combined_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/espn/ncaab_espn_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/oddsportal/ncaab_oddsportal_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/sportsreference/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaab/sportsreference/ncaab_sportsreference_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/combined/ncaaf_combined_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/espn/ncaaf_espn_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/ncaaf/oddsportal/ncaaf_oddsportal_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/news_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/aussportsbetting/nfl_aussportsbetting_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/combined/nfl_combined_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/espn/nfl_espn_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/oddsportal/nfl_oddsportal_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/sportsdb/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/nfl/sportsdb/nfl_sportsdb_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/odds_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/decrypt.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/oddsportal_bookie_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/oddsportal_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/oddsportal_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/oddsportal_odds_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/oddsportal_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/oddsportal/oddsportal_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/player_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/season_type.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/social_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsdb/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsdb/sportsdb_game_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsdb/sportsdb_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsdb/sportsdb_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsdb/sportsdb_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsreference/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsreference/sportsreference_league_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsreference/sportsreference_player_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsreference/sportsreference_team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/sportsreference/sportsreference_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/team_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather/gribstream/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather/gribstream/gribstream_weather_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather/multi_weather_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather/openmeteo/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather/openmeteo/openmeteo_weather_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/weather_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/wikipedia/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/wikipedia/wikipedia_venue_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/x/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/x/x_social_model.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/logger.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/loglevel.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/playwright.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/proxy_session.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/session.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/sportsball.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/vendor/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball/vendor/pygooglenews/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball.egg-info/dependency_links.txt +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball.egg-info/entry_points.txt +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball.egg-info/not-zip-safe +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball.egg-info/requires.txt +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/sportsball.egg-info/top_level.txt +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/afl/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/afl/afl_afl_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/afltables/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/afltables/afl_afltables_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/afltables/afl_afltables_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/afl/afltables/afl_afltables_player_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/aussportsbetting/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/aussportsbetting/aussportsbetting_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/combined/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/combined/combined_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/combined/combined_player_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/espn/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/espn/espn_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/espn/espn_player_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/google/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/google/google_address_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/google/google_news_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/nba/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/nba/nba_nba_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/nba/nba_nba_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/nba/nba_nba_team_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/sportsdb/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/sportsdb/nba_sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/sportsreference/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nba/sportsreference/nba_sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/ncaab/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/ncaab/sportsreference/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/ncaab/sportsreference/ncaab_sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nfl/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nfl/sportsdb/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/nfl/sportsdb/nfl_sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/oddsportal/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/oddsportal/decrypt_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/oddsportal/oddsportal_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/oddsportal/oddsportal_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/player_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/social_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsdb/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsdb/sportsdb_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsdb/sportsdb_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsdb/sportsdb_team_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsdb/sportsdb_venue_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsreference/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsreference/sportsreference_game_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsreference/sportsreference_league_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsreference/sportsreference_player_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsreference/sportsreference_team_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/sportsreference/sportsreference_venue_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/team_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/x/__init__.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/data/x/x_social_model_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/proxy_session_test.py +0 -0
- {sportsball-0.3.85 → sportsball-0.3.86}/tests/sportsball_test.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: sportsball
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.86
|
4
4
|
Summary: A library for pulling in and normalising sports stats.
|
5
5
|
Home-page: https://github.com/8W9aG/sportsball
|
6
6
|
Author: Will Sackfield
|
@@ -193,6 +193,29 @@ A representation of a player within a team within a game.
|
|
193
193
|
* **offensive_rebounds**: The number of rebounds during offense by the player made in the game.
|
194
194
|
* **assists**: The number of times the player made a pass that resulted in a field goal in the game.
|
195
195
|
* **turnovers**: The number of times a player loses possession of the ball in the game.
|
196
|
+
* **name**: The name of the player.
|
197
|
+
* **marks**: The number of marks the player performed in the game.
|
198
|
+
* **handballs**: The number of handballs the player performed in the game.
|
199
|
+
* **disposals**: The number of disposals the player performed in the game.
|
200
|
+
* **goals**: The number of goals scored by the player in the game.
|
201
|
+
* **behinds**: The number of behinds scored by the player in the game.
|
202
|
+
* **hit_outs**: The number of hit outs scored by the player in the game.
|
203
|
+
* **tackles**: The number of tackles performed by the player in the game.
|
204
|
+
* **rebounds**: The number of rebounds performed by the player in the game.
|
205
|
+
* **insides**: The number of insides performed by the player in the game.
|
206
|
+
* **clearances**: The number of clearances performed by the player in the game.
|
207
|
+
* **clangers**: The number of clangers performed by the player in the game.
|
208
|
+
* **free_kicks_for**: The number of free kicks given to the player in the game.
|
209
|
+
* **free_kicks_against**: The number of free kicks given against an action taken by the player in the game.
|
210
|
+
* **brownlow_votes**: The number of votes for the brownlow medal the player has in the current season.
|
211
|
+
* **contested_possessions**: The number of possessions the player had in the game that were contested.
|
212
|
+
* **uncontested_possessions**: The number of posessions the player had in the game that were uncontested.
|
213
|
+
* **contested_marks**: The number of marks the player had in the game that were contested.
|
214
|
+
* **marks_inside**: The number of marks the player had in the game inside the 50.
|
215
|
+
* **one_percenters:** The number of times the player spoils, knock-ons, smothers or shepherds the ball during the game.
|
216
|
+
* **bounces**: The number of bounces the player makes in the game.
|
217
|
+
* **goal_assists**: The number of assists on goal the player had in the game.
|
218
|
+
* **percentage_played**: The percentage of the game the player was on the field.
|
196
219
|
|
197
220
|
#### Odds
|
198
221
|
|
@@ -134,6 +134,29 @@ A representation of a player within a team within a game.
|
|
134
134
|
* **offensive_rebounds**: The number of rebounds during offense by the player made in the game.
|
135
135
|
* **assists**: The number of times the player made a pass that resulted in a field goal in the game.
|
136
136
|
* **turnovers**: The number of times a player loses possession of the ball in the game.
|
137
|
+
* **name**: The name of the player.
|
138
|
+
* **marks**: The number of marks the player performed in the game.
|
139
|
+
* **handballs**: The number of handballs the player performed in the game.
|
140
|
+
* **disposals**: The number of disposals the player performed in the game.
|
141
|
+
* **goals**: The number of goals scored by the player in the game.
|
142
|
+
* **behinds**: The number of behinds scored by the player in the game.
|
143
|
+
* **hit_outs**: The number of hit outs scored by the player in the game.
|
144
|
+
* **tackles**: The number of tackles performed by the player in the game.
|
145
|
+
* **rebounds**: The number of rebounds performed by the player in the game.
|
146
|
+
* **insides**: The number of insides performed by the player in the game.
|
147
|
+
* **clearances**: The number of clearances performed by the player in the game.
|
148
|
+
* **clangers**: The number of clangers performed by the player in the game.
|
149
|
+
* **free_kicks_for**: The number of free kicks given to the player in the game.
|
150
|
+
* **free_kicks_against**: The number of free kicks given against an action taken by the player in the game.
|
151
|
+
* **brownlow_votes**: The number of votes for the brownlow medal the player has in the current season.
|
152
|
+
* **contested_possessions**: The number of possessions the player had in the game that were contested.
|
153
|
+
* **uncontested_possessions**: The number of posessions the player had in the game that were uncontested.
|
154
|
+
* **contested_marks**: The number of marks the player had in the game that were contested.
|
155
|
+
* **marks_inside**: The number of marks the player had in the game inside the 50.
|
156
|
+
* **one_percenters:** The number of times the player spoils, knock-ons, smothers or shepherds the ball during the game.
|
157
|
+
* **bounces**: The number of bounces the player makes in the game.
|
158
|
+
* **goal_assists**: The number of assists on goal the player had in the game.
|
159
|
+
* **percentage_played**: The percentage of the game the player was on the field.
|
137
160
|
|
138
161
|
#### Odds
|
139
162
|
|
@@ -26,7 +26,7 @@ def install_requires() -> typing.List[str]:
|
|
26
26
|
|
27
27
|
setup(
|
28
28
|
name='sportsball',
|
29
|
-
version='0.3.
|
29
|
+
version='0.3.86',
|
30
30
|
description='A library for pulling in and normalising sports stats.',
|
31
31
|
long_description=long_description,
|
32
32
|
long_description_content_type='text/markdown',
|
{sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/combined/afl_combined_league_model.py
RENAMED
@@ -246,18 +246,6 @@ AFL_VENUE_IDENTITY_MAP = {
|
|
246
246
|
"Barossa Park": BAROSSA_PARK,
|
247
247
|
"Ninja Stadium": BELLERIVE_OVAL,
|
248
248
|
}
|
249
|
-
RYAN_LESTER = "afl:CD_I291548"
|
250
|
-
JACK_PAYNE = "afl:CD_I1002347"
|
251
|
-
DAYNE_ZORKO = "afl:CD_I261224"
|
252
|
-
JAMES_WORPEL = "James_Worpel"
|
253
|
-
JOSH_WEDDLE = "Josh_Weddle"
|
254
|
-
AFL_PLAYER_IDENTITY_MAP = {
|
255
|
-
"afl:CD_I291548": RYAN_LESTER,
|
256
|
-
"afl:CD_I1002347": JACK_PAYNE,
|
257
|
-
"afl:CD_I261224": DAYNE_ZORKO,
|
258
|
-
"James_Worpel": JAMES_WORPEL,
|
259
|
-
"Josh_Weddle": JOSH_WEDDLE,
|
260
|
-
}
|
261
249
|
|
262
250
|
|
263
251
|
class AFLCombinedLeagueModel(CombinedLeagueModel):
|
@@ -283,7 +271,3 @@ class AFLCombinedLeagueModel(CombinedLeagueModel):
|
|
283
271
|
@classmethod
|
284
272
|
def venue_identity_map(cls) -> dict[str, str]:
|
285
273
|
return AFL_VENUE_IDENTITY_MAP
|
286
|
-
|
287
|
-
@classmethod
|
288
|
-
def player_identity_map(cls) -> dict[str, str]:
|
289
|
-
return AFL_PLAYER_IDENTITY_MAP
|
@@ -47,9 +47,7 @@ class CombinedLeagueModel(LeagueModel):
|
|
47
47
|
@classmethod
|
48
48
|
def player_identity_map(cls) -> dict[str, str]:
|
49
49
|
"""A map to resolve the different player identities to a consistent identity."""
|
50
|
-
|
51
|
-
"player_identity_map not implemented on CombinedLeagueModel parent class."
|
52
|
-
)
|
50
|
+
return {}
|
53
51
|
|
54
52
|
@property
|
55
53
|
def games(self) -> Iterator[GameModel]:
|
@@ -1,6 +1,7 @@
|
|
1
1
|
"""Combined team model."""
|
2
2
|
|
3
3
|
# pylint: disable=too-many-locals
|
4
|
+
import logging
|
4
5
|
import re
|
5
6
|
import unicodedata
|
6
7
|
|
@@ -18,7 +19,7 @@ def _normalise_player_name(name: str) -> str:
|
|
18
19
|
# Handle "Surname, Firstname"
|
19
20
|
if "," in name:
|
20
21
|
name = " ".join(reversed([x.strip() for x in name.split(",")]))
|
21
|
-
return REGEX.sub("", unicodedata.normalize("NFC", name).lower())
|
22
|
+
return REGEX.sub("", unicodedata.normalize("NFC", name).lower().strip())
|
22
23
|
|
23
24
|
|
24
25
|
def create_combined_team_model(
|
@@ -83,7 +84,7 @@ def create_combined_team_model(
|
|
83
84
|
name=team_models[0].name,
|
84
85
|
location=location,
|
85
86
|
players=[ # pyright: ignore
|
86
|
-
create_combined_player_model(
|
87
|
+
create_combined_player_model(v, k) for k, v in players.items()
|
87
88
|
],
|
88
89
|
odds=[x[0] for x in odds.values()],
|
89
90
|
points=points,
|
@@ -52,7 +52,11 @@ class GameModel(BaseModel):
|
|
52
52
|
end_dt: datetime.datetime | None = Field(
|
53
53
|
..., json_schema_extra={TYPE_KEY: FieldType.LOOKAHEAD}, alias=END_DT_COLUMN
|
54
54
|
)
|
55
|
-
attendance: int | None = Field(
|
55
|
+
attendance: int | None = Field(
|
56
|
+
...,
|
57
|
+
json_schema_extra={TYPE_KEY: FieldType.LOOKAHEAD},
|
58
|
+
alias=GAME_ATTENDANCE_COLUMN,
|
59
|
+
)
|
56
60
|
league: str = Field(..., alias=LEAGUE_COLUMN)
|
57
61
|
year: int | None
|
58
62
|
season_type: SeasonType | None
|
@@ -1740,7 +1740,7 @@ DUNKIN_DONUTS_CENTER = SportsballGeocodeTuple(
|
|
1740
1740
|
)
|
1741
1741
|
CHI_HEALTH_CENTER = SportsballGeocodeTuple(
|
1742
1742
|
city="Omaha",
|
1743
|
-
state="
|
1743
|
+
state="NE",
|
1744
1744
|
postal="",
|
1745
1745
|
lat=41.263,
|
1746
1746
|
lng=-95.928,
|
@@ -4599,7 +4599,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
4599
4599
|
),
|
4600
4600
|
"Pinnacle Bank Arena, Lincoln, Nebraska": SportsballGeocodeTuple(
|
4601
4601
|
city="Lincoln",
|
4602
|
-
state="
|
4602
|
+
state="NE",
|
4603
4603
|
postal="",
|
4604
4604
|
lat=40.817778,
|
4605
4605
|
lng=-96.713333,
|
@@ -5947,7 +5947,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
5947
5947
|
),
|
5948
5948
|
"Baxter Arena, Omaha, Nebraska": SportsballGeocodeTuple(
|
5949
5949
|
city="Omaha",
|
5950
|
-
state="
|
5950
|
+
state="NE",
|
5951
5951
|
postal="",
|
5952
5952
|
lat=41.236,
|
5953
5953
|
lng=-96.013,
|
@@ -11062,7 +11062,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
11062
11062
|
),
|
11063
11063
|
"Omaha, Nebraska": SportsballGeocodeTuple(
|
11064
11064
|
city="Omaha",
|
11065
|
-
state="
|
11065
|
+
state="NE",
|
11066
11066
|
postal="",
|
11067
11067
|
lat=41.258611,
|
11068
11068
|
lng=-95.9375,
|
@@ -11352,7 +11352,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
11352
11352
|
),
|
11353
11353
|
"Lincoln, Nebraska": SportsballGeocodeTuple(
|
11354
11354
|
city="Lincoln",
|
11355
|
-
state="
|
11355
|
+
state="NE",
|
11356
11356
|
postal="",
|
11357
11357
|
lat=40.809167,
|
11358
11358
|
lng=-96.678056,
|
@@ -12190,7 +12190,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
12190
12190
|
),
|
12191
12191
|
"Ralston, Nebraska": SportsballGeocodeTuple(
|
12192
12192
|
city="Ralston",
|
12193
|
-
state="
|
12193
|
+
state="NE",
|
12194
12194
|
postal="",
|
12195
12195
|
lat=41.200556,
|
12196
12196
|
lng=-96.035556,
|
@@ -12862,7 +12862,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
12862
12862
|
),
|
12863
12863
|
"Ralston Arena, Ralston, Nebraska": SportsballGeocodeTuple(
|
12864
12864
|
city="Ralston",
|
12865
|
-
state="
|
12865
|
+
state="NE",
|
12866
12866
|
postal="",
|
12867
12867
|
lat=41.206944,
|
12868
12868
|
lng=-96.026944,
|
@@ -13028,7 +13028,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
13028
13028
|
),
|
13029
13029
|
"D.J. Sokol Arena, Omaha, Nebraska": SportsballGeocodeTuple(
|
13030
13030
|
city="Omaha",
|
13031
|
-
state="
|
13031
|
+
state="NE",
|
13032
13032
|
postal="",
|
13033
13033
|
lat=41.266146,
|
13034
13034
|
lng=-95.940471,
|
@@ -13261,7 +13261,7 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
13261
13261
|
),
|
13262
13262
|
"Bob Devaney Sports Center, Lincoln, Nebraska": SportsballGeocodeTuple(
|
13263
13263
|
city="Lincoln",
|
13264
|
-
state="
|
13264
|
+
state="NE",
|
13265
13265
|
postal="",
|
13266
13266
|
lat=40.830207,
|
13267
13267
|
lng=-96.697644,
|
@@ -13333,6 +13333,34 @@ _CACHED_GEOCODES: dict[str, Any] = {
|
|
13333
13333
|
housenumber="500",
|
13334
13334
|
country="USA",
|
13335
13335
|
),
|
13336
|
+
"USB Sports Complex, Stony Brook, New York": SportsballGeocodeTuple(
|
13337
|
+
city="Stony Brook",
|
13338
|
+
state="NY",
|
13339
|
+
postal="11790",
|
13340
|
+
lat=40.917417,
|
13341
|
+
lng=-73.124722,
|
13342
|
+
housenumber="100",
|
13343
|
+
country="USA",
|
13344
|
+
),
|
13345
|
+
"L. A. Sports Arena, Los Angeles, California": LOS_ANGELES_MEMORIAL_COLESIUM,
|
13346
|
+
"Kimbel Arena, Conway, South Carolina": SportsballGeocodeTuple(
|
13347
|
+
city="Conway",
|
13348
|
+
state="SC",
|
13349
|
+
postal="",
|
13350
|
+
lat=33.79382,
|
13351
|
+
lng=-79.013243,
|
13352
|
+
housenumber="",
|
13353
|
+
country="USA",
|
13354
|
+
),
|
13355
|
+
"Sapp Fieldhouse, Ralston, Nebraska": SportsballGeocodeTuple(
|
13356
|
+
city="Ralston",
|
13357
|
+
state="NE",
|
13358
|
+
postal="68132",
|
13359
|
+
lat=41.2574,
|
13360
|
+
lng=-96.00922,
|
13361
|
+
housenumber="6311",
|
13362
|
+
country="USA",
|
13363
|
+
),
|
13336
13364
|
}
|
13337
13365
|
|
13338
13366
|
|
@@ -399,6 +399,9 @@ def _create_sportsreference_game_model(
|
|
399
399
|
assists,
|
400
400
|
turnovers,
|
401
401
|
)
|
402
|
+
for team in teams:
|
403
|
+
if team.name == "File Not Found":
|
404
|
+
raise ValueError("team name is File Not Found (invalid)")
|
402
405
|
|
403
406
|
season_type = SeasonType.REGULAR
|
404
407
|
for h2 in soup.find_all("h2"):
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: sportsball
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.86
|
4
4
|
Summary: A library for pulling in and normalising sports stats.
|
5
5
|
Home-page: https://github.com/8W9aG/sportsball
|
6
6
|
Author: Will Sackfield
|
@@ -193,6 +193,29 @@ A representation of a player within a team within a game.
|
|
193
193
|
* **offensive_rebounds**: The number of rebounds during offense by the player made in the game.
|
194
194
|
* **assists**: The number of times the player made a pass that resulted in a field goal in the game.
|
195
195
|
* **turnovers**: The number of times a player loses possession of the ball in the game.
|
196
|
+
* **name**: The name of the player.
|
197
|
+
* **marks**: The number of marks the player performed in the game.
|
198
|
+
* **handballs**: The number of handballs the player performed in the game.
|
199
|
+
* **disposals**: The number of disposals the player performed in the game.
|
200
|
+
* **goals**: The number of goals scored by the player in the game.
|
201
|
+
* **behinds**: The number of behinds scored by the player in the game.
|
202
|
+
* **hit_outs**: The number of hit outs scored by the player in the game.
|
203
|
+
* **tackles**: The number of tackles performed by the player in the game.
|
204
|
+
* **rebounds**: The number of rebounds performed by the player in the game.
|
205
|
+
* **insides**: The number of insides performed by the player in the game.
|
206
|
+
* **clearances**: The number of clearances performed by the player in the game.
|
207
|
+
* **clangers**: The number of clangers performed by the player in the game.
|
208
|
+
* **free_kicks_for**: The number of free kicks given to the player in the game.
|
209
|
+
* **free_kicks_against**: The number of free kicks given against an action taken by the player in the game.
|
210
|
+
* **brownlow_votes**: The number of votes for the brownlow medal the player has in the current season.
|
211
|
+
* **contested_possessions**: The number of possessions the player had in the game that were contested.
|
212
|
+
* **uncontested_possessions**: The number of posessions the player had in the game that were uncontested.
|
213
|
+
* **contested_marks**: The number of marks the player had in the game that were contested.
|
214
|
+
* **marks_inside**: The number of marks the player had in the game inside the 50.
|
215
|
+
* **one_percenters:** The number of times the player spoils, knock-ons, smothers or shepherds the ball during the game.
|
216
|
+
* **bounces**: The number of bounces the player makes in the game.
|
217
|
+
* **goal_assists**: The number of assists on goal the player had in the game.
|
218
|
+
* **percentage_played**: The percentage of the game the player was on the field.
|
196
219
|
|
197
220
|
#### Odds
|
198
221
|
|
@@ -176,6 +176,7 @@ tests/data/aussportsbetting/aussportsbetting_game_model_test.py
|
|
176
176
|
tests/data/combined/__init__.py
|
177
177
|
tests/data/combined/combined_game_model_test.py
|
178
178
|
tests/data/combined/combined_player_model_test.py
|
179
|
+
tests/data/combined/combined_team_model_test.py
|
179
180
|
tests/data/espn/__init__.py
|
180
181
|
tests/data/espn/espn_game_model_test.py
|
181
182
|
tests/data/espn/espn_player_model_test.py
|
@@ -0,0 +1,215 @@
|
|
1
|
+
"""Tests for the combined team model class."""
|
2
|
+
import datetime
|
3
|
+
import os
|
4
|
+
import unittest
|
5
|
+
|
6
|
+
import requests_mock
|
7
|
+
import requests_cache
|
8
|
+
from sportsball.data.combined.combined_team_model import create_combined_team_model
|
9
|
+
from sportsball.data.team_model import TeamModel
|
10
|
+
from sportsball.data.player_model import PlayerModel
|
11
|
+
|
12
|
+
|
13
|
+
class TestCombinedTeamModel(unittest.TestCase):
|
14
|
+
|
15
|
+
def setUp(self):
|
16
|
+
self._session = requests_cache.CachedSession(backend="memory")
|
17
|
+
self.dir = os.path.dirname(__file__)
|
18
|
+
|
19
|
+
def test_names_resolve(self):
|
20
|
+
with requests_mock.Mocker() as m:
|
21
|
+
names = {}
|
22
|
+
player_models = [PlayerModel(
|
23
|
+
identifier="1",
|
24
|
+
jersey=None,
|
25
|
+
kicks=None,
|
26
|
+
fumbles=None,
|
27
|
+
fumbles_lost=None,
|
28
|
+
field_goals=None,
|
29
|
+
field_goals_attempted=None,
|
30
|
+
offensive_rebounds=None,
|
31
|
+
assists=None,
|
32
|
+
turnovers=None,
|
33
|
+
name="Johnny Johnson",
|
34
|
+
marks=None,
|
35
|
+
handballs=None,
|
36
|
+
disposals=None,
|
37
|
+
goals=None,
|
38
|
+
behinds=None,
|
39
|
+
hit_outs=None,
|
40
|
+
tackles=None,
|
41
|
+
rebounds=None,
|
42
|
+
insides=None,
|
43
|
+
clearances=None,
|
44
|
+
clangers=None,
|
45
|
+
free_kicks_for=None,
|
46
|
+
free_kicks_against=None,
|
47
|
+
brownlow_votes=None,
|
48
|
+
contested_possessions=None,
|
49
|
+
uncontested_possessions=None,
|
50
|
+
contested_marks=None,
|
51
|
+
marks_inside=None,
|
52
|
+
one_percenters=None,
|
53
|
+
bounces=None,
|
54
|
+
goal_assists=None,
|
55
|
+
percentage_played=None,
|
56
|
+
)]
|
57
|
+
team_models = [TeamModel(
|
58
|
+
identifier="a",
|
59
|
+
name="Team A",
|
60
|
+
location=None,
|
61
|
+
players=player_models,
|
62
|
+
odds=[],
|
63
|
+
points=None,
|
64
|
+
ladder_rank=None,
|
65
|
+
news=[],
|
66
|
+
social=[],
|
67
|
+
)]
|
68
|
+
team_model = create_combined_team_model(team_models=team_models, identifier="a", player_identity_map={}, names=names)
|
69
|
+
player_models_2 = [PlayerModel(
|
70
|
+
identifier="1a",
|
71
|
+
jersey=None,
|
72
|
+
kicks=None,
|
73
|
+
fumbles=None,
|
74
|
+
fumbles_lost=None,
|
75
|
+
field_goals=None,
|
76
|
+
field_goals_attempted=None,
|
77
|
+
offensive_rebounds=None,
|
78
|
+
assists=None,
|
79
|
+
turnovers=None,
|
80
|
+
name="Johnny Johnson",
|
81
|
+
marks=None,
|
82
|
+
handballs=None,
|
83
|
+
disposals=None,
|
84
|
+
goals=None,
|
85
|
+
behinds=None,
|
86
|
+
hit_outs=None,
|
87
|
+
tackles=None,
|
88
|
+
rebounds=None,
|
89
|
+
insides=None,
|
90
|
+
clearances=None,
|
91
|
+
clangers=None,
|
92
|
+
free_kicks_for=None,
|
93
|
+
free_kicks_against=None,
|
94
|
+
brownlow_votes=None,
|
95
|
+
contested_possessions=None,
|
96
|
+
uncontested_possessions=None,
|
97
|
+
contested_marks=None,
|
98
|
+
marks_inside=None,
|
99
|
+
one_percenters=None,
|
100
|
+
bounces=None,
|
101
|
+
goal_assists=None,
|
102
|
+
percentage_played=None,
|
103
|
+
)]
|
104
|
+
team_models_2 = [TeamModel(
|
105
|
+
identifier="a",
|
106
|
+
name="Team A",
|
107
|
+
location=None,
|
108
|
+
players=player_models_2,
|
109
|
+
odds=[],
|
110
|
+
points=None,
|
111
|
+
ladder_rank=None,
|
112
|
+
news=[],
|
113
|
+
social=[],
|
114
|
+
)]
|
115
|
+
team_model_2 = create_combined_team_model(team_models=team_models_2, identifier="a", player_identity_map={}, names=names)
|
116
|
+
self.assertEqual(team_model.players[0].identifier, team_model_2.players[0].identifier)
|
117
|
+
|
118
|
+
def test_names_resolve_with_surname_firstname(self):
|
119
|
+
with requests_mock.Mocker() as m:
|
120
|
+
names = {}
|
121
|
+
player_models = [PlayerModel(
|
122
|
+
identifier="1",
|
123
|
+
jersey=None,
|
124
|
+
kicks=None,
|
125
|
+
fumbles=None,
|
126
|
+
fumbles_lost=None,
|
127
|
+
field_goals=None,
|
128
|
+
field_goals_attempted=None,
|
129
|
+
offensive_rebounds=None,
|
130
|
+
assists=None,
|
131
|
+
turnovers=None,
|
132
|
+
name="Johnny Johnson",
|
133
|
+
marks=None,
|
134
|
+
handballs=None,
|
135
|
+
disposals=None,
|
136
|
+
goals=None,
|
137
|
+
behinds=None,
|
138
|
+
hit_outs=None,
|
139
|
+
tackles=None,
|
140
|
+
rebounds=None,
|
141
|
+
insides=None,
|
142
|
+
clearances=None,
|
143
|
+
clangers=None,
|
144
|
+
free_kicks_for=None,
|
145
|
+
free_kicks_against=None,
|
146
|
+
brownlow_votes=None,
|
147
|
+
contested_possessions=None,
|
148
|
+
uncontested_possessions=None,
|
149
|
+
contested_marks=None,
|
150
|
+
marks_inside=None,
|
151
|
+
one_percenters=None,
|
152
|
+
bounces=None,
|
153
|
+
goal_assists=None,
|
154
|
+
percentage_played=None,
|
155
|
+
)]
|
156
|
+
team_models = [TeamModel(
|
157
|
+
identifier="a",
|
158
|
+
name="Team A",
|
159
|
+
location=None,
|
160
|
+
players=player_models,
|
161
|
+
odds=[],
|
162
|
+
points=None,
|
163
|
+
ladder_rank=None,
|
164
|
+
news=[],
|
165
|
+
social=[],
|
166
|
+
)]
|
167
|
+
team_model = create_combined_team_model(team_models=team_models, identifier="a", player_identity_map={}, names=names)
|
168
|
+
player_models_2 = [PlayerModel(
|
169
|
+
identifier="1a",
|
170
|
+
jersey=None,
|
171
|
+
kicks=None,
|
172
|
+
fumbles=None,
|
173
|
+
fumbles_lost=None,
|
174
|
+
field_goals=None,
|
175
|
+
field_goals_attempted=None,
|
176
|
+
offensive_rebounds=None,
|
177
|
+
assists=None,
|
178
|
+
turnovers=None,
|
179
|
+
name="Johnson, Johnny",
|
180
|
+
marks=None,
|
181
|
+
handballs=None,
|
182
|
+
disposals=None,
|
183
|
+
goals=None,
|
184
|
+
behinds=None,
|
185
|
+
hit_outs=None,
|
186
|
+
tackles=None,
|
187
|
+
rebounds=None,
|
188
|
+
insides=None,
|
189
|
+
clearances=None,
|
190
|
+
clangers=None,
|
191
|
+
free_kicks_for=None,
|
192
|
+
free_kicks_against=None,
|
193
|
+
brownlow_votes=None,
|
194
|
+
contested_possessions=None,
|
195
|
+
uncontested_possessions=None,
|
196
|
+
contested_marks=None,
|
197
|
+
marks_inside=None,
|
198
|
+
one_percenters=None,
|
199
|
+
bounces=None,
|
200
|
+
goal_assists=None,
|
201
|
+
percentage_played=None,
|
202
|
+
)]
|
203
|
+
team_models_2 = [TeamModel(
|
204
|
+
identifier="a",
|
205
|
+
name="Team A",
|
206
|
+
location=None,
|
207
|
+
players=player_models_2,
|
208
|
+
odds=[],
|
209
|
+
points=None,
|
210
|
+
ladder_rank=None,
|
211
|
+
news=[],
|
212
|
+
social=[],
|
213
|
+
)]
|
214
|
+
team_model_2 = create_combined_team_model(team_models=team_models_2, identifier="a", player_identity_map={}, names=names)
|
215
|
+
self.assertEqual(team_model.players[0].identifier, team_model_2.players[0].identifier)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_game_model.py
RENAMED
File without changes
|
{sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_league_model.py
RENAMED
File without changes
|
{sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_player_model.py
RENAMED
File without changes
|
{sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_team_model.py
RENAMED
File without changes
|
{sportsball-0.3.85 → sportsball-0.3.86}/sportsball/data/afl/afltables/afl_afltables_venue_model.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|