private void LiveTimingStart_Click(object sender, RoutedEventArgs e) { if (_liveTimingMeasurement == null) { return; } _liveTimingMeasurement.AutoAddParticipants = Properties.Settings.Default.AutoAddParticipants; _liveTimingMeasurement.Start(); }
private void LiveTimingStart_Click(object sender, RoutedEventArgs e) { if (_liveTimingMeasurement == null) { MessageBox.Show("Zeitnahmegerät ist nicht verfügbar.", "Fehler", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (!_thisRace.IsConsistent) { MessageBox.Show("Die Startnummern sind nicht eindeutig zugewiesen.\n(Die Zeitnahme wird dennoch gestartet.)", "Warnung", MessageBoxButton.OK, MessageBoxImage.Warning); } if (_thisRace.GetPreviousRun(_currentRaceRun) != null && !_thisRace.GetPreviousRun(_currentRaceRun).IsComplete) { MessageBox.Show("Der vorhergehende Durchlauf ist noch nicht komplett abgeschlossen.\n(Die Zeitnahme wird dennoch gestartet.)", "Warnung", MessageBoxButton.OK, MessageBoxImage.Warning); } _liveTimingMeasurement.AutoAddParticipants = Properties.Settings.Default.AutoAddParticipants; _liveTimingMeasurement.Start(); }
public void FullTest() { // Preparation & Test Description // - Copy DB // - Delete the tlbZeit // - Run ALGE DG 1 // - Compare results DG1 // - Run ALGE DG 2 // - Compare results DG2 string dbFilename = TestUtilities.CreateWorkingFileFrom(testContextInstance.TestDeploymentDir, @"KSC4--U12.mdb"); // Create working copy string dbFilenameWork = TestUtilities.Copy(dbFilename, @"KSC4--U12_work.mdb"); DBTestUtilities dbtuDst = new DBTestUtilities(dbFilenameWork); dbtuDst.ClearTimeMeasurements(); dbtuDst.Close(); testRun(0, @"KSC4--U12_ALGE_Run1.txt"); testRun(1, @"KSC4--U12_ALGE_Run2.txt"); void testRun(int run, string testfile) { // Setup Data Model & Co for Simulating ALGE Database dbWork = new Database(); dbWork.Connect(dbFilenameWork); AppDataModel modelWork = new AppDataModel(dbWork); LiveTimingMeasurement liveTimingMeasurement = new LiveTimingMeasurement(modelWork); ALGETdC8001TimeMeasurementSimulate algeSimulator = new ALGETdC8001TimeMeasurementSimulate(testfile); liveTimingMeasurement.SetTimingDevice(algeSimulator, algeSimulator); algeSimulator.Start(); modelWork.SetCurrentRaceRun(modelWork.GetRace(0).GetRun(run)); liveTimingMeasurement.Start(); while (algeSimulator.ProcessNextLine()) { } liveTimingMeasurement.Stop(); algeSimulator.Stop(); dbWork.Close(); // Compare the generated DB with the ground truth DB Database dbCmpWork = new Database(); dbCmpWork.Connect(dbFilenameWork); AppDataModel modelCmpWork = new AppDataModel(dbCmpWork); Database dbSrc = new Database(); dbSrc.Connect(dbFilename); AppDataModel modelSrc = new AppDataModel(dbSrc); foreach (var res in modelSrc.GetRace(0).GetRun(run).GetResultList()) { if (res.ResultCode == RunResult.EResultCode.Normal) { var resWork = modelCmpWork.GetRace(0).GetRun(run).GetResultList().FirstOrDefault(r => r.StartNumber == res.StartNumber); Assert.AreEqual(res.GetStartTime(), resWork.GetStartTime()); Assert.AreEqual(res.GetFinishTime(), resWork.GetFinishTime()); Assert.AreEqual(res.GetRunTime(), resWork.GetRunTime()); } } } }