public void TestDatabaseDivisionLoaderFullNL2001() { database = new Db(conn); TeamGroupTree nationalLeague2001 = DatabaseGroupLoader.LoadRoot("NL", 2001, database); Assert.IsTrue(nationalLeague2001.Count == 3); Assert.IsTrue(nationalLeague2001.GetTotalItemCount <Team>() == 16); }
public void TestDatabaseDivisionLoaderFullAL2001() { database = new Db(conn); TeamGroupTree americanLeague2001 = DatabaseGroupLoader.LoadRoot("AL", 2001, database); Assert.IsTrue(americanLeague2001.Count == 3); Assert.IsTrue(americanLeague2001.GetTotalItemCount <Team>() == 14); }
public void TestDatabaseDivisionLoaderFullAL1980() { database = new Db(conn); TeamGroupTree americanLeague1980 = DatabaseGroupLoader.LoadRoot("AL", 1980, database); Assert.IsTrue(americanLeague1980.Count == 2); Assert.IsTrue(americanLeague1980.GetTotalItemCount <Team>() == 14); }
public void TestDatabaseDivisionLoaderFullNL1980() { database = new Db(conn); TeamGroupTree nationalLeague1980 = DatabaseGroupLoader.LoadRoot("NL", 1980, database); Assert.IsTrue(nationalLeague1980.Count == 2); Assert.IsTrue(nationalLeague1980.GetTotalItemCount <Team>() == 12); }
/// <summary> /// Selects the year. /// </summary> /// <param name="r">Runnable</param> public static void SelectYear(Runnable r) { Console.WriteLine("What is the year of the Round Robin?"); string year = Console.ReadLine(); int theYear = DateTime.Now.Year - 1; try { theYear = Int32.Parse(year); } catch (Exception ex) { Console.WriteLine($"Error in input.\nUsing default year ({theYear})..."); Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); } try { string directoryPath = System.IO.Path.Combine($"{ConfigurationManager.GetConfigurationValue("GAME_FILE_DIRECTORY")} Round Robin {theYear}/"); Db database = new Db(Constants.SQLITE3_CONNECTION_STRING); Console.WriteLine("Loading team group trees..."); TeamGroupTree americanLeague = DatabaseGroupLoader.LoadRoot("AL", theYear, database); americanLeague.ParentDirectoryPath = directoryPath; americanLeague.IsSilentMode = true; americanLeague.Interval = 50; Console.WriteLine($"Loaded {americanLeague} from database..."); TeamGroupTree nationalLeague = DatabaseGroupLoader.LoadRoot("NL", theYear, database); nationalLeague.ParentDirectoryPath = directoryPath; nationalLeague.IsSilentMode = true; nationalLeague.Interval = 50; Console.WriteLine($"Loaded {nationalLeague} from database..."); if (!System.IO.Directory.Exists(directoryPath)) { System.IO.Directory.CreateDirectory(directoryPath); Console.WriteLine($"Creating directory {directoryPath}"); } Console.WriteLine($"Playing {americanLeague} round robin..."); americanLeague.Execute(); Console.WriteLine($"Playing {nationalLeague} round robin..."); nationalLeague.Execute(); } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); Console.ReadLine(); } }
/// <summary> /// Loads the team group. /// </summary> /// <returns>TeamGroup</returns> /// <param name="leagueName">string</param> /// <param name="year">int</param> /// <param name="database">Db</param> /// <param name="seriesLength">int</param> public static TeamGroupTree LoadRoot(string leagueName, int year, Db database, int seriesLength = 3) { TeamGroupTree league = null; Dictionary <string, TeamGroup> divisions = new Dictionary <string, TeamGroup>(); SQLStoredProcedure sp = StoredProcedureManager.Get("GetDivisionInfo"); sp.Parameters = new object[] { leagueName, year }; SQLQueryResult result = database.ExecuteQuery(sp.Text); DataTable teamGroupInfo = result.DataTable; string leagueID = teamGroupInfo.Rows[0]["lgID"].ToString(); foreach (DataRow row in teamGroupInfo.Rows) { string teamID = row["teamID"].ToString(); string teamName = row["name"].ToString(); string divID = row["divID"].ToString(); TeamGroup group = null; Team team = null; team = DatabaseTeamLoader.LoadTeam(teamName, year, database); if (!divisions.ContainsKey(divID)) { group = new TeamGroup(divID, divID); divisions.Add(divID, group); if (!group.Contains(team)) { group.Add(team); } } else { divisions[divID].Add(team); } Console.WriteLine($"Added {team} to division '{divID}'"); System.Threading.Thread.Sleep(150); } league = new TeamGroupTree(leagueID, leagueName, seriesLength); foreach (TeamGroup division in divisions.Values) { league.Add(division); Console.WriteLine($"Added division '{division.Name}' to league '{league.Name}'"); System.Threading.Thread.Sleep(150); } return(league); }
public void TestRoundRobinFullDivisions1969() { Db database = new Db(conn); TeamGroupTree americanLeague1969 = DatabaseGroupLoader.LoadRoot("AL", 1969, database, 1); americanLeague1969.ParentDirectoryPath = System.IO.Path.Combine($"{ConfigurationManager.GetConfigurationValue("GAME_FILE_DIRECTORY")}"); Assert.IsTrue(americanLeague1969.Count == 2); Assert.IsTrue(americanLeague1969.GetTotalItemCount <Team>() == 12); TeamGroupTree nationalLeague1969 = DatabaseGroupLoader.LoadRoot("NL", 1969, database, 1); nationalLeague1969.ParentDirectoryPath = System.IO.Path.Combine($"{ConfigurationManager.GetConfigurationValue("GAME_FILE_DIRECTORY")}"); Assert.IsTrue(nationalLeague1969.Count == 2); Assert.IsTrue(nationalLeague1969.GetTotalItemCount <Team>() == 12); bool finished = false; americanLeague1969.Execute(); nationalLeague1969.Execute(); finished = true; Assert.IsTrue(finished); }
public void Init() { ConfigurationManager.Init(Constants.CONFIG_FILE_PATH, Constants.CONFIG_FILE_DELIMITER); StoredProcedureManager.Init(@"./Data/StoredProcedures/"); VenueManager.Init(ConfigurationManager.GetConfigurationValue("STADIUM_FILE_DIRECTORY"), true); conn = Constants.SQLITE3_CONNECTION_STRING; database = new Db(conn); americanLeague = DatabaseGroupLoader.LoadRoot("AL", year, database); americanLeague.ParentDirectoryPath = System.IO.Path.Combine($"{ConfigurationManager.GetConfigurationValue("GAME_FILE_DIRECTORY")}"); nationalLeague = DatabaseGroupLoader.LoadRoot("NL", year, database); nationalLeague.ParentDirectoryPath = System.IO.Path.Combine($"{ConfigurationManager.GetConfigurationValue("GAME_FILE_DIRECTORY")}"); try { americanLeague.Execute(); nationalLeague.Execute(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// Display the specified r. /// </summary> /// <param name="r">Runnable</param> public static void Display(Runnable r) { int level = 0; Console.WriteLine($"Please enter a league and year [e.g, AL 2001]"); string[] choice = Console.ReadLine().Split(' '); Db database = new Db(MainClass.conn); TeamGroupTree league = DatabaseGroupLoader.LoadRoot(choice[0], Convert.ToInt32(choice[1]), database); Console.WriteLine($"{league.Name} ({league.GetTotalItemCount<Team>()})"); foreach (TeamGroup group in league) { if (league.Count > 1) { DisplayLevel(level + 1, $"{group.Name} ({group.GetTotalItemCount<Team>()})"); } foreach (Team team in group) { DisplayLevel(level + 2, $"{team.Name} ({team.Roster.Players.Length})"); } Console.WriteLine(); } }
public void TestDatabaseDivisionLoaderParts() { database = new Db(conn); Team yankees2001 = DatabaseTeamLoader.LoadTeam("New York", "Yankees", "NYA", 2001, database); Team diamondbacks2001 = DatabaseTeamLoader.LoadTeam("Arizona", "Diamondbacks", "ARI", 2001, database); Team mariners2001 = DatabaseTeamLoader.LoadTeam("Seattle", "Mariners", "SEA", 2001, database); Team orioles2001 = DatabaseTeamLoader.LoadTeam("Baltimore", "Orioles", "BAL", 2001, database); Team redsox2001 = DatabaseTeamLoader.LoadTeam("Boston", "Red Sox", "BOS", 2001, database); Team astros2001 = DatabaseTeamLoader.LoadTeam("Houston", "Astros", "HOU", 2001, database); Team[] teams = { yankees2001, diamondbacks2001, mariners2001 }; Team[] teams2 = { orioles2001, redsox2001, astros2001 }; TeamGroupTree nationalLeague2001 = new TeamGroupTree("NL2001", "National League 2001"); nationalLeague2001.Add(new TeamGroup("NLW2001", "National League West 2001", teams)); nationalLeague2001.Add(new TeamGroup("NLE2001", "National League East 2001", teams2)); Assert.IsTrue(nationalLeague2001.GetTotalItemCount <Team>() == 6); Console.WriteLine(nationalLeague2001[0]); Console.WriteLine(nationalLeague2001[1]); Console.WriteLine(nationalLeague2001); }