public void ImportFIS_ErrorCase_WrongExcel() { Assert.ThrowsException <Exception>(() => { var reader = new FISImportReader(@"FIS-points-list-AL-2022-331 - missing_fields.xlsx"); }); }
public void ImportFISList() { var reader = new FISImportReader(@"FIS-points-list-AL-2022-330.xlsx"); reader.Columns.Contains("Fiscode"); Assert.AreEqual("5th FIS points list 2021/2022", reader.UsedFISList); Assert.AreEqual(new DateTime(2021, 9, 14), reader.Date); //Assert.IsNotNull(reader.Mapping); Assert.AreEqual("Fiscode", reader.Columns[0]); Assert.AreEqual("Lastname", reader.Columns[1]); Assert.AreEqual("Firstname", reader.Columns[2]); Assert.AreEqual("Nationcode", reader.Columns[3]); Assert.AreEqual("Gender", reader.Columns[4]); Assert.AreEqual("Birthdate", reader.Columns[5]); Assert.AreEqual("Skiclub", reader.Columns[6]); Assert.AreEqual("Birthyear", reader.Columns[7]); // Test first line of Input { DataRow row = reader.Data.Tables[0].Rows[0]; Assert.AreEqual("10000001", row["Fiscode"]); Assert.AreEqual("FERRETTI", row["Lastname"]); Assert.AreEqual("Jacopo", row["Firstname"]); Assert.AreEqual("2004", row["Birthyear"]); Assert.AreEqual("SKIING A.S.D.", row["Skiclub"]); Assert.AreEqual("ITA", row["Nationcode"]); Assert.AreEqual("M", row["Gender"]); Assert.AreEqual(145.06, row["DHpoints"]); Assert.AreEqual(66.38, row["SLpoints"]); Assert.AreEqual(66.48, row["GSpoints"]); Assert.AreEqual(99.09, row["SGpoints"]); } // Test first line of Input { DataRow row = reader.Data.Tables[0].Rows[364]; Assert.AreEqual("107747", row["Fiscode"]); Assert.AreEqual("SMART", row["Lastname"]); Assert.AreEqual("Amelia", row["Firstname"]); Assert.AreEqual("1998", row["Birthyear"]); Assert.AreEqual("WINDERMERE", row["Skiclub"]); Assert.AreEqual("CAN", row["Nationcode"]); Assert.AreEqual("W", row["Gender"]); Assert.AreEqual(9999.99, row["DHpoints"]); Assert.AreEqual(17.82, row["SLpoints"]); Assert.AreEqual(41.29, row["GSpoints"]); Assert.AreEqual(144.08, row["SGpoints"]); } }
public void ImportFIS_ErrorCase_DoubleImport() { TestDataGenerator tg = new TestDataGenerator(); tg.Model.AddRace(new Race.RaceProperties { RaceType = Race.ERaceType.DownHill, Runs = 1 }); var reader1 = new FISImportReader(@"FIS-points-list-AL-2022-330.xlsx"); FISInterfaceModel fisImp = new FISInterfaceModel(tg.Model); fisImp.UpdateFISList(reader1); Assert.AreEqual("5th FIS points list 2021/2022", fisImp.UsedList); var reader2 = new FISImportReader(@"FIS-points-list-AL-2022-331.xlsx"); fisImp.UpdateFISList(reader2); Assert.AreEqual("6th FIS points list 2021/2022", fisImp.UsedList); }
private void btnImportFile_Click(object sender, RoutedEventArgs e) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "FIS Point List (Excel Format - *.xlsx)|*.xlsx"; if (openFileDialog.ShowDialog() == true) { string path = openFileDialog.FileName; try { FISImportReader importReader = new FISImportReader(path); _importData.UpdateFISList(importReader); } catch (Exception exc) { MessageBox.Show("Die FIS Liste konnte nicht importiert werden.\n\nFehlermeldung: " + exc.Message, "Fehler", MessageBoxButton.OK, MessageBoxImage.Error); } updateGrid(); } }
public void ImportFISParticipant() { TestDataGenerator tg = new TestDataGenerator(); tg.Model.AddRace(new Race.RaceProperties { RaceType = Race.ERaceType.DownHill, Runs = 1 }); var reader = new FISImportReader(@"FIS-points-list-AL-2022-330.xlsx"); { RaceImport imp = new RaceImport( tg.Model.GetRace(0), reader.GetMapping(tg.Model.GetRace(0)), new ClassAssignment(tg.Model.GetParticipantClasses())); var row = reader.Data.Tables[0].Rows[0]; RaceParticipant rp = imp.ImportRow(row); Assert.AreEqual("10000001", rp.Code); Assert.AreEqual("FERRETTI", rp.Name); Assert.AreEqual("Jacopo", rp.Firstname); Assert.AreEqual(2004U, rp.Year); Assert.AreEqual("SKIING A.S.D.", rp.Club); Assert.AreEqual("ITA", rp.Nation); Assert.AreEqual('M', rp.Sex.Name); Assert.AreEqual(66.48, rp.Points); // GSpoints } { RaceImport imp = new RaceImport( tg.Model.GetRace(1), reader.GetMapping(tg.Model.GetRace(1)), new ClassAssignment(tg.Model.GetParticipantClasses())); var row = reader.Data.Tables[0].Rows[0]; RaceParticipant rp = imp.ImportRow(row); Assert.AreEqual("10000001", rp.Code); Assert.AreEqual("FERRETTI", rp.Name); Assert.AreEqual("Jacopo", rp.Firstname); Assert.AreEqual(2004U, rp.Year); Assert.AreEqual("SKIING A.S.D.", rp.Club); Assert.AreEqual("ITA", rp.Nation); Assert.AreEqual('M', rp.Sex.Name); Assert.AreEqual(145.06, rp.Points); // DHpoints } /////////////////////////////////////////////////////////////////// /// FISUpdatePoints.UpdatePoints /////////////////////////////////////////////////////////////////// tg.Model.GetRace(0).GetParticipants()[0].Points = -1; tg.Model.GetRace(1).GetParticipants()[0].Points = -1; Assert.AreEqual(-1.0, tg.Model.GetRace(0).GetParticipants()[0].Points); // DHpoints Assert.AreEqual(-1.0, tg.Model.GetRace(1).GetParticipants()[0].Points); // DHpoints FISInterfaceModel fisImp = new FISInterfaceModel(tg.Model); fisImp.UpdateFISList(reader); FISUpdatePoints.UpdatePoints(tg.Model, fisImp); Assert.AreEqual(66.48, tg.Model.GetRace(0).GetParticipants()[0].Points); // DHpoints Assert.AreEqual(145.06, tg.Model.GetRace(1).GetParticipants()[0].Points); // DHpoints }