itemengine-cypress-automation 1.0.90 → 1.0.91

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. package/cypress/e2e/ILC/Desmos/desmosGeometryToolPreviewContents.smoke.js +1 -1
  2. package/cypress/e2e/ILC/DrawingResponse/drawingResponseGradingViewAndCorrectAnswerViewContents.smoke.js +3 -3
  3. package/cypress/e2e/ILC/EssayResponse/essayResponseEquationEditor.smoke.js +418 -0
  4. package/cypress/e2e/ILC/EssayResponse/previewContentsForAllViews.smoke.js +1 -1
  5. package/cypress/e2e/ILC/EssayResponseBasic/gradingViewAndCorrectAnswerViewContents.smoke.js +1 -1
  6. package/cypress/e2e/ILC/EssayResponseBasic/previewContentsForAllViews.smoke.js +1 -1
  7. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/previewContentsForAllViews.smoke.js +0 -1
  8. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +79 -0
  9. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/conditionalCheckboxScoring.js +335 -0
  10. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editTabScoringSection.js +64 -1
  11. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/setLimitSection.js +334 -0
  12. package/cypress/e2e/ILC/ReadingRuler/readingRulerEditTabBasicsSection.js +180 -0
  13. package/cypress/e2e/ILC/ReadingRuler/readingRulerHeaderSection.js +55 -0
  14. package/cypress/e2e/ILC/ReadingRuler/readingRulerPreviewTab.js +257 -0
  15. package/cypress/e2e/ILC/ReadingRuler/readingrulerPreviewContents.smoke.js +68 -0
  16. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.js +773 -0
  17. package/cypress/e2e/ILC/TextEntryMath/responseEvaluationMethodsAndCustomSettings.js +1 -1
  18. package/cypress/fixtures/equationEditorCategoriesAndSymbols .js +50 -50
  19. package/cypress/fixtures/theme/ilc.json +1 -1
  20. package/cypress/pages/components/commonComponents.js +1 -1
  21. package/cypress/pages/components/desmosToolComponent.js +1 -1
  22. package/cypress/pages/components/equationEditorFlyout.js +118 -7
  23. package/cypress/pages/components/essayResponseCommonComponents.js +26 -1
  24. package/cypress/pages/components/figOverImageCanvasComponent.js +1 -1
  25. package/cypress/pages/drawingResponsePage.js +1 -1
  26. package/cypress/pages/essayResponsePage.js +106 -1
  27. package/cypress/pages/fillInTheGapsOverImageTextPage.js +270 -8
  28. package/cypress/pages/readingRulerPage.js +64 -5
  29. package/cypress/pages/textEntryMathPage.js +112 -8
  30. package/package.json +1 -1
@@ -0,0 +1,773 @@
1
+ import { textEntryMathPage } from "../../../pages";
2
+ import { equationEditorFlyout } from "../../../pages/components";
3
+ import abortEarlySetup from "../../../support/helpers/abortEarly";
4
+
5
+ describe('Create item page - Text entry math: All or nothing scoring', () => {
6
+ before(() => {
7
+ cy.loginAs('admin');
8
+ });
9
+
10
+ describe('Evaluation methods: Response is true', () => {
11
+ abortEarlySetup();
12
+ before(() => {
13
+ textEntryMathPage.steps.navigateToCreateQuestion('Text Entry Math');
14
+ cy.barsPreLoaderWait();
15
+ textEntryMathPage.steps.addTextInQuestionInstructionsInputField('Response is true: Response inputted needs to be a true equation / inequality to be marked correct');
16
+ textEntryMathPage.steps.clearQuestionInputField();
17
+ textEntryMathPage.steps.addInputToQuestionInputField('Compare the equations correctly')
18
+ textEntryMathPage.steps.addResponseToken();
19
+ textEntryMathPage.steps.allotPoints(20);
20
+ textEntryMathPage.steps.expandResponseAccordionSpecifyCorrectAnswer(0);
21
+ textEntryMathPage.steps.selectEvaluationMethod('Response is true')
22
+ textEntryMathPage.steps.switchToPreviewTab();
23
+ });
24
+
25
+ it('When the user attempts the question using correct equal to comparison then it should be treated as correct', () => {
26
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
27
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['cubeRoot'] }, { categoryName: 'keypad', symbolName: ['two', 'seven'] }]);
28
+ equationEditorFlyout.steps.enterTextInPreviewInputField('=3');
29
+ equationEditorFlyout.steps.clickOnOkButton();
30
+ textEntryMathPage.steps.switchToGradingView();
31
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
32
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
33
+ });
34
+
35
+ it('When the user attempts the question using correct greater than comparison then it should be treated as correct', () => {
36
+ textEntryMathPage.steps.resetQuestionPreview();
37
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
38
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['fraction'] }, { categoryName: 'keypad', symbolName: ['four'] }]);
39
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
40
+ equationEditorFlyout.steps.enterTextInPreviewInputField('>')
41
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['fraction'] }, { categoryName: 'keypad', symbolName: ['one'] }]);
42
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['2']);
43
+ equationEditorFlyout.steps.clickOnOkButton();
44
+ textEntryMathPage.steps.switchToGradingView();
45
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
46
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
47
+ });
48
+
49
+ it('When the user attempts the question using two inequalities then it should be treated as correct', () => {
50
+ textEntryMathPage.steps.resetQuestionPreview();
51
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
52
+ equationEditorFlyout.steps.enterTextInPreviewInputField('4+1>4<6');
53
+ equationEditorFlyout.steps.clickOnOkButton();
54
+ textEntryMathPage.steps.switchToGradingView();
55
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
56
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
57
+ });
58
+
59
+ it('When the user attempts the question using incorrect comparison of decimals then it should be treated as incorrect', () => {
60
+ textEntryMathPage.steps.resetQuestionPreview();
61
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
62
+ equationEditorFlyout.steps.enterTextInPreviewInputField('12.03<12.00');
63
+ equationEditorFlyout.steps.clickOnOkButton();
64
+ textEntryMathPage.steps.switchToGradingView();
65
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
66
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
67
+ });
68
+
69
+ it('When the user attempts the question using correct equal to comparison for polynomials using mixed fractions and percentage then it should be treated as correct', () => {
70
+ textEntryMathPage.steps.resetQuestionPreview();
71
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
72
+ equationEditorFlyout.steps.enterTextInPreviewInputField('900%<10');
73
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['mixedFraction'] }]);
74
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['90', '9']);
75
+ equationEditorFlyout.steps.clickOnOkButton();
76
+ textEntryMathPage.steps.switchToGradingView();
77
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
78
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
79
+ });
80
+
81
+ it('When the user attempts the question using correct equal to comparison using square roots and quadratic equations then it should be treated as correct', () => {
82
+ textEntryMathPage.steps.resetQuestionPreview();
83
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
84
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['x', 'square'] }, { categoryName: 'relationships', symbolName: ['greaterThan'] }, { categoryName: 'basic', symbolName: ['sqrt'] }]);
85
+ equationEditorFlyout.steps.enterTextAtInputFieldCursor('4x');
86
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['square'] }]);
87
+ equationEditorFlyout.steps.clickOnOkButton();
88
+ textEntryMathPage.steps.switchToGradingView();
89
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
90
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
91
+ });
92
+
93
+ it('When the user attempts the question using correct less than comparison then it should be treated as correct', () => {
94
+ textEntryMathPage.steps.resetQuestionPreview();
95
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
96
+ equationEditorFlyout.steps.enterTextInPreviewInputField('2*3.14');
97
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'relationships', symbolName: ['lessThan'] }, { categoryName: 'keypad', symbolName: ['two'] }, { categoryName: 'greek', symbolName: ['pi'] }]);
98
+ equationEditorFlyout.steps.clickOnOkButton();
99
+ textEntryMathPage.steps.switchToGradingView();
100
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
101
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
102
+ });
103
+
104
+ it('When the user attempts the question using correct greater than comparison for polynomials using parenthesis then it should be treated as correct', () => {
105
+ textEntryMathPage.steps.resetQuestionPreview();
106
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
107
+ equationEditorFlyout.steps.enterTextInPreviewInputField('6i>i+2i');
108
+ equationEditorFlyout.steps.clickOnOkButton();
109
+ textEntryMathPage.steps.switchToGradingView();
110
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
111
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
112
+ });
113
+
114
+ it('When the user attempts the question using correct equal to comparison for polynomials then it should be treated as correct', () => {
115
+ textEntryMathPage.steps.resetQuestionPreview();
116
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
117
+ equationEditorFlyout.steps.enterTextInPreviewInputField('x+2y=y+x+y');
118
+ equationEditorFlyout.steps.clickOnOkButton();
119
+ textEntryMathPage.steps.switchToGradingView();
120
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
121
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
122
+ });
123
+
124
+ it('When the user attempts the question using correct equal to comparison for polynomials using parenthesis then it should be treated as correct', () => {
125
+ textEntryMathPage.steps.resetQuestionPreview();
126
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
127
+ equationEditorFlyout.steps.enterTextInPreviewInputField('2(3x)y');
128
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'relationships', symbolName: ['greaterThanEqual'] }]);
129
+ equationEditorFlyout.steps.enterTextInPreviewInputField('6xy');
130
+ equationEditorFlyout.steps.clickOnOkButton();
131
+ textEntryMathPage.steps.switchToGradingView();
132
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
133
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
134
+ });
135
+
136
+ it('When the user attempts the question using comparison of addition of matrix then it should be treated as incorrect', () => {
137
+ textEntryMathPage.steps.resetQuestionPreview();
138
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
139
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
140
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '1', '2', '5']);
141
+ equationEditorFlyout.steps.enterTextInPreviewInputField('+');
142
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
143
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['2', '1', '0', '3']);
144
+ equationEditorFlyout.steps.enterTextInPreviewInputField('>');
145
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
146
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '1', '2', '4']);
147
+ equationEditorFlyout.steps.clickOnOkButton();
148
+ textEntryMathPage.steps.switchToGradingView();
149
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
150
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
151
+ });
152
+
153
+ it('When the user attempts the question using comparison of integration then it should be treated as incorrect', () => {
154
+ textEntryMathPage.steps.resetQuestionPreview();
155
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
156
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['integral'] }, { categoryName: 'basic', symbolName: ['x'] }]);
157
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '0']);
158
+ equationEditorFlyout.steps.enterTextInPreviewInputField('=');
159
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['fraction'] }, { categoryName: 'keypad', symbolName: ['one'] }]);
160
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['2']);
161
+ equationEditorFlyout.steps.clickOnOkButton();
162
+ textEntryMathPage.steps.switchToGradingView();
163
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
164
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
165
+ });
166
+
167
+ it('When the user attempts the question using derivatives then it should be treated as incorrect', () => {
168
+ textEntryMathPage.steps.resetQuestionPreview();
169
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
170
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['derivative'] }, { categoryName: 'basic', symbolName: ['x', 'square', 'equalTo'] }]);
171
+ equationEditorFlyout.steps.enterTextInPreviewInputField('2x')
172
+ equationEditorFlyout.steps.clickOnOkButton();
173
+ textEntryMathPage.steps.switchToGradingView();
174
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
175
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
176
+ });
177
+
178
+ it('When the user attempts the question using epsilon then it should be treated as incorrect', () => {
179
+ textEntryMathPage.steps.resetQuestionPreview();
180
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
181
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['epsilon'] }]);
182
+ equationEditorFlyout.steps.enterTextInPreviewInputField('^0.07')
183
+ equationEditorFlyout.steps.clickOnOkButton();
184
+ textEntryMathPage.steps.switchToGradingView();
185
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
186
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
187
+ });
188
+
189
+ it('When the user attempts the question using trigonometric functions then it should be treated as incorrect', () => {
190
+ textEntryMathPage.steps.resetQuestionPreview();
191
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
192
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'trigonometry', symbolName: ['sin'] }, { categoryName: 'basic', symbolName: ['square', 'x', 'add'] }, { categoryName: 'trigonometry', symbolName: ['cos'] }, { categoryName: 'basic', symbolName: ['square', 'x'] }]);
193
+ equationEditorFlyout.steps.enterTextInPreviewInputField('=1')
194
+ equationEditorFlyout.steps.clickOnOkButton();
195
+ textEntryMathPage.steps.switchToGradingView();
196
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
197
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
198
+ });
199
+ });
200
+
201
+ describe('Evaluation methods: Expanded form', () => {
202
+ abortEarlySetup();
203
+ before(() => {
204
+ textEntryMathPage.steps.navigateToCreateQuestion('Text Entry Math');
205
+ cy.barsPreLoaderWait();
206
+ textEntryMathPage.steps.addTextInQuestionInstructionsInputField('Expanded form: Response inputted needs to be in expanded form to be marked correct');
207
+ textEntryMathPage.steps.clearQuestionInputField();
208
+ textEntryMathPage.steps.addInputToQuestionInputField('Expand the following')
209
+ textEntryMathPage.steps.addResponseToken();
210
+ textEntryMathPage.steps.allotPoints(20);
211
+ textEntryMathPage.steps.expandResponseAccordionSpecifyCorrectAnswer(0);
212
+ textEntryMathPage.steps.selectEvaluationMethod('Expanded form')
213
+ textEntryMathPage.steps.switchToPreviewTab();
214
+ });
215
+
216
+ it('When the user attempts the question using arithmetic square operation then it should be treated as correct', () => {
217
+ textEntryMathPage.steps.resetQuestionPreview();
218
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
219
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['three'] }, { categoryName: 'basic', symbolName: ['square'] }]);
220
+ equationEditorFlyout.steps.clickOnOkButton();
221
+ textEntryMathPage.steps.switchToGradingView();
222
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
223
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
224
+ });
225
+
226
+ it('When the user attempts the question using decimals then it should be treated as correct', () => {
227
+ textEntryMathPage.steps.resetQuestionPreview();
228
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
229
+ equationEditorFlyout.steps.enterTextInPreviewInputField('12.03');
230
+ equationEditorFlyout.steps.clickOnOkButton();
231
+ textEntryMathPage.steps.switchToGradingView();
232
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
233
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
234
+ });
235
+
236
+ it('When the user attempts the question using percentages then it should be treated as correct', () => {
237
+ textEntryMathPage.steps.resetQuestionPreview();
238
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
239
+ equationEditorFlyout.steps.enterTextInPreviewInputField('30%');
240
+ equationEditorFlyout.steps.clickOnOkButton();
241
+ textEntryMathPage.steps.switchToGradingView();
242
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
243
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
244
+ });
245
+
246
+ it('When the user attempts the question using fractions then it should be treated as incorrect', () => {
247
+ textEntryMathPage.steps.resetQuestionPreview();
248
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
249
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['fraction'] }, { categoryName: 'keypad', symbolName: ['two'] }]);
250
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
251
+ equationEditorFlyout.steps.clickOnOkButton();
252
+ textEntryMathPage.steps.switchToGradingView();
253
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
254
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
255
+ });
256
+
257
+ it('When the user attempts the question using mixed fractions then it should be treated as correct', () => {
258
+ textEntryMathPage.steps.resetQuestionPreview();
259
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
260
+ equationEditorFlyout.steps.enterTextInPreviewInputField('2');
261
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['mixedFraction'] }]);
262
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '4']);
263
+ equationEditorFlyout.steps.clickOnOkButton();
264
+ textEntryMathPage.steps.switchToGradingView();
265
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
266
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
267
+ });
268
+
269
+ it('When the user attempts the question using expanded quadratic expressions then it should be treated as correct', () => {
270
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
271
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['two'] }, { categoryName: 'basic', symbolName: ['x', 'square', 'add'] }, { categoryName: 'keypad', symbolName: ['four'] }, { categoryName: 'basic', symbolName: ['x', 'add'] }, { categoryName: 'keypad', symbolName: ['six'] }]);
272
+ equationEditorFlyout.steps.clickOnOkButton();
273
+ textEntryMathPage.steps.switchToGradingView();
274
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
275
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
276
+ });
277
+
278
+ it('When the user attempts the question using expanded form using polynomials then it should be treated as correct', () => {
279
+ textEntryMathPage.steps.resetQuestionPreview();
280
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
281
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['two'] }, { categoryName: 'basic', symbolName: ['x', 'square', 'y', 'square', 'add'] }, { categoryName: 'keypad', symbolName: ['four'] }, { categoryName: 'basic', symbolName: ['y', 'x', 'add'] }, { categoryName: 'keypad', symbolName: ['four'] }]);
282
+ equationEditorFlyout.steps.clickOnOkButton();
283
+ textEntryMathPage.steps.switchToGradingView();
284
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
285
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
286
+ });
287
+
288
+ it('When the user attempts the question using factored form using polynomials then it should be treated as incorrect', () => {
289
+ textEntryMathPage.steps.resetQuestionPreview();
290
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
291
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(x+3)(y-2)');
292
+ equationEditorFlyout.steps.clickOnOkButton();
293
+ textEntryMathPage.steps.switchToGradingView();
294
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
295
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
296
+ });
297
+
298
+ it('When the user attempts the question using factored equation then it should be treated as incorrect', () => {
299
+ textEntryMathPage.steps.resetQuestionPreview();
300
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
301
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(x-3)(2x+1)(x+5)');
302
+ equationEditorFlyout.steps.clickOnOkButton();
303
+ textEntryMathPage.steps.switchToGradingView();
304
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
305
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
306
+ });
307
+
308
+ it('When the user attempts the question using simplified trigonometric functions then it should be treated as correct', () => {
309
+ textEntryMathPage.steps.resetQuestionPreview();
310
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
311
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'trigonometry', symbolName: ['sin'] }, { categoryName: 'basic', symbolName: ['square', 'x', 'add'] }, { categoryName: 'trigonometry', symbolName: ['cos'] }, { categoryName: 'basic', symbolName: ['square', 'x'] }]);
312
+ equationEditorFlyout.steps.clickOnOkButton();
313
+ textEntryMathPage.steps.switchToGradingView();
314
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
315
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
316
+ });
317
+
318
+ it('When the user attempts the question using special symbols like \'pi\' then it should be treated as correct', () => {
319
+ textEntryMathPage.steps.resetQuestionPreview();
320
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
321
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['six'] }, { categoryName: 'greek', symbolName: ['pi'] }]);
322
+ equationEditorFlyout.steps.clickOnOkButton();
323
+ textEntryMathPage.steps.switchToGradingView();
324
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
325
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
326
+ });
327
+
328
+ it('When the user attempts the question using expanded equation using iota then it should be treated as correct', () => {
329
+ textEntryMathPage.steps.resetQuestionPreview();
330
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
331
+ equationEditorFlyout.steps.enterTextInPreviewInputField('3i')
332
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['square', 'add'] }, { categoryName: 'keypad', symbolName: ['two'] }, { categoryName: 'greek', symbolName: ['iota'] }, { categoryName: 'keypad', symbolName: ['add', 'six'] }]);
333
+ equationEditorFlyout.steps.clickOnOkButton();
334
+ textEntryMathPage.steps.switchToGradingView();
335
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
336
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
337
+ });
338
+
339
+ it('When the user attempts the question using factorized complex equation then it should be treated as incorrect', () => {
340
+ textEntryMathPage.steps.resetQuestionPreview();
341
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
342
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(5+4i)(-3+2i)');
343
+ equationEditorFlyout.steps.clickOnOkButton();
344
+ textEntryMathPage.steps.switchToGradingView();
345
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
346
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
347
+ });
348
+
349
+ it('When the user attempts the question using addition of matrices then it should be treated as incorrect', () => {
350
+ textEntryMathPage.steps.resetQuestionPreview();
351
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
352
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
353
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['2', '1', '0', '3']);
354
+ equationEditorFlyout.steps.enterTextInPreviewInputField('+')
355
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
356
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '1', '2', '4']);
357
+ equationEditorFlyout.steps.clickOnOkButton();
358
+ textEntryMathPage.steps.switchToGradingView();
359
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
360
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
361
+ });
362
+
363
+ it('When the user attempts the question using derivative then it should be treated as incorrect', () => {
364
+ textEntryMathPage.steps.resetQuestionPreview();
365
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
366
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['derivative'] }, { categoryName: 'basic', symbolName: ['x', 'square'] }]);
367
+ equationEditorFlyout.steps.clickOnOkButton();
368
+ textEntryMathPage.steps.switchToGradingView();
369
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
370
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
371
+ });
372
+
373
+ it('When the user attempts the question using integration then it should be treated as correct', () => {
374
+ textEntryMathPage.steps.resetQuestionPreview();
375
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
376
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['integral'] }, { categoryName: 'basic', symbolName: ['x'] }]);
377
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '0'])
378
+ equationEditorFlyout.steps.clickOnOkButton();
379
+ textEntryMathPage.steps.switchToGradingView();
380
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
381
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
382
+ });
383
+
384
+ it('When the user attempts the question using epsilon correct icon should be displayed beside the response, a status message with text \'Your answer is correct\' should be displayed', () => {
385
+ textEntryMathPage.steps.resetQuestionPreview();
386
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
387
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['epsilon'] }]);
388
+ equationEditorFlyout.steps.enterTextInPreviewInputField('^0.07')
389
+ equationEditorFlyout.steps.clickOnOkButton();
390
+ textEntryMathPage.steps.switchToGradingView();
391
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
392
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
393
+ });
394
+ });
395
+
396
+ describe('Evaluation methods: Factored form', () => {
397
+ abortEarlySetup();
398
+ before(() => {
399
+ textEntryMathPage.steps.navigateToCreateQuestion('Text Entry Math');
400
+ cy.barsPreLoaderWait();
401
+ textEntryMathPage.steps.addTextInQuestionInstructionsInputField('Factored form: Response inputted needs to be in factored form to be marked correct');
402
+ textEntryMathPage.steps.clearQuestionInputField();
403
+ textEntryMathPage.steps.addInputToQuestionInputField('Factorize the following')
404
+ textEntryMathPage.steps.addResponseToken();
405
+ textEntryMathPage.steps.allotPoints(20);
406
+ textEntryMathPage.steps.expandResponseAccordionSpecifyCorrectAnswer(0);
407
+ textEntryMathPage.steps.selectEvaluationMethod('Factored form')
408
+ textEntryMathPage.steps.switchToPreviewTab();
409
+ });
410
+
411
+ it('When the user attempts the question using arithmetic square operation in un-simplified format then it should be treated as correct', () => {
412
+ textEntryMathPage.steps.resetQuestionPreview();
413
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
414
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['three'] }, { categoryName: 'basic', symbolName: ['square'] }]);
415
+ equationEditorFlyout.steps.clickOnOkButton();
416
+ textEntryMathPage.steps.switchToGradingView();
417
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
418
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
419
+ });
420
+
421
+ it('When the user attempts the question using decimals then it should be treated as correct', () => {
422
+ textEntryMathPage.steps.resetQuestionPreview();
423
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
424
+ equationEditorFlyout.steps.enterTextInPreviewInputField('12.03');
425
+ equationEditorFlyout.steps.clickOnOkButton();
426
+ textEntryMathPage.steps.switchToGradingView();
427
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
428
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
429
+ });
430
+
431
+ it('When the user attempts the question using percentages then it should be treated as correct', () => {
432
+ textEntryMathPage.steps.resetQuestionPreview();
433
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
434
+ equationEditorFlyout.steps.enterTextInPreviewInputField('30%');
435
+ equationEditorFlyout.steps.clickOnOkButton();
436
+ textEntryMathPage.steps.switchToGradingView();
437
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
438
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
439
+ });
440
+
441
+ it('When the user attempts the question using fractions in simplified format then it should be treated as correct', () => {
442
+ textEntryMathPage.steps.resetQuestionPreview();
443
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
444
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['fraction'] }, { categoryName: 'keypad', symbolName: ['two'] }]);
445
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
446
+ equationEditorFlyout.steps.clickOnOkButton();
447
+ textEntryMathPage.steps.switchToGradingView();
448
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
449
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
450
+ });
451
+
452
+ it('When the user attempts the question using mixed fractions then it should be treated as incorrect', () => {
453
+ textEntryMathPage.steps.resetQuestionPreview();
454
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
455
+ equationEditorFlyout.steps.enterTextInPreviewInputField('2');
456
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['mixedFraction'] }]);
457
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '4']);
458
+ equationEditorFlyout.steps.clickOnOkButton();
459
+ textEntryMathPage.steps.switchToGradingView();
460
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
461
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
462
+ });
463
+
464
+ it('When the user attempts the question using quadratic equation then it should be treated as incorrect', () => {
465
+ textEntryMathPage.steps.resetQuestionPreview();
466
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
467
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['two'] }, { categoryName: 'basic', symbolName: ['x', 'square', 'subtract'] }, { categoryName: 'keypad', symbolName: ['three'] }, { categoryName: 'basic', symbolName: ['x', 'add'] }, { categoryName: 'keypad', symbolName: ['one'] }]);
468
+ equationEditorFlyout.steps.clickOnOkButton();
469
+ textEntryMathPage.steps.switchToGradingView();
470
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
471
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
472
+ });
473
+
474
+ it('When the user attempts the question using polynomial equation using parenthesis then it should be treated as correct', () => {
475
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
476
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(x+3)(y-2)');
477
+ equationEditorFlyout.steps.clickOnOkButton();
478
+ textEntryMathPage.steps.switchToGradingView();
479
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
480
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
481
+ });
482
+
483
+ it('When the user attempts the question using factorized equation then it should be treated as correct', () => {
484
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
485
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(x-1)(2x-1)');
486
+ equationEditorFlyout.steps.clickOnOkButton();
487
+ textEntryMathPage.steps.switchToGradingView();
488
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
489
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
490
+ });
491
+
492
+ it('When the user attempts the question using factorized complex equation then it should be treated as correct', () => {
493
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
494
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(5+4i)(-3+2i)');
495
+ equationEditorFlyout.steps.clickOnOkButton();
496
+ textEntryMathPage.steps.switchToGradingView();
497
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
498
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
499
+ });
500
+
501
+ it('When the user attempts the question using iota in simplified format then it should be treated as correct', () => {
502
+ textEntryMathPage.steps.resetQuestionPreview();
503
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
504
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-6i');
505
+ equationEditorFlyout.steps.clickOnOkButton();
506
+ textEntryMathPage.steps.switchToGradingView();
507
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
508
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
509
+ });
510
+
511
+ it('When the user attempts the question using special symbols like \'pi\' along with numeric values then it should be treated as incorrect', () => {
512
+ textEntryMathPage.steps.resetQuestionPreview();
513
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
514
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['three'] }, { categoryName: 'greek', symbolName: ['pi'] }]);
515
+ equationEditorFlyout.steps.clickOnOkButton();
516
+ textEntryMathPage.steps.switchToGradingView();
517
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
518
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
519
+ });
520
+
521
+ it('When the user attempts the question using simplified trigonometric functions then it should be treated as incorrect', () => {
522
+ textEntryMathPage.steps.resetQuestionPreview();
523
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
524
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'trigonometry', symbolName: ['sin'] }, { categoryName: 'basic', symbolName: ['square', 'x', 'add'] }, { categoryName: 'trigonometry', symbolName: ['cos'] }, { categoryName: 'basic', symbolName: ['square', 'x'] }]);
525
+ equationEditorFlyout.steps.clickOnOkButton();
526
+ textEntryMathPage.steps.switchToGradingView();
527
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
528
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
529
+ });
530
+
531
+ it('When the user attempts the question using identity matrix then it should be treated as correct', () => {
532
+ textEntryMathPage.steps.resetQuestionPreview();
533
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
534
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
535
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['0', '1', '0', '1']);
536
+ equationEditorFlyout.steps.clickOnOkButton();
537
+ textEntryMathPage.steps.switchToGradingView();
538
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
539
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
540
+ });
541
+
542
+ it('When the user attempts the question using addition of matrices then it should be treated as correct', () => {
543
+ textEntryMathPage.steps.resetQuestionPreview();
544
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
545
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
546
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['2', '1', '0', '3']);
547
+ equationEditorFlyout.steps.enterTextInPreviewInputField('+')
548
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
549
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '1', '2', '4']);
550
+ equationEditorFlyout.steps.clickOnOkButton();
551
+ textEntryMathPage.steps.switchToGradingView();
552
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
553
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
554
+ });
555
+
556
+ it('When the user attempts the question using percentages then it should be treated as correct', () => {
557
+ textEntryMathPage.steps.resetQuestionPreview();
558
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
559
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['derivative'] }, { categoryName: 'basic', symbolName: ['x', 'square'] }]);
560
+ equationEditorFlyout.steps.clickOnOkButton();
561
+ textEntryMathPage.steps.switchToGradingView();
562
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
563
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
564
+ });
565
+
566
+ it('When the user attempts the question using integration then it should be treated as correct', () => {
567
+ textEntryMathPage.steps.resetQuestionPreview();
568
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
569
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['integral'] }, { categoryName: 'basic', symbolName: ['x'] }]);
570
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '0'])
571
+ equationEditorFlyout.steps.clickOnOkButton();
572
+ textEntryMathPage.steps.switchToGradingView();
573
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
574
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
575
+ });
576
+
577
+ it('When the user attempts the question using epsilon then it should be treated as correct', () => {
578
+ textEntryMathPage.steps.resetQuestionPreview();
579
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
580
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['epsilon'] }]);
581
+ equationEditorFlyout.steps.enterTextInPreviewInputField('^0.07')
582
+ equationEditorFlyout.steps.clickOnOkButton();
583
+ textEntryMathPage.steps.switchToGradingView();
584
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
585
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
586
+ });
587
+ });
588
+
589
+ describe('Evaluation methods: Simplified version', () => {
590
+ abortEarlySetup();
591
+ before(() => {
592
+ textEntryMathPage.steps.navigateToCreateQuestion('Text Entry Math');
593
+ cy.barsPreLoaderWait();
594
+ textEntryMathPage.steps.addTextInQuestionInstructionsInputField('Simplified version: Response inputted needs to be in simplified form to be marked correct');
595
+ textEntryMathPage.steps.clearQuestionInputField();
596
+ textEntryMathPage.steps.addInputToQuestionInputField('Simplify the following')
597
+ textEntryMathPage.steps.addResponseToken();
598
+ textEntryMathPage.steps.allotPoints(20);
599
+ textEntryMathPage.steps.expandResponseAccordionSpecifyCorrectAnswer(0);
600
+ textEntryMathPage.steps.selectEvaluationMethod('Simplified version')
601
+ textEntryMathPage.steps.switchToPreviewTab();
602
+ });
603
+
604
+ it('When the user attempts the question using decimals then it should be treated as correct', () => {
605
+ textEntryMathPage.steps.resetQuestionPreview();
606
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
607
+ equationEditorFlyout.steps.enterTextInPreviewInputField('12.03');
608
+ equationEditorFlyout.steps.clickOnOkButton();
609
+ textEntryMathPage.steps.switchToGradingView();
610
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
611
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
612
+ });
613
+
614
+ it('When the user attempts the question using percentages then it should be treated as incorrect', () => {
615
+ textEntryMathPage.steps.resetQuestionPreview();
616
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
617
+ equationEditorFlyout.steps.enterTextInPreviewInputField('30%');
618
+ equationEditorFlyout.steps.clickOnOkButton();
619
+ textEntryMathPage.steps.switchToGradingView();
620
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
621
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
622
+ });
623
+
624
+ it('When the user attempts the question using arithmetic square operation in un-simplified format then it should be treated as incorrect', () => {
625
+ textEntryMathPage.steps.resetQuestionPreview();
626
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
627
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['three'] }, { categoryName: 'basic', symbolName: ['square'] }]);
628
+ equationEditorFlyout.steps.clickOnOkButton();
629
+ textEntryMathPage.steps.switchToGradingView();
630
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
631
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
632
+ });
633
+
634
+ it('When the user attempts the question using fractions in simplified format then it should be treated as incorrect', () => {
635
+ textEntryMathPage.steps.resetQuestionPreview();
636
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
637
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['fraction'] }, { categoryName: 'keypad', symbolName: ['two'] }]);
638
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
639
+ equationEditorFlyout.steps.clickOnOkButton();
640
+ textEntryMathPage.steps.switchToGradingView();
641
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
642
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
643
+ });
644
+
645
+ it('When the user attempts the question using mixed fractions then it should be treated as incorrect', () => {
646
+ textEntryMathPage.steps.resetQuestionPreview();
647
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
648
+ equationEditorFlyout.steps.enterTextInPreviewInputField('2');
649
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'basic', symbolName: ['mixedFraction'] }]);
650
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '4']);
651
+ equationEditorFlyout.steps.clickOnOkButton();
652
+ textEntryMathPage.steps.switchToGradingView();
653
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
654
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
655
+ });
656
+
657
+ it('When the user attempts the question using polynomial expressions then it should be treated as correct', () => {
658
+ textEntryMathPage.steps.resetQuestionPreview();
659
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
660
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['two'] }, { categoryName: 'basic', symbolName: ['x', 'square', 'add'] }, { categoryName: 'keypad', symbolName: ['four'] }, { categoryName: 'basic', symbolName: ['x'] }]);
661
+ equationEditorFlyout.steps.clickOnOkButton();
662
+ textEntryMathPage.steps.switchToGradingView();
663
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
664
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
665
+ });
666
+
667
+ it('When the user attempts the question using parenthesis in simplified format then it should be treated as incorrect', () => {
668
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
669
+ equationEditorFlyout.steps.enterTextInPreviewInputField('(x+3)(y-2)');
670
+ equationEditorFlyout.steps.clickOnOkButton();
671
+ textEntryMathPage.steps.switchToGradingView();
672
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
673
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
674
+ });
675
+
676
+ it('When the user attempts the question using identity matrix then it should be treated as correct', () => {
677
+ textEntryMathPage.steps.resetQuestionPreview();
678
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
679
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
680
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['0', '1', '0', '1']);
681
+ equationEditorFlyout.steps.clickOnOkButton();
682
+ textEntryMathPage.steps.switchToGradingView();
683
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
684
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
685
+ });
686
+
687
+ it('When the user attempts the question using iota in simplified format then it should be treated as correct', () => {
688
+ textEntryMathPage.steps.resetQuestionPreview();
689
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
690
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-6i');
691
+ equationEditorFlyout.steps.clickOnOkButton();
692
+ textEntryMathPage.steps.switchToGradingView();
693
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
694
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
695
+ });
696
+
697
+ it('When the user attempts the question using iota in un-simplified format then it should be treated as incorrect', () => {
698
+ textEntryMathPage.steps.resetQuestionPreview();
699
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
700
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-3i');
701
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['dotMultiplier', 'two'] }]);
702
+ equationEditorFlyout.steps.clickOnOkButton();
703
+ textEntryMathPage.steps.switchToGradingView();
704
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
705
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
706
+ });
707
+
708
+ it('When the user attempts the question using special symbols like \'pi\' then it should be treated as correct', () => {
709
+ textEntryMathPage.steps.resetQuestionPreview();
710
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
711
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'greek', symbolName: ['pi'] }]);
712
+ equationEditorFlyout.steps.clickOnOkButton();
713
+ textEntryMathPage.steps.switchToGradingView();
714
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
715
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
716
+ });
717
+
718
+ it('When the user attempts the question using special symbols like \'pi\' along with numeric values then it should be treated as incorrect', () => {
719
+ textEntryMathPage.steps.resetQuestionPreview();
720
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
721
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'keypad', symbolName: ['three'] }, { categoryName: 'greek', symbolName: ['pi'] }]);
722
+ equationEditorFlyout.steps.clickOnOkButton();
723
+ textEntryMathPage.steps.switchToGradingView();
724
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
725
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
726
+ });
727
+
728
+ it('When the user attempts the question using simplified trigonometric functions then it should be treated as correct', () => {
729
+ textEntryMathPage.steps.resetQuestionPreview();
730
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
731
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'trigonometry', symbolName: ['sin'] }, { categoryName: 'basic', symbolName: ['square', 'x', 'add'] }, { categoryName: 'trigonometry', symbolName: ['cos'] }, { categoryName: 'basic', symbolName: ['square', 'x'] }]);
732
+ equationEditorFlyout.steps.clickOnOkButton();
733
+ textEntryMathPage.steps.switchToGradingView();
734
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
735
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
736
+ });
737
+
738
+ it('When the user attempts the question using addition of matrices then it should be treated as incorrect', () => {
739
+ textEntryMathPage.steps.resetQuestionPreview();
740
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
741
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
742
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['2', '1', '0', '3']);
743
+ equationEditorFlyout.steps.enterTextInPreviewInputField('+')
744
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
745
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3', '1', '2', '4']);
746
+ equationEditorFlyout.steps.clickOnOkButton();
747
+ textEntryMathPage.steps.switchToGradingView();
748
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
749
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
750
+ });
751
+
752
+ it('When the user attempts the question using percentages then it should be treated as incorrect', () => {
753
+ textEntryMathPage.steps.resetQuestionPreview();
754
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
755
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['derivative'] }, { categoryName: 'basic', symbolName: ['x', 'square'] }]);
756
+ equationEditorFlyout.steps.clickOnOkButton();
757
+ textEntryMathPage.steps.switchToGradingView();
758
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
759
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
760
+ });
761
+
762
+ it('When the user attempts the question using integration then it should be treated as incorrect', () => {
763
+ textEntryMathPage.steps.resetQuestionPreview();
764
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
765
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['integral'] }, { categoryName: 'basic', symbolName: ['x'] }]);
766
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '0'])
767
+ equationEditorFlyout.steps.clickOnOkButton();
768
+ textEntryMathPage.steps.switchToGradingView();
769
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
770
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
771
+ });
772
+ });
773
+ });