Notentendenzen (3+/2-) korrekt in Notenschnitt einrechnen, Abschnittsende-Vorschlag aus Einheit
CI / build-and-test (push) Canceled after 0s
CI / build-and-test (push) Canceled after 0s
Bisher liess int.TryParse jede Note mit Tendenz durchfallen und WeightedAverage rechnete den betroffenen Bereich mit 0 statt sie auszulassen - faelschte Notenuebersicht, Zielnoten- und Was-waere-wenn-Rechner. Ausserdem schlaegt der Mitarbeits-Assistent beim Abschnitt-Abschliessen jetzt das Ende der zuletzt abgeschlossenen Unterrichtseinheit statt immer "heute" vor. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -181,6 +181,25 @@ public class GradingServiceTests
|
||||
Assert.Equal(0, result);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("3+", 2.6667)]
|
||||
[InlineData("2-", 2.3333)]
|
||||
[InlineData("1+", 0.6667)]
|
||||
[InlineData("6-", 6.3333)]
|
||||
public void WeightedAverage_NotenMitTendenz_VerschiebtUmEinDrittel(string grade, double expected)
|
||||
{
|
||||
var result = _sut.WeightedAverage([(grade, 1.0)]);
|
||||
Assert.Equal(expected, result, precision: 4);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WeightedAverage_NotenMitTendenzGemischtMitGanzenNoten_GewichtetKorrekt()
|
||||
{
|
||||
// (3+ [2,667] + 2 [2,0]) / 2 = 2,333
|
||||
var result = _sut.WeightedAverage([("3+", 1.0), ("2", 1.0)]);
|
||||
Assert.Equal(2.3333, result, precision: 4);
|
||||
}
|
||||
|
||||
// ── RoundToGrade ──────────────────────────────────────────────────────────
|
||||
|
||||
[Fact]
|
||||
|
||||
Reference in New Issue
Block a user