Skip to content

Commit

Permalink
fix direction parsing for modal solutions
Browse files Browse the repository at this point in the history
  • Loading branch information
d471061c committed Jul 18, 2023
1 parent d1b6574 commit d79f2eb
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ const migrateModelSolutionSpecQuizItem = (
multipleChoiceMultipleOptionsGradingPolicy:
quizItem.multipleChoiceMultipleOptionsGradingPolicy,
allowSelectingMultipleOptions: quizItem.multi,
direction: quizItem.direction,
optionDisplayDirection: quizItem.direction == "row" ? "horizontal" : "vertical",
failureMessage: quizItem.failureMessage,
successMessage: quizItem.successMessage,
sharedOptionFeedbackMessage: quizItem.sharedOptionFeedbackMessage,
Expand Down
2 changes: 1 addition & 1 deletion services/quizzes/src/util/migration/publicSpecQuiz.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ const migratePublicSpecQuizItem = (quizItem: PublicQuizItem): PublicSpecQuizItem
type: "multiple-choice",
allowSelectingMultipleOptions: quizItem.multi,
body: quizItem.body,
optionDisplayDirection: quizItem.direction == "column" ? "horizontal" : "vertical",
optionDisplayDirection: quizItem.direction == "row" ? "horizontal" : "vertical",
multipleChoiceMultipleOptionsGradingPolicy:
quizItem.multipleChoiceMultipleOptionsGradingPolicy,
options: quizItem.options.map(
Expand Down
14 changes: 10 additions & 4 deletions services/quizzes/tests/util/migrationTests/utils/comparison.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,13 @@ const compareFields = <T extends object, S extends object>(
`field '${fields[key]}' does not exist in old quiz item: ${JSON.stringify(oldQuizItem)}`,
)
}
expect(newQuizItem[key as keyof T]).toEqual(oldQuizItem[fields[key] as keyof S])
if (key === "optionDisplayDirection") {
// direction is changed to optionDisplayDirection with different values.
const direction = oldQuizItem[fields[key] as keyof S] == "row" ? "horizontal" : "vertical"
expect(direction).toEqual(newQuizItem[key as keyof T])
} else {
expect(newQuizItem[key as keyof T]).toEqual(oldQuizItem[fields[key] as keyof S])
}
})
}

Expand Down Expand Up @@ -177,7 +183,7 @@ const comparePrivateSpecQuizItem = (
successMessage: "successMessage",
failureMessage: "failureMessage",
sharedOptionFeedbackMessage: "sharedOptionFeedbackMessage",
direction: "direction",
optionDisplayDirection: "direction",
multipleChoiceMultipleOptionsGradingPolicy: "multipleChoiceMultipleOptionsGradingPolicy",
}
break
Expand Down Expand Up @@ -273,7 +279,7 @@ const comparePublicSpecQuizItem = (
allowSelectingMultipleOptions: "multi",
title: "title",
body: "body",
direction: "direction",
optionDisplayDirection: "direction",
multipleChoiceMultipleOptionsGradingPolicy: "multipleChoiceMultipleOptionsGradingPolicy",
}
break
Expand Down Expand Up @@ -375,7 +381,7 @@ const compareModelSolutionSpecQuizItem = (
successMessage: "successMessage",
failureMessage: "failureMessage",
sharedOptionFeedbackMessage: "sharedOptionFeedbackMessage",
direction: "direction",
optionDisplayDirection: "direction",
multipleChoiceMultipleOptionsGradingPolicy: "multipleChoiceMultipleOptionsGradingPolicy",
}
break
Expand Down
4 changes: 3 additions & 1 deletion services/quizzes/types/quizTypes/modelSolutionSpec.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import { DisplayDirection } from "./privateSpec"

type grantPointsPolicy = "grant_whenever_possible" | "grant_only_when_answer_fully_correct"

export interface QuizItemOption {
Expand Down Expand Up @@ -70,7 +72,7 @@ export interface ModelSolutionQuizItemMultiplechoice {
successMessage: string | null
failureMessage: string | null
sharedOptionFeedbackMessage: string | null
direction: "row" | "column"
optionDisplayDirection: DisplayDirection
multipleChoiceMultipleOptionsGradingPolicy: multipleChoiceMultipleOptionsGradingPolicy
}

Expand Down

0 comments on commit d79f2eb

Please sign in to comment.