This commit is contained in:
2024-02-07 16:21:04 -07:00
parent 292c06ecc9
commit 0881acd1f8
77 changed files with 239 additions and 204 deletions

View File

@@ -7,8 +7,8 @@ public class AssignmentMarkdownTests
{
var assignment = new LocalAssignment()
{
Name="test assignment",
Description ="here is the description",
Name = "test assignment",
Description = "here is the description",
DueAt = new DateTime(),
LockAt = new DateTime(),
SubmissionTypes = [AssignmentSubmissionType.ONLINE_UPLOAD],
@@ -29,13 +29,13 @@ public class AssignmentMarkdownTests
{
var assignment = new LocalAssignment()
{
Name="test assignment",
Description ="here is the description",
Name = "test assignment",
Description = "here is the description",
DueAt = new DateTime(),
LockAt = new DateTime(),
SubmissionTypes = [AssignmentSubmissionType.ONLINE_UPLOAD],
LocalAssignmentGroupName = "Final Project",
Rubric = new List<RubricItem>() {}
Rubric = new List<RubricItem>() { }
};
var assignmentMarkdown = assignment.ToMarkdown();
@@ -48,8 +48,8 @@ public class AssignmentMarkdownTests
{
var assignment = new LocalAssignment()
{
Name="test assignment",
Description ="here is the description",
Name = "test assignment",
Description = "here is the description",
DueAt = new DateTime(),
LockAt = new DateTime(),
SubmissionTypes = [],
@@ -71,8 +71,8 @@ public class AssignmentMarkdownTests
{
var assignment = new LocalAssignment()
{
Name="test assignment",
Description ="here is the description",
Name = "test assignment",
Description = "here is the description",
DueAt = new DateTime(),
LockAt = null,
SubmissionTypes = [],
@@ -94,7 +94,7 @@ public class AssignmentMarkdownTests
{
var assignment = new LocalAssignment()
{
Name="test assignment",
Name = "test assignment",
Description = "",
DueAt = new DateTime(),
LockAt = new DateTime(),
@@ -116,13 +116,14 @@ public class AssignmentMarkdownTests
{
var assignment = new LocalAssignment()
{
Name="test assignment",
Name = "test assignment",
Description = "test assignment\n---\nsomestuff",
DueAt = new DateTime(),
LockAt = new DateTime(),
SubmissionTypes = [],
LocalAssignmentGroupName = "Final Project",
Rubric = new List<RubricItem>() {
Rubric = new List<RubricItem>()
{
}
};

View File

@@ -72,8 +72,10 @@ public class FileStorageTests
[Test]
public async Task CourseSettings_CanBeSavedAndLoaded()
{
LocalCourse testCourse = new() {
Settings = new() {
LocalCourse testCourse = new()
{
Settings = new()
{
AssignmentGroups = [],
Name = "Test Course with settings",
DaysOfWeek = [DayOfWeek.Monday, DayOfWeek.Wednesday],
@@ -96,13 +98,15 @@ public class FileStorageTests
[Test]
public async Task EmptyCourseModules_CanBeSavedAndLoaded()
{
LocalCourse testCourse = new() {
LocalCourse testCourse = new()
{
Settings = new() { Name = "Test Course with modules" },
Modules = [
new() {
Name="test module 1",
Assignments= [],
Quizzes=[]
new()
{
Name = "test module 1",
Assignments = [],
Quizzes = []
}
]
};
@@ -118,26 +122,29 @@ public class FileStorageTests
[Test]
public async Task CourseModules_WithAssignments_CanBeSavedAndLoaded()
{
LocalCourse testCourse = new() {
LocalCourse testCourse = new()
{
Settings = new() { Name = "Test Course with modules and assignments" },
Modules = [
new() {
Name="test module 1 with assignments",
Assignments=[
new () {
Name="test assignment",
Description ="here is the description",
new()
{
Name = "test module 1 with assignments",
Assignments = [
new()
{
Name = "test assignment",
Description = "here is the description",
DueAt = new DateTime(),
LockAt = new DateTime(),
SubmissionTypes = [AssignmentSubmissionType.ONLINE_UPLOAD],
LocalAssignmentGroupName = "Final Project",
Rubric = [
new() {Points = 4, Label="do task 1"},
new() {Points = 2, Label="do task 2"},
new() { Points = 4, Label = "do task 1" },
new() { Points = 2, Label = "do task 2" },
]
}
],
Quizzes=[]
Quizzes = []
}
]
};
@@ -156,14 +163,17 @@ public class FileStorageTests
[Test]
public async Task CourseModules_WithQuizzes_CanBeSavedAndLoaded()
{
LocalCourse testCourse = new() {
LocalCourse testCourse = new()
{
Settings = new() { Name = "Test Course with modules and quiz" },
Modules = [
new() {
Name="test module 1 with quiz",
Assignments=[],
Quizzes=[
new() {
new()
{
Name = "test module 1 with quiz",
Assignments = [],
Quizzes = [
new()
{
Name = "Test Quiz",
Description = "quiz description",
LockAt = new DateTime(2022, 10, 3, 12, 5, 0),
@@ -171,8 +181,9 @@ public class FileStorageTests
ShuffleAnswers = true,
OneQuestionAtATime = true,
LocalAssignmentGroupName = "Assignments",
Questions=[
new () {
Questions = [
new()
{
Text = "test essay",
QuestionType = QuestionType.ESSAY,
Points = 1
@@ -196,8 +207,10 @@ public class FileStorageTests
[Test]
public async Task MarkdownStorage_FullyPopulated_DoesNotLoseData()
{
LocalCourse testCourse = new() {
Settings = new () {
LocalCourse testCourse = new()
{
Settings = new()
{
AssignmentGroups = [],
Name = "Test Course with lots of data",
DaysOfWeek = [DayOfWeek.Monday, DayOfWeek.Wednesday],
@@ -206,24 +219,27 @@ public class FileStorageTests
DefaultDueTime = new() { Hour = 1, Minute = 59 },
},
Modules = [
new() {
Name= "new test module",
new()
{
Name = "new test module",
Assignments = [
new() {
Name="test assignment",
Description ="here is the description",
new()
{
Name = "test assignment",
Description = "here is the description",
DueAt = new DateTime(),
LockAt = new DateTime(),
SubmissionTypes = [AssignmentSubmissionType.ONLINE_UPLOAD],
LocalAssignmentGroupName = "Final Project",
Rubric = [
new() { Points = 4, Label="do task 1" },
new() { Points = 2, Label="do task 2" },
new() { Points = 4, Label = "do task 1" },
new() { Points = 2, Label = "do task 2" },
]
}
],
Quizzes = [
new() {
new()
{
Name = "Test Quiz",
Description = "quiz description",
LockAt = new DateTime(),
@@ -233,7 +249,8 @@ public class FileStorageTests
LocalAssignmentGroupName = "someId",
AllowedAttempts = -1,
Questions = [
new() {
new()
{
Text = "test short answer",
QuestionType = QuestionType.SHORT_ANSWER,
Points = 1
@@ -257,8 +274,10 @@ public class FileStorageTests
[Test]
public async Task MarkdownStorage_CanPersistPages()
{
LocalCourse testCourse = new() {
Settings = new () {
LocalCourse testCourse = new()
{
Settings = new()
{
AssignmentGroups = [],
Name = "Test Course with page",
DaysOfWeek = [DayOfWeek.Monday, DayOfWeek.Wednesday],
@@ -267,10 +286,12 @@ public class FileStorageTests
DefaultDueTime = new() { Hour = 1, Minute = 59 },
},
Modules = [
new(){
new()
{
Name = "page test module",
Pages = [
new () {
new()
{
Name = "test page persistence",
DueAt = new DateTime(),
Text = "this is some\n## markdown\n"

View File

@@ -80,4 +80,4 @@ Match the following terms & definitions
var quiz = LocalQuiz.ParseMarkdown(rawMarkdownQuiz);
quiz.Questions.First().Answers.First().Text.Should().Be("statement");
}
}
}

View File

@@ -42,7 +42,7 @@ oneline question
";
markdown.Should().Contain(expectedQuestionString);
}
[Test]
public void CanParseQuestionWithMultipleAnswers()
{
@@ -80,4 +80,4 @@ Which events are triggered when the user clicks on an input field?
firstQuestion.Answers.ElementAt(3).Text.Should().Be("submit");
}
}
}

View File

@@ -67,7 +67,7 @@ endline
*) true
) false
";
var question = LocalQuizQuestion.ParseMarkdown(questionMarkdown, 0);
var question = LocalQuizQuestion.ParseMarkdown(questionMarkdown, 0);
question.Answers.Count().Should().Be(2);
}
}
}

View File

@@ -82,7 +82,7 @@ Which events are triggered when the user clicks on an input field?
short_answer";
questionMarkdown.Should().Contain(expectedMarkdown);
}
[Test]
public void EssayQuestionToMarkdown_IsCorrect()
{
@@ -111,4 +111,4 @@ Which events are triggered when the user clicks on an input field?
essay";
questionMarkdown.Should().Contain(expectedMarkdown);
}
}
}

View File

@@ -31,7 +31,7 @@ public class RubricMarkdownTests
rubric.ElementAt(1).Label.Should().Be("this is the other task");
rubric.ElementAt(1).Points.Should().Be(3);
}
[Test]
public void TestCanParseSinglePoint()
{
@@ -68,4 +68,4 @@ public class RubricMarkdownTests
rubric.First().IsExtraCredit.Should().BeTrue();
rubric.First().Label.Should().Be("(Extra Credit) this is the task");
}
}
}