Vernetzung Stundenplan ↔ Unterrichtsplanung: Terminvorschlag, Lesson-Viewer-Sprung, Verzweigung (4.5.1–4.5.3)
4.5.1: Terminvorschlag für neue Stunden schlägt jetzt auch die Stundennummer
vor (bei Doppelstunden die erste Periode), nicht nur den Wochentag —
zieht über den bestehenden LessonNumber-Changed-Hook automatisch auch den
Stundenbeginn nach.
4.5.2 (teilweise): Klick auf eine Stunde im Stundenplan ("Heute"-Liste und
read-only Wochenraster) springt bei bereits vorhandener Lesson direkt in
den Verlaufsplan-Viewer statt nur grob zum Planung-Tab. Das Anlegen einer
neuen Lesson direkt aus dem Stundenplan bleibt bewusst offen (ungeklärte
Unit-Zuordnung, siehe TODO.md).
4.5.3: Der Lesson-Viewer hat jetzt Buttons "Zur Mitarbeit"/"Zu den Noten"
zum Weiterverzweigen in die Lerngruppe.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -97,4 +97,34 @@ public sealed class LessonViewerViewModelTests
|
||||
Assert.Equal("ab 12:00", vm.PhaseGroups[0].Phases[0].TimeDisplay);
|
||||
Assert.Equal("ab 12:00", vm.PhaseGroups[1].Phases[0].TimeDisplay);
|
||||
}
|
||||
|
||||
// ── Verzweigung aus dem Viewer (4.5.3) ────────────────────────────────────────
|
||||
|
||||
[Fact]
|
||||
public void NavigateToParticipation_RuftDelegatMitTabIndexDreiAuf()
|
||||
{
|
||||
var groupId = Guid.NewGuid();
|
||||
var lesson = new Lesson { GroupId = groupId, Topic = "Brechung", Date = new DateOnly(2025, 9, 1) };
|
||||
var vm = new LessonViewerViewModel(lesson, new FakeAlternativeLessonPaths([]));
|
||||
int? navigatedTab = null;
|
||||
vm.OnNavigateToTab = idx => navigatedTab = idx;
|
||||
|
||||
vm.NavigateToParticipationCommand.Execute(null);
|
||||
|
||||
Assert.Equal(groupId, vm.GroupId);
|
||||
Assert.Equal(3, navigatedTab);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void NavigateToGrades_RuftDelegatMitTabIndexFuenfAuf()
|
||||
{
|
||||
var lesson = new Lesson { GroupId = Guid.NewGuid(), Topic = "Brechung", Date = new DateOnly(2025, 9, 1) };
|
||||
var vm = new LessonViewerViewModel(lesson, new FakeAlternativeLessonPaths([]));
|
||||
int? navigatedTab = null;
|
||||
vm.OnNavigateToTab = idx => navigatedTab = idx;
|
||||
|
||||
vm.NavigateToGradesCommand.Execute(null);
|
||||
|
||||
Assert.Equal(5, navigatedTab);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user