public void difficulty_can_not_be_less_than_0() { var item = new ReviewItemBuilder().Due().WithDifficultyRating(0).Build(); var strategy = new SuperMemo2ReviewStrategy(); var actualDifficulty = strategy.AdjustDifficulty(item, ReviewOutcome.Perfect); var expectedDifficulty = new DifficultyRating(0); Assert.That(actualDifficulty, Is.EqualTo(expectedDifficulty)); }
public void perfect_review_lowers_difficulty() { var item = new ReviewItemBuilder().Due().WithDifficultyRating(50).Build(); var strategy = new SuperMemo2ReviewStrategy(); var actualDifficulty = strategy.AdjustDifficulty(item, ReviewOutcome.Perfect); var expectedDifficulty = new DifficultyRating(41); Assert.That(actualDifficulty, Is.EqualTo(expectedDifficulty)); }
public void hesitant_review_leaves_difficulty_the_same() { var item = new ReviewItemBuilder().Due().WithDifficultyRating(50).Build(); var strategy = new SuperMemo2ReviewStrategy(); var actualDifficulty = strategy.AdjustDifficulty(item, ReviewOutcome.Hesitant); var expectedDifficulty = new DifficultyRating(50); Assert.That(actualDifficulty, Is.EqualTo(expectedDifficulty)); }