Add Blazor WebApp and rework data handling to utilize Entity Framework

This commit is contained in:
2025-09-11 11:49:48 -04:00
parent 5220e61c79
commit 3daa3b81b3
111 changed files with 6039 additions and 946 deletions
+6 -6
View File
@@ -7,16 +7,16 @@ public class DataProcessingTests
{
[Test]
public void GetEventStudentPicksTest()
public void GetEventStudentRankingsTest()
{
var events = TestEntityHandler.GetCompetitiveEvents();
var events = TestEntityHandler.GetEvents();
var students = TestEntityHandler.GetStudents(events);
var rankings = TestEntityHandler.GetStudentEventRankings(students, events);
var eventStudentPicksArray = DataProcessing.GetEventStudentPicks(events, students);
foreach (var eventPicks in eventStudentPicksArray)
foreach (var ranking in rankings)
{
Console.WriteLine(eventPicks.Event.Name);
Console.WriteLine(string.Join(", ", eventPicks.StudentPicks.Select(s => $"{s.Item2}: {s.Item1.Name}")));
Console.WriteLine(ranking.EventDefinition.Name);
Console.WriteLine($"{ranking.Student.FirstName}: {ranking.Rank}");
}
}
}
-23
View File
@@ -1,23 +0,0 @@
using Core.Calculation;
using Core.Entities;
using Core.Parsers;
using Tests.Parsers;
namespace Tests.Calculation;
[TestFixture]
public class EventAssignerTests
{
[Test]
public void SolutionTest()
{
var events = TestEntityHandler.GetCompetitiveEvents();
var students = TestEntityHandler.GetStudents(events);
var eventAssignment = new EventAssigner(events, students, new AssignmentParameters());
var teams = eventAssignment.Solve();
var teamWriter = new TeamWriter(teams, @"c:\temp\teams.csv");
teamWriter.Write();
}
}
+24
View File
@@ -0,0 +1,24 @@
using Core.Calculation;
using Core.Entities;
using Core.Parsers;
using Tests.Parsers;
using EventAssignment = Core.Calculation.EventAssignment;
namespace Tests.Calculation;
[TestFixture]
public class EventAssignmentTests
{
[Test]
public void SolutionTest()
{
var events = TestEntityHandler.GetEvents();
var students = TestEntityHandler.GetStudents(events);
var eventAssignment = new EventAssignment(events, students, new AssignmentParameters());
var solution = eventAssignment.Solve().Result;
var teamWriter = new TeamWriter(solution.Teams, @"c:\temp\teams.csv");
teamWriter.Write();
}
}
+4 -4
View File
@@ -10,14 +10,14 @@ public class TeamSchedulerTest
[Test]
public void Prototype_Test()
{
var teamSchedulerTest = new Core.Calculation.TeamScheduler_Prototype();
var teamSchedulerTest = new TeamScheduler_Prototype();
teamSchedulerTest.Solve();
}
[Test]
public void SolutionTest()
{
var events = TestEntityHandler.GetCompetitiveEvents();
var events = TestEntityHandler.GetEvents();
var students = TestEntityHandler.GetStudents(events);
var allTeams = TestEntityHandler.GetTeams(events, students);
@@ -28,12 +28,12 @@ public class TeamSchedulerTest
from t in teams
where t.Event == e
//&& t.Students.Count > 1
&& (e.Format == EventFormat.Team && e.RegionalEvent)
&& (e.EventFormat == EventFormat.Team && e.RegionalEvent)
select t).ToArray();
teams =
teams.Where(t => !t.Event.Name.Contains("Tech Bowl")).ToArray();
//var eventAssignment = new EventAssigner(events, students);
//var eventAssignment = new EventAssignment(events, students);
//var teams = eventAssignment.Solve();
IList<Team>[] timeSlots;