public void TestYears() { Db database = new Db(MainClass.conn); int startYear = 1884; int endYear = DateTime.Now.Year - 1; int iterations = 0; int passes = 0; List <int> yearsOmitted = new List <int>(); for (int year = startYear; year <= endYear; year++) { if (!emptyYears.Contains(year)) { try { SQLQueryResult result = DatabaseChampionshipSeriesLoader.GetSeriesInfo(year, database); int results = result.DataTable.Rows.Count; Console.WriteLine($"{year}: Result Rows={results}"); if (results > 0) { passes++; } } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); } iterations++; } else { yearsOmitted.Add(year); } } Console.WriteLine($"Passed {passes}/{iterations}"); Console.Write("Years omitted:"); foreach (int year in yearsOmitted) { Console.Write($" {year}"); } Console.WriteLine(); Assert.IsTrue(passes == iterations); Assert.IsTrue(yearsOmitted.Count == emptyYears.Length); }
/// <summary> /// Selects the world series based on the year provided. /// </summary> /// <param name="r">Runnable</param> public static void SelectWorldSeries(Runnable r) { Console.WriteLine("What year was the series?"); string year = Console.ReadLine(); int y = Int32.Parse(year); string round = string.Empty; Db database = new Db(MainClass.conn); SQLQueryResult result = DatabaseChampionshipSeriesLoader.GetSeriesInfo(y, database); if (result.DataTable.Rows.Count > 0) { StringBuilder sb = new StringBuilder("Which round would you like to play:\n"); foreach (System.Data.DataRow row in result.DataTable.Rows) { sb.AppendLine($"*{row["round"].ToString()}"); } Console.WriteLine(sb); round = Console.ReadLine(); Team roadTeam, homeTeam; bool playSeries = true; y = Int32.Parse(year); Tuple <string, string> teamKeys = GetTeamKeysByRound(round, result); roadTeam = DatabaseTeamLoader.LoadTeamFromTeamID(teamKeys.Item1, y, database); if (roadTeam != null) { Console.WriteLine($"Found team '{roadTeam}' in the database."); roadTeam.CapitalizeNames = true; roadTeam.ShowExtendedToString = false; } else { playSeries = false; } //homeTeam = DatabaseTeamLoader.LoadTeamByKey(teamKeys.Item2, y, database); homeTeam = DatabaseTeamLoader.LoadTeamFromTeamID(teamKeys.Item2, y, database); if (homeTeam != null) { Console.WriteLine($"Found team '{homeTeam}' in the database."); homeTeam.CapitalizeNames = true; homeTeam.ShowExtendedToString = false; } else { playSeries = false; } if (playSeries) { Series worldSeries = new Series($"{round} {y}", roadTeam, homeTeam, 7, false, false, true, true); worldSeries.ParentDirectoryPath = System.IO.Path.Combine($"{ConfigurationManager.GetConfigurationValue("GAME_FILE_DIRECTORY")}"); worldSeries.Execute(); } } else { Console.WriteLine($"There was no postseason in {year}."); } }