@coorpacademy/app-review 0.2.12 → 0.3.1-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/es/actions/api/fetch-correction.js +1 -1
  2. package/es/actions/api/post-answer.d.ts +6 -0
  3. package/es/actions/api/post-answer.js +3 -1
  4. package/es/actions/ui/answers.d.ts +3 -0
  5. package/es/actions/ui/answers.js +3 -1
  6. package/es/reducers/index.d.ts +1 -1
  7. package/es/reducers/ui/answers.d.ts +4 -2
  8. package/es/reducers/ui/answers.js +6 -3
  9. package/es/reducers/ui/index.d.ts +4 -4
  10. package/es/reducers/ui/slide.d.ts +6 -4
  11. package/es/reducers/ui/slide.js +12 -4
  12. package/es/views/slides/index.js +4 -4
  13. package/lib/actions/api/fetch-correction.js +1 -1
  14. package/lib/actions/api/post-answer.d.ts +6 -0
  15. package/lib/actions/api/post-answer.js +4 -2
  16. package/lib/actions/ui/answers.d.ts +3 -0
  17. package/lib/actions/ui/answers.js +3 -1
  18. package/lib/reducers/index.d.ts +1 -1
  19. package/lib/reducers/ui/answers.d.ts +4 -2
  20. package/lib/reducers/ui/answers.js +6 -3
  21. package/lib/reducers/ui/index.d.ts +4 -4
  22. package/lib/reducers/ui/slide.d.ts +6 -4
  23. package/lib/reducers/ui/slide.js +12 -4
  24. package/lib/views/slides/index.js +4 -4
  25. package/package.json +4 -4
  26. package/src/actions/api/fetch-correction.ts +1 -1
  27. package/src/actions/api/post-answer.ts +5 -1
  28. package/src/actions/api/test/fetch-correction.test.ts +6 -2
  29. package/src/actions/api/test/fetch-rank.test.ts +2 -4
  30. package/src/actions/api/test/fetch-skills.test.ts +2 -4
  31. package/src/actions/api/test/fetch-slide.test.ts +2 -4
  32. package/src/actions/api/test/post-answer.test.ts +52 -13
  33. package/src/actions/api/test/post-progression.test.ts +2 -4
  34. package/src/actions/data/test/token.test.ts +2 -4
  35. package/src/actions/ui/answers.ts +4 -1
  36. package/src/actions/ui/test/answers.test.ts +38 -14
  37. package/src/actions/ui/test/next-slide.test.ts +8 -4
  38. package/src/actions/ui/test/slides.test.ts +2 -4
  39. package/src/reducers/data/test/progression.test.ts +1 -0
  40. package/src/reducers/ui/answers.ts +11 -5
  41. package/src/reducers/ui/index.ts +2 -2
  42. package/src/reducers/ui/slide.ts +30 -9
  43. package/src/reducers/ui/test/answers.test.ts +61 -13
  44. package/src/reducers/ui/test/slide.test.ts +36 -7
  45. package/src/views/skills/test/skills.test.ts +4 -8
  46. package/src/views/slides/index.ts +4 -4
  47. package/src/views/slides/test/index.test.ts +173 -28
  48. package/src/views/slides/test/slide.free-text.on-change.test.ts +7 -2
  49. package/src/views/slides/test/slide.qcm-drag.on-click.test.ts +7 -2
  50. package/src/views/slides/test/slide.qcm-graphic.on-click.test.ts +7 -2
  51. package/src/views/slides/test/slide.qcm.on-click.test.ts +7 -2
  52. package/src/views/slides/test/slide.slider.on-change.test.ts +7 -2
  53. package/src/views/slides/test/slide.slider.on-slider-change.test.ts +7 -2
  54. package/src/views/slides/test/slide.template.on-change.test.ts +12 -4
  55. package/es/actions/api/test/fetch-correction.test.d.ts +0 -1
  56. package/es/actions/api/test/fetch-correction.test.js +0 -91
  57. package/es/actions/api/test/fetch-rank.test.d.ts +0 -1
  58. package/es/actions/api/test/fetch-rank.test.js +0 -100
  59. package/es/actions/api/test/fetch-skills.test.d.ts +0 -1
  60. package/es/actions/api/test/fetch-skills.test.js +0 -61
  61. package/es/actions/api/test/fetch-slide.test.d.ts +0 -1
  62. package/es/actions/api/test/fetch-slide.test.js +0 -68
  63. package/es/actions/api/test/post-answer.test.d.ts +0 -1
  64. package/es/actions/api/test/post-answer.test.js +0 -172
  65. package/es/actions/api/test/post-progression.test.d.ts +0 -1
  66. package/es/actions/api/test/post-progression.test.js +0 -109
  67. package/es/actions/data/test/token.test.d.ts +0 -1
  68. package/es/actions/data/test/token.test.js +0 -27
  69. package/es/actions/ui/test/answers.test.d.ts +0 -1
  70. package/es/actions/ui/test/answers.test.js +0 -117
  71. package/es/actions/ui/test/next-slide.test.d.ts +0 -1
  72. package/es/actions/ui/test/next-slide.test.js +0 -63
  73. package/es/actions/ui/test/slides.test.d.ts +0 -1
  74. package/es/actions/ui/test/slides.test.js +0 -28
  75. package/es/reducers/data/test/corrections.test.d.ts +0 -1
  76. package/es/reducers/data/test/corrections.test.js +0 -27
  77. package/es/reducers/data/test/progression.test.d.ts +0 -1
  78. package/es/reducers/data/test/progression.test.js +0 -24
  79. package/es/reducers/data/test/rank.test.d.ts +0 -1
  80. package/es/reducers/data/test/rank.test.js +0 -59
  81. package/es/reducers/data/test/skills.test.d.ts +0 -1
  82. package/es/reducers/data/test/skills.test.js +0 -12
  83. package/es/reducers/data/test/slides.test.d.ts +0 -1
  84. package/es/reducers/data/test/slides.test.js +0 -21
  85. package/es/reducers/data/test/token.test.d.ts +0 -1
  86. package/es/reducers/data/test/token.test.js +0 -11
  87. package/es/reducers/ui/test/answers.test.d.ts +0 -1
  88. package/es/reducers/ui/test/answers.test.js +0 -31
  89. package/es/reducers/ui/test/current-slide-ref.test.d.ts +0 -1
  90. package/es/reducers/ui/test/current-slide-ref.test.js +0 -12
  91. package/es/reducers/ui/test/navigation.test.d.ts +0 -1
  92. package/es/reducers/ui/test/navigation.test.js +0 -15
  93. package/es/reducers/ui/test/slide.test.d.ts +0 -1
  94. package/es/reducers/ui/test/slide.test.js +0 -24
  95. package/es/services/test/fetch-correction.test.d.ts +0 -1
  96. package/es/services/test/fetch-correction.test.js +0 -39
  97. package/es/services/test/fetch-rank.test.d.ts +0 -1
  98. package/es/services/test/fetch-rank.test.js +0 -24
  99. package/es/services/test/fetch-skills.test.d.ts +0 -1
  100. package/es/services/test/fetch-skills.test.js +0 -29
  101. package/es/services/test/fetch-slide.test.d.ts +0 -1
  102. package/es/services/test/fetch-slide.test.js +0 -22
  103. package/es/services/test/post-answer.test.d.ts +0 -1
  104. package/es/services/test/post-answer.test.js +0 -88
  105. package/es/services/test/post-progression.test.d.ts +0 -1
  106. package/es/services/test/post-progression.test.js +0 -56
  107. package/es/views/skills/test/skills.test.d.ts +0 -1
  108. package/es/views/skills/test/skills.test.js +0 -98
  109. package/es/views/slides/test/index.test.d.ts +0 -1
  110. package/es/views/slides/test/index.test.js +0 -979
  111. package/es/views/slides/test/map-api-slide-to-ui.test.d.ts +0 -1
  112. package/es/views/slides/test/map-api-slide-to-ui.test.js +0 -36
  113. package/es/views/slides/test/slide.free-text.on-change.test.d.ts +0 -1
  114. package/es/views/slides/test/slide.free-text.on-change.test.js +0 -72
  115. package/es/views/slides/test/slide.qcm-drag.on-click.test.d.ts +0 -1
  116. package/es/views/slides/test/slide.qcm-drag.on-click.test.js +0 -72
  117. package/es/views/slides/test/slide.qcm-graphic.on-click.test.d.ts +0 -1
  118. package/es/views/slides/test/slide.qcm-graphic.on-click.test.js +0 -72
  119. package/es/views/slides/test/slide.qcm.on-click.test.d.ts +0 -1
  120. package/es/views/slides/test/slide.qcm.on-click.test.js +0 -74
  121. package/es/views/slides/test/slide.slider.on-change.test.d.ts +0 -1
  122. package/es/views/slides/test/slide.slider.on-change.test.js +0 -73
  123. package/es/views/slides/test/slide.slider.on-slider-change.test.d.ts +0 -1
  124. package/es/views/slides/test/slide.slider.on-slider-change.test.js +0 -63
  125. package/es/views/slides/test/slide.template.on-change.test.d.ts +0 -1
  126. package/es/views/slides/test/slide.template.on-change.test.js +0 -85
  127. package/lib/actions/api/test/fetch-correction.test.d.ts +0 -1
  128. package/lib/actions/api/test/fetch-correction.test.js +0 -151
  129. package/lib/actions/api/test/fetch-rank.test.d.ts +0 -1
  130. package/lib/actions/api/test/fetch-rank.test.js +0 -171
  131. package/lib/actions/api/test/fetch-skills.test.d.ts +0 -1
  132. package/lib/actions/api/test/fetch-skills.test.js +0 -120
  133. package/lib/actions/api/test/fetch-slide.test.d.ts +0 -1
  134. package/lib/actions/api/test/fetch-slide.test.js +0 -127
  135. package/lib/actions/api/test/post-answer.test.d.ts +0 -1
  136. package/lib/actions/api/test/post-answer.test.js +0 -254
  137. package/lib/actions/api/test/post-progression.test.d.ts +0 -1
  138. package/lib/actions/api/test/post-progression.test.js +0 -167
  139. package/lib/actions/data/test/token.test.d.ts +0 -1
  140. package/lib/actions/data/test/token.test.js +0 -72
  141. package/lib/actions/ui/test/answers.test.d.ts +0 -1
  142. package/lib/actions/ui/test/answers.test.js +0 -233
  143. package/lib/actions/ui/test/next-slide.test.d.ts +0 -1
  144. package/lib/actions/ui/test/next-slide.test.js +0 -64
  145. package/lib/actions/ui/test/slides.test.d.ts +0 -1
  146. package/lib/actions/ui/test/slides.test.js +0 -73
  147. package/lib/reducers/data/test/corrections.test.d.ts +0 -1
  148. package/lib/reducers/data/test/corrections.test.js +0 -28
  149. package/lib/reducers/data/test/progression.test.d.ts +0 -1
  150. package/lib/reducers/data/test/progression.test.js +0 -24
  151. package/lib/reducers/data/test/rank.test.d.ts +0 -1
  152. package/lib/reducers/data/test/rank.test.js +0 -59
  153. package/lib/reducers/data/test/skills.test.d.ts +0 -1
  154. package/lib/reducers/data/test/skills.test.js +0 -12
  155. package/lib/reducers/data/test/slides.test.d.ts +0 -1
  156. package/lib/reducers/data/test/slides.test.js +0 -22
  157. package/lib/reducers/data/test/token.test.d.ts +0 -1
  158. package/lib/reducers/data/test/token.test.js +0 -11
  159. package/lib/reducers/ui/test/answers.test.d.ts +0 -1
  160. package/lib/reducers/ui/test/answers.test.js +0 -31
  161. package/lib/reducers/ui/test/current-slide-ref.test.d.ts +0 -1
  162. package/lib/reducers/ui/test/current-slide-ref.test.js +0 -12
  163. package/lib/reducers/ui/test/navigation.test.d.ts +0 -1
  164. package/lib/reducers/ui/test/navigation.test.js +0 -15
  165. package/lib/reducers/ui/test/slide.test.d.ts +0 -1
  166. package/lib/reducers/ui/test/slide.test.js +0 -24
  167. package/lib/services/test/fetch-correction.test.d.ts +0 -1
  168. package/lib/services/test/fetch-correction.test.js +0 -95
  169. package/lib/services/test/fetch-rank.test.d.ts +0 -1
  170. package/lib/services/test/fetch-rank.test.js +0 -78
  171. package/lib/services/test/fetch-skills.test.d.ts +0 -1
  172. package/lib/services/test/fetch-skills.test.js +0 -83
  173. package/lib/services/test/fetch-slide.test.d.ts +0 -1
  174. package/lib/services/test/fetch-slide.test.js +0 -76
  175. package/lib/services/test/post-answer.test.d.ts +0 -1
  176. package/lib/services/test/post-answer.test.js +0 -142
  177. package/lib/services/test/post-progression.test.d.ts +0 -1
  178. package/lib/services/test/post-progression.test.js +0 -110
  179. package/lib/views/skills/test/skills.test.d.ts +0 -1
  180. package/lib/views/skills/test/skills.test.js +0 -98
  181. package/lib/views/slides/test/index.test.d.ts +0 -1
  182. package/lib/views/slides/test/index.test.js +0 -990
  183. package/lib/views/slides/test/map-api-slide-to-ui.test.d.ts +0 -1
  184. package/lib/views/slides/test/map-api-slide-to-ui.test.js +0 -47
  185. package/lib/views/slides/test/slide.free-text.on-change.test.d.ts +0 -1
  186. package/lib/views/slides/test/slide.free-text.on-change.test.js +0 -74
  187. package/lib/views/slides/test/slide.qcm-drag.on-click.test.d.ts +0 -1
  188. package/lib/views/slides/test/slide.qcm-drag.on-click.test.js +0 -74
  189. package/lib/views/slides/test/slide.qcm-graphic.on-click.test.d.ts +0 -1
  190. package/lib/views/slides/test/slide.qcm-graphic.on-click.test.js +0 -74
  191. package/lib/views/slides/test/slide.qcm.on-click.test.d.ts +0 -1
  192. package/lib/views/slides/test/slide.qcm.on-click.test.js +0 -76
  193. package/lib/views/slides/test/slide.slider.on-change.test.d.ts +0 -1
  194. package/lib/views/slides/test/slide.slider.on-change.test.js +0 -75
  195. package/lib/views/slides/test/slide.slider.on-slider-change.test.d.ts +0 -1
  196. package/lib/views/slides/test/slide.slider.on-slider-change.test.js +0 -65
  197. package/lib/views/slides/test/slide.template.on-change.test.d.ts +0 -1
  198. package/lib/views/slides/test/slide.template.on-change.test.js +0 -88
@@ -1,233 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (_) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- import test from 'ava';
49
- import pipe from 'lodash/fp/pipe';
50
- import set from 'lodash/fp/set';
51
- import omit from 'lodash/fp/omit';
52
- import { createTestStore } from '../../test/create-test-store';
53
- import { services } from '../../../test/util/services.mock';
54
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
55
- import { qcmDragSlide } from '../../../views/slides/test/fixtures/qcm-drag';
56
- import { qcmSlide } from '../../../views/slides/test/fixtures/qcm';
57
- import { qcmGraphicSlide } from '../../../views/slides/test/fixtures/qcm-graphic';
58
- import { sliderSlide } from '../../../views/slides/test/fixtures/slider';
59
- import { templateSlide } from '../../../views/slides/test/fixtures/template';
60
- import { editAnswer, ANSWER_EDIT } from '../answers';
61
- var initialState = {
62
- data: {
63
- progression: {
64
- _id: '62b1d1087aa12f00253f40ee',
65
- content: {
66
- ref: '_skill-ref',
67
- type: 'skill'
68
- },
69
- engine: {
70
- ref: 'review'
71
- },
72
- state: {
73
- allAnswers: [],
74
- isCorrect: true,
75
- nextContent: {
76
- ref: '',
77
- type: 'slide'
78
- },
79
- pendingSlides: [],
80
- slides: [],
81
- step: {
82
- current: 1
83
- },
84
- stars: 0
85
- }
86
- },
87
- slides: {},
88
- skills: [],
89
- token: '1234',
90
- corrections: {},
91
- rank: {}
92
- },
93
- ui: {
94
- currentSlideRef: '',
95
- navigation: [],
96
- answers: [],
97
- slide: {
98
- validateButton: false
99
- }
100
- }
101
- };
102
- var buildInitialState = function (state, question) {
103
- return pipe(set(['data', 'progression', 'state', 'nextContent', 'ref'], question._id), set(['data', 'slides', question._id], question), set(['ui', 'currentSlideRef'], question._id))(state);
104
- };
105
- test('editAnswer should throw an Error if the slide is not found', function (t) { return __awaiter(void 0, void 0, void 0, function () {
106
- var state, expectedActions, dispatch;
107
- return __generator(this, function (_a) {
108
- switch (_a.label) {
109
- case 0:
110
- state = buildInitialState(initialState, freeTextSlide);
111
- expectedActions = [{ type: undefined, payload: [] }];
112
- dispatch = createTestStore(t, omit(['data', 'slides'], state), services, expectedActions).dispatch;
113
- return [4 /*yield*/, t.throws(function () { return dispatch(editAnswer(['Some kind of answer'])); }, undefined, 'No slide was found or questionType was not found')];
114
- case 1:
115
- _a.sent();
116
- return [2 /*return*/];
117
- }
118
- });
119
- }); });
120
- test('editAnswer should throw an Error for unsupported questions', function (t) { return __awaiter(void 0, void 0, void 0, function () {
121
- var state, dispatch;
122
- return __generator(this, function (_a) {
123
- switch (_a.label) {
124
- case 0:
125
- state = buildInitialState(initialState, __assign(__assign({}, freeTextSlide), { question: __assign(__assign({}, freeTextSlide.question), { type: 'unsupportedType' }) }));
126
- dispatch = createTestStore(t, state, services, []).dispatch;
127
- return [4 /*yield*/, t.throws(function () { return dispatch(editAnswer(['Some kind of answer'])); }, undefined, 'Question type unsupportedType is not supported')];
128
- case 1:
129
- _a.sent();
130
- return [2 /*return*/];
131
- }
132
- });
133
- }); });
134
- test('should dispatch EDIT_BASIC action when editAnswer is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
135
- var state, expectedActions, dispatch;
136
- return __generator(this, function (_a) {
137
- switch (_a.label) {
138
- case 0:
139
- state = buildInitialState(initialState, freeTextSlide);
140
- expectedActions = [{ type: ANSWER_EDIT.basic, payload: ['My Answer'] }];
141
- dispatch = createTestStore(t, state, services, expectedActions).dispatch;
142
- return [4 /*yield*/, dispatch(editAnswer(['My Answer']))];
143
- case 1:
144
- _a.sent();
145
- return [2 /*return*/];
146
- }
147
- });
148
- }); });
149
- test('should dispatch EDIT_QCM action when editAnswer is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
150
- var state, expectedActions, dispatch;
151
- return __generator(this, function (_a) {
152
- switch (_a.label) {
153
- case 0:
154
- state = buildInitialState(initialState, qcmSlide);
155
- state = set(['ui', 'answers'], ['My First Answer', 'My Second Answer'], state);
156
- expectedActions = [{ type: ANSWER_EDIT.qcm, payload: ['My First Answer'] }];
157
- dispatch = createTestStore(t, state, services, expectedActions).dispatch;
158
- return [4 /*yield*/, dispatch(editAnswer(['My Second Answer']))];
159
- case 1:
160
- _a.sent();
161
- return [2 /*return*/];
162
- }
163
- });
164
- }); });
165
- test('should dispatch EDIT_QCM_GRAPHIC action when editAnswer is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
166
- var state, expectedActions, dispatch;
167
- return __generator(this, function (_a) {
168
- switch (_a.label) {
169
- case 0:
170
- state = buildInitialState(initialState, qcmGraphicSlide);
171
- state = set(['ui', 'answers'], ['My First Answer', 'My Second Answer', 'My Third Answer'], state);
172
- expectedActions = [
173
- { type: ANSWER_EDIT.qcmGraphic, payload: ['My First Answer', 'My Third Answer'] }
174
- ];
175
- dispatch = createTestStore(t, state, services, expectedActions).dispatch;
176
- return [4 /*yield*/, dispatch(editAnswer(['My Second Answer']))];
177
- case 1:
178
- _a.sent();
179
- return [2 /*return*/];
180
- }
181
- });
182
- }); });
183
- test('should dispatch EDIT_QCM_DRAG action when editAnswer is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
184
- var state, expectedActions, dispatch;
185
- return __generator(this, function (_a) {
186
- switch (_a.label) {
187
- case 0:
188
- state = buildInitialState(initialState, qcmDragSlide);
189
- state = set(['ui', 'answers'], ['My First Answer', 'My Second Answer'], state);
190
- expectedActions = [
191
- { type: ANSWER_EDIT.qcmDrag, payload: ['My First Answer', 'My Second Answer', 'My Third Answer'] }
192
- ];
193
- dispatch = createTestStore(t, state, services, expectedActions).dispatch;
194
- return [4 /*yield*/, dispatch(editAnswer(['My Third Answer']))];
195
- case 1:
196
- _a.sent();
197
- return [2 /*return*/];
198
- }
199
- });
200
- }); });
201
- test('should dispatch EDIT_SLIDER action when editAnswer is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
202
- var state, expectedActions, dispatch;
203
- return __generator(this, function (_a) {
204
- switch (_a.label) {
205
- case 0:
206
- state = buildInitialState(initialState, sliderSlide);
207
- expectedActions = [{ type: ANSWER_EDIT.slider, payload: ['5'] }];
208
- dispatch = createTestStore(t, state, services, expectedActions).dispatch;
209
- return [4 /*yield*/, dispatch(editAnswer(['5']))];
210
- case 1:
211
- _a.sent();
212
- return [2 /*return*/];
213
- }
214
- });
215
- }); });
216
- test('should dispatch EDIT_TEMPLATE action when editAnswer is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
217
- var state, expectedActions, dispatch;
218
- return __generator(this, function (_a) {
219
- switch (_a.label) {
220
- case 0:
221
- state = buildInitialState(initialState, templateSlide);
222
- state = set(['ui', 'answers'], ['Catalogue', '', 'étoiles'], state);
223
- expectedActions = [
224
- { type: ANSWER_EDIT.template, payload: ['Catalogue', 'My Answer', 'étoiles'] }
225
- ];
226
- dispatch = createTestStore(t, state, services, expectedActions).dispatch;
227
- return [4 /*yield*/, dispatch(editAnswer(['Catalogue', 'My Answer', 'étoiles']))];
228
- case 1:
229
- _a.sent();
230
- return [2 /*return*/];
231
- }
232
- });
233
- }); });
@@ -1 +0,0 @@
1
- export {};
@@ -1,64 +0,0 @@
1
- var _a, _b;
2
- import test from 'ava';
3
- import pipe from 'lodash/fp/pipe';
4
- import set from 'lodash/fp/set';
5
- import { nextSlide, NEXT_SLIDE } from '../next-slide';
6
- import { createTestStore } from '../../test/create-test-store';
7
- import { getChoicesCorrection, postAnswerResponses, services } from '../../../test/util/services.mock';
8
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
9
- import { qcmGraphicSlide } from '../../../views/slides/test/fixtures/qcm-graphic';
10
- var progression = postAnswerResponses[freeTextSlide.universalRef];
11
- var skillRef = '_skill-ref';
12
- var answer = ['Vous isoler dans un lieu calme'];
13
- var state = {
14
- data: {
15
- progression: progression,
16
- slides: (_a = {},
17
- _a[freeTextSlide.universalRef] = freeTextSlide,
18
- _a[qcmGraphicSlide.universalRef] = qcmGraphicSlide,
19
- _a),
20
- skills: [{ skillRef: skillRef, custom: false, name: skillRef, slidesToReview: 5 }],
21
- token: '1234',
22
- corrections: (_b = {}, _b[freeTextSlide.universalRef] = getChoicesCorrection(freeTextSlide.universalRef), _b),
23
- rank: { start: 93 }
24
- },
25
- ui: {
26
- currentSlideRef: freeTextSlide._id,
27
- navigation: ['loader', 'slides'],
28
- answers: answer,
29
- slide: {
30
- validateButton: false,
31
- animateCorrectionPopin: true,
32
- showCorrectionPopin: true
33
- }
34
- }
35
- };
36
- test('should dispatch NEXT_SLIDE action when nextSlide is called and the progression state is correct', function (t) {
37
- var expectedActions = [
38
- {
39
- type: NEXT_SLIDE,
40
- payload: {
41
- currentSlideRef: freeTextSlide.universalRef,
42
- nextSlideRef: qcmGraphicSlide.universalRef,
43
- animationType: 'unstack'
44
- }
45
- }
46
- ];
47
- var dispatch = createTestStore(t, state, services, expectedActions).dispatch;
48
- dispatch(nextSlide);
49
- });
50
- test('should dispatch NEXT_SLIDE action when nextSlide is called and the progression state is not correct', function (t) {
51
- var stateWithWrongAnswer = pipe(set(['data', 'progression', 'state', 'isCorrect'], false), set(['data', 'progression', 'state', 'allAnswers', 0, 'isCorrect'], false))(state);
52
- var expectedActions = [
53
- {
54
- type: NEXT_SLIDE,
55
- payload: {
56
- currentSlideRef: freeTextSlide.universalRef,
57
- nextSlideRef: qcmGraphicSlide.universalRef,
58
- animationType: 'restack'
59
- }
60
- }
61
- ];
62
- var dispatch = createTestStore(t, stateWithWrongAnswer, services, expectedActions).dispatch;
63
- dispatch(nextSlide);
64
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,73 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (_) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- import test from 'ava';
38
- import { createTestStore } from '../../test/create-test-store';
39
- import { services } from '../../../test/util/services.mock';
40
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
41
- import { setCurrentSlide, SET_CURRENT_SLIDE } from '../slides';
42
- var initialState = {
43
- data: {
44
- progression: null,
45
- slides: {},
46
- skills: [],
47
- token: '1234',
48
- corrections: {},
49
- rank: {}
50
- },
51
- ui: {
52
- currentSlideRef: '',
53
- navigation: [],
54
- answers: [],
55
- slide: {
56
- validateButton: false
57
- }
58
- }
59
- };
60
- test('should dispatch SET_CURRENT_SLIDE action when setCurrentSlide is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
61
- var expectedActions, dispatch;
62
- return __generator(this, function (_a) {
63
- switch (_a.label) {
64
- case 0:
65
- expectedActions = [{ type: SET_CURRENT_SLIDE, payload: freeTextSlide }];
66
- dispatch = createTestStore(t, initialState, services, expectedActions).dispatch;
67
- return [4 /*yield*/, dispatch(setCurrentSlide(freeTextSlide))];
68
- case 1:
69
- _a.sent();
70
- return [2 /*return*/];
71
- }
72
- });
73
- }); });
@@ -1 +0,0 @@
1
- export {};
@@ -1,28 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../corrections';
3
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
4
- import { CORRECTION_FETCH_REQUEST, CORRECTION_FETCH_SUCCESS } from '../../../actions/api/fetch-correction';
5
- import { getChoicesCorrection } from '../../../test/util/services.mock';
6
- test('should have an initial empty record value', function (t) {
7
- var state = reducer(undefined, {});
8
- t.deepEqual(state, {});
9
- });
10
- test("should set the key (slide's id) of the correction to null when a CORRECTION_FETCH_REQUEST is received", function (t) {
11
- var _a;
12
- var slideRef = freeTextSlide._id;
13
- var state = reducer({}, { type: CORRECTION_FETCH_REQUEST, meta: { slideRef: freeTextSlide._id } });
14
- t.deepEqual(state, (_a = {},
15
- _a[slideRef] = null,
16
- _a));
17
- });
18
- test('should set the value of CORRECTION_FETCH_SUCCESS', function (t) {
19
- var expectedCorrection = getChoicesCorrection(freeTextSlide._id);
20
- var state = reducer({}, {
21
- type: CORRECTION_FETCH_SUCCESS,
22
- payload: expectedCorrection,
23
- meta: { slideRef: freeTextSlide._id }
24
- });
25
- t.deepEqual(state, {
26
- sli_VJYjJnJhg: expectedCorrection
27
- });
28
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,24 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../progression';
3
- import { POST_PROGRESSION_SUCCESS } from '../../../actions/api/post-progression';
4
- import { POST_ANSWER_SUCCESS } from '../../../actions/api/post-answer';
5
- import { postAnswerResponses, postProgressionResponse } from '../../../test/util/services.mock';
6
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
7
- test('should have initial value', function (t) {
8
- var state = reducer(undefined, {});
9
- t.is(state, null);
10
- });
11
- test('should set the value of POST_PROGRESSION_SUCCESS action', function (t) {
12
- var state = reducer(null, {
13
- type: POST_PROGRESSION_SUCCESS,
14
- payload: postProgressionResponse
15
- });
16
- t.deepEqual(state, postProgressionResponse);
17
- });
18
- test('should set the value of POST_ANSWER_SUCCESS action', function (t) {
19
- var state = reducer(null, {
20
- type: POST_ANSWER_SUCCESS,
21
- payload: postAnswerResponses[freeTextSlide.universalRef]
22
- });
23
- t.deepEqual(state, postAnswerResponses[freeTextSlide.universalRef]);
24
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,59 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../rank';
3
- import { RANK_FETCH_START_REQUEST, RANK_FETCH_START_SUCCESS, RANK_FETCH_START_FAILURE, RANK_FETCH_END_REQUEST, RANK_FETCH_END_SUCCESS, RANK_FETCH_END_FAILURE } from '../../../actions/api/fetch-rank';
4
- test('should have initial value', function (t) {
5
- var state = reducer(undefined, {});
6
- t.deepEqual(state, {});
7
- });
8
- test("should set the start value to null if the value doesn't exist of FETCH_START_REQUEST action", function (t) {
9
- var state = reducer({}, { type: RANK_FETCH_START_REQUEST });
10
- t.deepEqual(state, {
11
- start: null
12
- });
13
- });
14
- test('should do nothing if a start value already exists of FETCH_START_REQUEST action', function (t) {
15
- var state = reducer({ start: 93 }, { type: RANK_FETCH_START_REQUEST });
16
- t.deepEqual(state, {
17
- start: 93
18
- });
19
- });
20
- test('should set the start value of FETCH_START_SUCCESS action', function (t) {
21
- var state = reducer({}, { type: RANK_FETCH_START_SUCCESS, payload: { rank: 93 } });
22
- t.deepEqual(state, {
23
- start: 93
24
- });
25
- });
26
- test('should unset the start value if the value is null of FETCH_START_FAILURE action', function (t) {
27
- var state = reducer({ start: null }, { type: RANK_FETCH_START_FAILURE });
28
- t.deepEqual(state, {});
29
- });
30
- test('should do nothing if the start value already exists of FETCH_START_FAILURE action', function (t) {
31
- var state = reducer({ start: 93 }, { type: RANK_FETCH_START_FAILURE });
32
- t.deepEqual(state, { start: 93 });
33
- });
34
- test("should set the end value to null if the value doesn't exist of FETCH_END_REQUEST action", function (t) {
35
- var state = reducer({}, { type: RANK_FETCH_END_REQUEST });
36
- t.deepEqual(state, {
37
- end: null
38
- });
39
- });
40
- test('should do nothing if an end value already exists of FETCH_END_REQUEST action', function (t) {
41
- var state = reducer({ end: 94 }, { type: RANK_FETCH_END_REQUEST });
42
- t.deepEqual(state, {
43
- end: 94
44
- });
45
- });
46
- test('should set the end value of FETCH_END_SUCCESS action', function (t) {
47
- var state = reducer({}, { type: RANK_FETCH_END_SUCCESS, payload: { rank: 94 } });
48
- t.deepEqual(state, {
49
- end: 94
50
- });
51
- });
52
- test('should unset the end value if the value is null of FETCH_END_FAILURE action', function (t) {
53
- var state = reducer({ end: null }, { type: RANK_FETCH_END_FAILURE });
54
- t.deepEqual(state, {});
55
- });
56
- test('should do nothing if the end value already exists of FETCH_END_FAILURE action', function (t) {
57
- var state = reducer({ end: 94 }, { type: RANK_FETCH_END_FAILURE });
58
- t.deepEqual(state, { end: 94 });
59
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../skills';
3
- import { SKILLS_FETCH_SUCCESS } from '../../../actions/api/fetch-skills';
4
- test('should have initial value', function (t) {
5
- var state = reducer(undefined, {});
6
- t.deepEqual(state, []);
7
- });
8
- test('should set the value of SKILLS_FETCH_SUCCESS action', function (t) {
9
- var skills = [{ skillRef: 'skill', name: 'skill name', slidesToReview: 5, custom: false }];
10
- var state = reducer([], { type: SKILLS_FETCH_SUCCESS, payload: skills });
11
- t.deepEqual(state, skills);
12
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,22 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../slides';
3
- import { SLIDE_FETCH_REQUEST, SLIDE_FETCH_SUCCESS } from '../../../actions/api/fetch-slide';
4
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
5
- test('should have initial value', function (t) {
6
- var state = reducer(undefined, {});
7
- t.deepEqual(state, {});
8
- });
9
- test('should set the value of SLIDE_FETCH_REQUEST action', function (t) {
10
- var _a;
11
- var slideRef = 'sli_VJYjJnJhg';
12
- var state = reducer({}, { type: SLIDE_FETCH_REQUEST, meta: { slideRef: slideRef } });
13
- t.deepEqual(state, (_a = {},
14
- _a[slideRef] = null,
15
- _a));
16
- });
17
- test('should set the value of SLIDE_FETCH_SUCCESS action', function (t) {
18
- var state = reducer({}, { type: SLIDE_FETCH_SUCCESS, payload: freeTextSlide, meta: { slideRef: 'sli_VJYjJnJhg' } });
19
- t.deepEqual(state, {
20
- sli_VJYjJnJhg: freeTextSlide
21
- });
22
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,11 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../token';
3
- import { STORE_TOKEN } from '../../../actions/data/token';
4
- test('should have initial value', function (t) {
5
- var state = reducer(undefined, {});
6
- t.is(state, '');
7
- });
8
- test('should set the value of STORE_TOKEN action', function (t) {
9
- var state = reducer('', { type: STORE_TOKEN, payload: 'token' });
10
- t.is(state, 'token');
11
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,31 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../answers';
3
- import { ANSWER_EDIT } from '../../../actions/ui/answers';
4
- test('should have initial value', function (t) {
5
- var state = reducer(undefined, {});
6
- t.deepEqual(state, []);
7
- });
8
- test('should set the value of EDIT_BASIC action', function (t) {
9
- var state = reducer([], { type: ANSWER_EDIT.basic, payload: ['value'] });
10
- t.deepEqual(state, ['value']);
11
- });
12
- test('should set the value of EDIT_QCM action', function (t) {
13
- var state = reducer([], { type: ANSWER_EDIT.qcm, payload: ['value1', 'value2'] });
14
- t.deepEqual(state, ['value1', 'value2']);
15
- });
16
- test('should set the value of EDIT_QCM_GRAPHIC action', function (t) {
17
- var state = reducer([], { type: ANSWER_EDIT.qcmGraphic, payload: ['True', 'False'] });
18
- t.deepEqual(state, ['True', 'False']);
19
- });
20
- test('should set the value of EDIT_QCM_DRAG action', function (t) {
21
- var state = reducer([], { type: ANSWER_EDIT.qcmDrag, payload: ['value1', 'value2'] });
22
- t.deepEqual(state, ['value1', 'value2']);
23
- });
24
- test('should set the value of EDIT_SLIDER action', function (t) {
25
- var state = reducer([], { type: ANSWER_EDIT.slider, payload: ['5'] });
26
- t.deepEqual(state, ['5']);
27
- });
28
- test('should set the value of EDIT_TEMPLATE action', function (t) {
29
- var state = reducer([], { type: ANSWER_EDIT.template, payload: ['value1', 'value2'] });
30
- t.deepEqual(state, ['value1', 'value2']);
31
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../current-slide-ref';
3
- import { SET_CURRENT_SLIDE } from '../../../actions/ui/slides';
4
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
5
- test('should have initial value', function (t) {
6
- var state = reducer(undefined, {});
7
- t.is(state, '');
8
- });
9
- test('should set the value of SET_CURRENT_SLIDE action', function (t) {
10
- var state = reducer('', { type: SET_CURRENT_SLIDE, payload: freeTextSlide });
11
- t.is(state, 'sli_VJYjJnJhg');
12
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,15 +0,0 @@
1
- import test from 'ava';
2
- import reducer from '../navigation';
3
- import { navigateBack, navigateTo } from '../../../actions/ui/navigation';
4
- test('should have initial value', function (t) {
5
- var state = reducer(undefined, {});
6
- t.deepEqual(state, []);
7
- });
8
- test('should set the value of NAVIGATE_TO and NAVIGATE_BACK action', function (t) {
9
- var state = reducer([], navigateTo('loader'));
10
- t.deepEqual(state, ['loader']);
11
- var updatedState = reducer(state, navigateTo('skills'));
12
- t.deepEqual(updatedState, ['loader', 'skills']);
13
- var _updatedState = reducer(updatedState, navigateBack());
14
- t.deepEqual(_updatedState, ['loader']);
15
- });
@@ -1 +0,0 @@
1
- export {};