Skip to content

Commit 3dfc579

Browse files
authored
feat: add conditional for new parser beta testing (#496)
1 parent ebab15f commit 3dfc579

File tree

4 files changed

+17
-1
lines changed

4 files changed

+17
-1
lines changed

src/editors/containers/ProblemEditor/components/SelectTypeModal/hooks.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ export const onSelect = ({
3737
attempts_before_showanswer_button: 0,
3838
show_reset_button: null,
3939
showanswer: null,
40+
defaultToAdvanced: false,
4041
},
4142
defaultSettings: snakeCaseKeys(defaultSettings),
4243
});

src/editors/containers/ProblemEditor/components/SelectTypeModal/hooks.test.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ describe('SelectTypeModal hooks', () => {
7878
attempts_before_showanswer_button: 0,
7979
show_reset_button: null,
8080
showanswer: null,
81+
defaultToAdvanced: false,
8182
},
8283
defaultSettings: mockDefaultSettings,
8384
});

src/editors/containers/ProblemEditor/data/OLXParser.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -738,4 +738,13 @@ export class OLXParser {
738738
groupFeedbackList,
739739
};
740740
}
741+
742+
getBetaParsedOLXData() {
743+
/* TODO: Replace olxParser.getParsedOLXData() with new parser function
744+
* and remove console.log()
745+
*/
746+
// eslint-disable-next-line no-console
747+
console.log('Should default to the advanced editor');
748+
return this.getParsedOLXData();
749+
}
741750
}

src/editors/data/redux/thunkActions/problem.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,14 @@ export const isBlankProblem = ({ rawOLX }) => {
2828
export const getDataFromOlx = ({ rawOLX, rawSettings, defaultSettings }) => {
2929
let olxParser;
3030
let parsedProblem;
31+
const { default_to_advanced: defaultToAdvanced } = rawSettings;
3132
try {
3233
olxParser = new OLXParser(rawOLX);
33-
parsedProblem = olxParser.getParsedOLXData();
34+
if (defaultToAdvanced) {
35+
parsedProblem = olxParser.getBetaParsedOLXData();
36+
} else {
37+
parsedProblem = olxParser.getParsedOLXData();
38+
}
3439
} catch (error) {
3540
// eslint-disable-next-line no-console
3641
console.error('The Problem Could Not Be Parsed from OLX. redirecting to Advanced editor.', error);

0 commit comments

Comments
 (0)