Exemplo n.º 1
0
 public void ImportFIS_ErrorCase_WrongExcel()
 {
     Assert.ThrowsException <Exception>(() =>
     {
         var reader = new FISImportReader(@"FIS-points-list-AL-2022-331 - missing_fields.xlsx");
     });
 }
Exemplo n.º 2
0
        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"]);
            }
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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();
            }
        }
Exemplo n.º 5
0
        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
        }