public void RudimentaryTest() { string dbFilename = TestUtilities.CreateWorkingFileFrom(testContextInstance.TestDeploymentDir, @"1554MSBS.mdb"); // Setup Data Model & Co Database db = new Database(); db.Connect(dbFilename); AppDataModel model = new AppDataModel(db); DSVRaceCalculation raceCalcW = new DSVRaceCalculation(model.GetRace(0), model.GetRace(0).GetResultViewProvider(), 'W'); raceCalcW.CalculatePenalty(); Assert.AreEqual(28.56, raceCalcW.CalculatedPenalty); DSVRaceCalculation raceCalcM = new DSVRaceCalculation(model.GetRace(0), model.GetRace(0).GetResultViewProvider(), 'M'); raceCalcM.CalculatePenalty(); Assert.AreEqual(51.18, raceCalcM.CalculatedPenalty); }
public void LessThen10ValidResults_Test() { string dbFilename = TestUtilities.CreateWorkingFileFrom(testContextInstance.TestDeploymentDir, @"2801DSHS.mdb"); // Setup Data Model & Co Database db = new Database(); db.Connect(dbFilename); AppDataModel model = new AppDataModel(db); DSVRaceCalculation raceCalcW = new DSVRaceCalculation(model.GetRace(0), model.GetRace(0).GetResultViewProvider(), 'W'); raceCalcW.CalculatePenalty(); Assert.AreEqual(93.99, raceCalcW.CalculatedPenalty); DSVRaceCalculation raceCalcM = new DSVRaceCalculation(model.GetRace(0), model.GetRace(0).GetResultViewProvider(), 'M'); raceCalcM.CalculatePenalty(); Assert.AreEqual(91.51, raceCalcM.CalculatedPenalty); }
public void CutOffPointsValidResults_Test() { string dbFilename = TestUtilities.CreateWorkingFileFrom(testContextInstance.TestDeploymentDir, @"2852MSBS.mdb"); // Setup Data Model & Co Database db = new Database(); db.Connect(dbFilename); AppDataModel model = new AppDataModel(db); model.GetRace(0).RaceConfiguration.ValueCutOff = 250.0; DSVRaceCalculation raceCalcW = new DSVRaceCalculation(model.GetRace(0), model.GetRace(0).GetResultViewProvider(), 'W'); raceCalcW.CalculatePenalty(); Assert.AreEqual(32.12, raceCalcW.CalculatedPenalty); DSVRaceCalculation raceCalcM = new DSVRaceCalculation(model.GetRace(0), model.GetRace(0).GetResultViewProvider(), 'M'); raceCalcM.CalculatePenalty(); Assert.AreEqual(27.98, raceCalcM.CalculatedPenalty); }
public void MockTests() { DSVRaceCalculation getCalc(List <TestData> td) { var race = createTestData(td); race.RaceConfiguration.ValueCutOff = 250.0; race.RaceConfiguration.ValueF = 0.0; DSVRaceCalculation raceCalcW = new DSVRaceCalculation(race, race.GetResultViewProvider(), 'W'); raceCalcW.CalculatePenalty(); return(raceCalcW); } var td1 = new List <TestData> { new TestData { Points = 10.0, RunTime = 60.0 }, new TestData { Points = 11.0, RunTime = 59.0 }, new TestData { Points = 12.0, RunTime = 58.0 }, new TestData { Points = 13.0, RunTime = 57.0 }, new TestData { Points = 14.0, RunTime = 56.0 }, new TestData { Points = 15.0, RunTime = 55.0 }, new TestData { Points = 16.0, RunTime = 54.0 }, new TestData { Points = 17.0, RunTime = 53.0 }, new TestData { Points = 18.0, RunTime = 52.0 }, new TestData { Points = 19.0, RunTime = 51.0 } }; Assert.AreEqual(12.00, getCalc(td1).CalculatedPenalty); var td2 = new List <TestData> { new TestData { Points = 9999.0, RunTime = 60.0 }, new TestData { Points = 9999.0, RunTime = 59.0 }, new TestData { Points = 9999.0, RunTime = 58.0 }, new TestData { Points = 9999.0, RunTime = 57.0 }, new TestData { Points = 9999.0, RunTime = 56.0 }, new TestData { Points = -1.0, RunTime = 55.0 }, new TestData { Points = -1.0, RunTime = 54.0 }, new TestData { Points = -1.0, RunTime = 53.0 }, new TestData { Points = -1.0, RunTime = 52.0 }, new TestData { Points = -1.0, RunTime = 51.0 } }; Assert.AreEqual(124.5, getCalc(td2).CalculatedPenalty); var td3 = new List <TestData> { new TestData { Points = 9999.0, RunTime = 60.0 }, new TestData { Points = 9999.0, RunTime = 59.0 }, new TestData { Points = 9999.0, RunTime = 58.0 }, new TestData { Points = 9999.0, RunTime = 57.0 }, new TestData { Points = 9999.0, RunTime = 56.0 }, new TestData { Points = -1.0, RunTime = 55.0 }, new TestData { Points = -1.0, RunTime = 54.0 }, new TestData { Points = 10.0, RunTime = 53.0 }, new TestData { Points = 11.0, RunTime = 52.0 }, new TestData { Points = 12.0, RunTime = 51.0 } }; Assert.AreEqual(56.4, getCalc(td3).CalculatedPenalty); // Test for FIS Points Rules §4.4.5 (more then 1 participant at position 10) var td4 = new List <TestData> { new TestData { Points = 9999.0, RunTime = 60.0 }, new TestData { Points = 10.0, RunTime = 60.0 }, new TestData { Points = 9999.0, RunTime = 59.0 }, new TestData { Points = 9999.0, RunTime = 58.0 }, new TestData { Points = 9999.0, RunTime = 57.0 }, new TestData { Points = 9999.0, RunTime = 56.0 }, new TestData { Points = -1.0, RunTime = 55.0 }, new TestData { Points = -1.0, RunTime = 54.0 }, new TestData { Points = 10.0, RunTime = 53.0 }, new TestData { Points = 11.0, RunTime = 52.0 }, new TestData { Points = 12.0, RunTime = 51.0 } }; Assert.AreEqual(11, getCalc(td4).TopTen.Count); Assert.AreEqual(32.2, getCalc(td4).CalculatedPenalty); }