public void TestParseOE2010NewFile() { LiveResults.Client.OEParser pars = new OEParser(); List <Result> results = new List <Result>(); pars.OnResult += new ResultDelegate(delegate(Result newRes) { results.Add(newRes); }); pars.AnalyzeFile(TestHelpers.GetPathToTestFile("oe2010_splits20130311.csv")); Assert.AreEqual(85, results.Count); var res = results.Where(x => x.RunnerName == "Sami Vähänen").FirstOrDefault(); Assert.IsNotNull(res); Assert.AreEqual("Rajamäen Rykmentti", res.RunnerClub); Assert.AreEqual("H21A", res.Class); Assert.AreEqual(14, res.ID); Assert.AreEqual(438000, res.StartTime); Assert.AreEqual(0, res.SplitTimes.Count); Assert.AreEqual(-1, res.Time); Assert.AreEqual(1, res.Status); res = results.Where(x => x.RunnerName == "Janne Mänkärlä").FirstOrDefault(); Assert.IsNotNull(res); Assert.AreEqual("Lynx", res.RunnerClub); Assert.AreEqual("H21A", res.Class); Assert.AreEqual(6, res.ID); Assert.AreEqual(390000, res.StartTime); Assert.AreEqual(2, res.SplitTimes.Count); Assert.AreEqual(176000, res.Time); Assert.AreEqual(0, res.Status); Assert.AreEqual(154500, res.SplitTimes[0].Time); Assert.AreEqual(1121, res.SplitTimes[0].ControlCode); Assert.AreEqual(173700, res.SplitTimes[1].Time); Assert.AreEqual(1125, res.SplitTimes[1].ControlCode); }
private void button2_Click(object sender, EventArgs e) { if (!Directory.Exists(txtOEDirectory.Text)) { MessageBox.Show(this, @"Please select an existing OE Export directory", @"Start OE Monitor", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (string.IsNullOrEmpty(txtCompID.Text)) { MessageBox.Show(this, @"You must enter a competition-ID", @"Start OE Monitor", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } listBox1.Items.Clear(); m_clients.Clear(); Logit("Reading servers from config (eventually resolving online)"); Application.DoEvents(); EmmaMysqlClient.EmmaServer[] servers = EmmaMysqlClient.GetServersFromConfig(); Logit("Got servers from obasen..."); Application.DoEvents(); foreach (EmmaMysqlClient.EmmaServer server in servers) { var client = new EmmaMysqlClient(server.Host, 3306, server.User, server.Pw, server.DB, Convert.ToInt32(txtCompID.Text)); client.OnLogMessage += client_OnLogMessage; client.Start(); m_clients.Add(client); } timer1_Tick(null, null); var format = cmbFormat.SelectedItem as FormatItem; if ( format.Format == Format.Oecsv || format.Format == Format.Oecsvteam || format.Format == Format.Oscsv) { m_osParser = new OSParser(); m_osParser.OnLogMessage += Logit; m_osParser.OnResult += m_OSParser_OnResult; m_oeParser = new OEParser(); m_oeParser.OnLogMessage += Logit; m_oeParser.OnResult += m_OSParser_OnResult; fsWatcherOS.Path = txtOEDirectory.Text; fsWatcherOS.Filter = txtExtension.Text; fsWatcherOS.EnableRaisingEvents = true; } else if (format.Format == Format.Iofxml) { fileSystemWatcher1.Path = txtOEDirectory.Text; fileSystemWatcher1.Filter = txtExtension.Text; fileSystemWatcher1.NotifyFilter = NotifyFilters.LastWrite; fileSystemWatcher1.IncludeSubdirectories = false; fileSystemWatcher1.EnableRaisingEvents = true; } }