public void ReplaceCourseNameWithCourseID() { HistoricDataReader reader = new HistoricDataReader(); // @"C:\Users\carra\Documents\HotTipster\HotTipsHistoricData.txt"); IList <RaceCourse> rcList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); List <HorseBet> historicBets = reader.ListOfHistoricHorseBetsOriginal(); foreach (var bet in historicBets) { var id = (from rc in rcList where rc.RaceCourseName == bet.RaceCourseName select rc.RaceCourseID).ToArray(); bet.CourseID = id[0]; } List <HorseBet> actualResult = historicBets; List <HorseBet> expectedResult = expectedResult = reader.ListOfHistoricHorseBetsWithCourseID(); Assert.AreEqual(expectedResult.Count, actualResult.Count); Assert.AreEqual(expectedResult[0].CourseID, actualResult[0].CourseID); Assert.AreEqual(expectedResult[0].RaceCourseName, actualResult[0].RaceCourseName); Assert.AreEqual(expectedResult[0].RaceDate, actualResult[0].RaceDate); Assert.AreEqual(expectedResult[10].CourseID, actualResult[10].CourseID); Assert.AreEqual(expectedResult[10].RaceCourseName, actualResult[10].RaceCourseName); Assert.AreEqual(expectedResult[10].RaceDate, actualResult[10].RaceDate); //Assert.AreEqual(expectedResult[0], actualResult[0]); //Error = Assert.AreEqual failed. Expected:<HotTipster.HorseBet>. Actual:<HotTipster.HorseBet>. //CollectionAssert.AreEquivalent(expectedResult, actualResult); // Can't get this to work }
private void btnAddBet_Click(object sender, EventArgs e) { string racecourseName = cboRaceCourses.SelectedItem.ToString(); DateTime raceDate = dtpRaceDate.Value; Decimal betAmount = decimal.Parse(txtBetAmount.Text); bool result; if (rdoWin.Checked) { result = true; } else { result = false; } List <RaceCourse> rcList = new List <RaceCourse>(); rcList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); var id = (from rc in rcList where rc.RaceCourseName == racecourseName select rc.RaceCourseID).ToArray(); int raceCourseID = id[0]; dbaccess.InsertNewBet(raceCourseID, raceDate, result, betAmount); //reset form cboRaceCourses.SelectedIndex = 0; dtpRaceDate.Value = DateTime.Today; txtBetAmount.Clear(); rdoWin.Checked = true; }
public void TestAddNewRaceCourseUsingExistingName() { ReadWriteToSQLite dataWriter = new ReadWriteToSQLite(); List <RaceCourse> beforeList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); dataWriter.InsertNewRaceCourse("Aintree"); List <RaceCourse> afterList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); Assert.AreEqual(afterList.Count, beforeList.Count); }
public void TestAddNewRaceCourse() { ReadWriteToSQLite dataWriter = new ReadWriteToSQLite(); List <RaceCourse> beforeList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); dataWriter.InsertNewRaceCourse("Ballinrobe"); List <RaceCourse> afterList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); Assert.AreEqual(afterList.Count, beforeList.Count + 1); }
public void TestInsertNewHorseBet() { ReadWriteToSQLite dataWriter = new ReadWriteToSQLite(); List <HorseBet> beforeList = ReadWriteToSQLite.RetrieveHorseBetsFromDB(); dataWriter.InsertNewBet(3, new DateTime(2018, 2, 25), true, 25.00M); List <HorseBet> afterList = ReadWriteToSQLite.RetrieveHorseBetsFromDB(); Assert.AreEqual(afterList.Count, beforeList.Count + 1); }
public static List <string> ListOfRaceCourseNamesForAddBetComboBox() { //no unit test - rely on test for retrieve racecourse list from DB and observation of result in combo box //ReadWriteToSQLite reader = new ReadWriteToSQLite(); List <RaceCourse> rcList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); var comboList = (from rc in rcList select rc.RaceCourseName).ToList(); return(comboList); }
private void btnSaveNewRaceCourse_Click(object sender, EventArgs e) { string name = txtAddNewRaceCourse.Text; ReadWriteToSQLite writer = new ReadWriteToSQLite(); writer.InsertNewRaceCourse(name); AddBetInformation bet = new AddBetInformation(); bet.Show(); this.Close(); }
public static List <HorseBet> AddCoursenNameToRetrievedHorseBetData(List <HorseBet> bets) { List <RaceCourse> rcList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); foreach (var bet in bets) { var id = (from rc in rcList where rc.RaceCourseID == bet.CourseID select rc.RaceCourseName).ToArray(); bet.RaceCourseName = id[0]; } return(bets); }
public HotTipsterMenu() { InitializeComponent(); ReadWriteToSQLite sqldb = new ReadWriteToSQLite(); HistoricDataReader reader = new HistoricDataReader(); // @"C:\Users\carra\Documents\HotTipster\HotTipsHistoricData.txt"); //Replace with directory ref? if (!File.Exists(Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + "HotTipster.db")) { sqldb.CreateDatabase(); sqldb.InsertExistingRaceCoursesIntoDB(); //sqldb.InsertListOfBets(reader.ListOfHistoricHorseBetsOriginal()); sqldb.InsertListOfBets(HorseBet.AddCourseIDToHistoricBetData()); } }
public static List <HorseBet> AddCourseIDToHistoricBetData() { //ReadWriteToSQLite writer = new ReadWriteToSQLite(); HistoricDataReader reader = new HistoricDataReader(); //@"C:\Users\carra\Documents\HotTipster\HotTipsHistoricData.txt"); List <RaceCourse> rcList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); List <HorseBet> historicBets = reader.ListOfHistoricHorseBetsOriginal(); foreach (var bet in historicBets) { var id = (from rc in rcList where rc.RaceCourseName == bet.RaceCourseName select rc.RaceCourseID).ToArray(); bet.CourseID = id[0]; } return(historicBets); }
public void AddCourseIDToHistoricBetData() { List <HorseBet> bets; ReadWriteToSQLite dataWriter = new ReadWriteToSQLite(); dataWriter.CreateDatabase(); dataWriter.InsertExistingRaceCoursesIntoDB(); bets = HorseBet.AddCourseIDToHistoricBetData(); HorseBet test = new HorseBet("Aintree", new DateTime(2017, 5, 12), 11.58m, true, 0); //CollectionAssert.Contains(bets, test); Assert.IsTrue(bets.Any(bet => bet.CourseID == 1)); Assert.IsTrue(bets.Any(bet => bet.CourseID == 6)); Assert.IsTrue(bets.Any(bet => bet.CourseID == 13)); Assert.IsTrue(bets.Any(bet => bet.CourseID == 18)); Assert.IsFalse(bets.Any(bet => bet.CourseID == 20)); }
public void TestBetListAddedToDatabase() { List <HorseBet> test = new List <HorseBet>(); test.Add(new HorseBet("Aintree", new DateTime(2017, 5, 12), 11.58m, true, 1)); ReadWriteToSQLite writer = new ReadWriteToSQLite(); writer.InsertListOfBets(test); List <HorseBet> retrievedBet = new List <HorseBet>(); retrievedBet = ReadWriteToSQLite.RetrieveHorseBetsFromDB(); Assert.AreEqual(test[0].CourseID, retrievedBet[0].CourseID); Assert.AreEqual(test[0].BetAmount, retrievedBet[0].BetAmount); Assert.AreEqual(test[0].BetResult, retrievedBet[0].BetResult); Assert.AreEqual(test[0].RaceDate, retrievedBet[0].RaceDate); Assert.AreEqual(test.Count(), retrievedBet.Count()); }
public void check18RaceCourseNamesAddedToDB() { List <RaceCourse> expectedListRaceCourses = new List <RaceCourse>(); List <string> expectedNames = new List <string> { "Aintree", "Ascot", "Ayr", "Bangor", "Chester", "Cork", "Doncaster", "Dundalk", "Fairyhouse", "Goodwood", "Haydock", "Kelso", "Kilbeggan", "Perth", "Punchestown", "Sandown", "Towcester", "York" }; int idReference = 1; foreach (var name in expectedNames) { RaceCourse rc = new RaceCourse(); rc.RaceCourseID = idReference; rc.RaceCourseName = name; expectedListRaceCourses.Add(rc); idReference++; } List <RaceCourse> ActualRaceCourseList = new List <RaceCourse>(); SqliteConnection dbConnection = new SqliteConnection("Filename=HotTipster.db"); using (dbConnection) { dbConnection.Open(); dataWriter.InsertExistingRaceCoursesIntoDB(); ActualRaceCourseList = ReadWriteToSQLite.RetrieveRaceCourseNamesFromDB(); dbConnection.Close(); } int expectedLength = expectedListRaceCourses.Count; //number of unique racecourse names in historic data int actualLenght = ActualRaceCourseList.Count; Assert.AreEqual(expectedLength, actualLenght); Assert.AreEqual(expectedListRaceCourses[0].RaceCourseID, ActualRaceCourseList[0].RaceCourseID); Assert.AreEqual(expectedListRaceCourses[0].RaceCourseName, ActualRaceCourseList[0].RaceCourseName); Assert.AreEqual(expectedListRaceCourses[0].RaceCourseName, "Aintree"); Assert.IsInstanceOfType(ActualRaceCourseList[0], typeof(RaceCourse)); Assert.IsInstanceOfType(expectedListRaceCourses[0], typeof(RaceCourse)); //CollectionAssert.AreEquivalent(expectedListRaceCourses, ActualRaceCourseList, "Message",new RaceCourseComparer()); can't get this to pass even though both lists are the same }