@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,254 +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
- var _a;
49
- import test from 'ava';
50
- import { createTestStore } from '../../test/create-test-store';
51
- import { getChoicesCorrection, postAnswerResponses, services } from '../../../test/util/services.mock';
52
- import { postAnswer, POST_ANSWER_FAILURE, POST_ANSWER_REQUEST, POST_ANSWER_SUCCESS } from '../post-answer';
53
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
54
- import { CORRECTION_FETCH_REQUEST, CORRECTION_FETCH_SUCCESS } from '../fetch-correction';
55
- import { SLIDE_FETCH_REQUEST, SLIDE_FETCH_SUCCESS } from '../fetch-slide';
56
- import { qcmSlide } from '../../../views/slides/test/fixtures/qcm';
57
- import { qcmGraphicSlide } from '../../../views/slides/test/fixtures/qcm-graphic';
58
- import { templateSlide } from '../../../views/slides/test/fixtures/template';
59
- import { sliderSlide } from '../../../views/slides/test/fixtures/slider';
60
- import { RANK_FETCH_START_REQUEST, RANK_FETCH_START_SUCCESS, RANK_FETCH_END_REQUEST, RANK_FETCH_END_SUCCESS } from '../fetch-rank';
61
- var progressionId = '123456789123';
62
- var skillRef = '_skill-ref';
63
- var answer = ['Lister vos tâches pour vous libérer l’esprit', 'Vous isoler dans un lieu calme'];
64
- var initialState = {
65
- data: {
66
- progression: {
67
- _id: progressionId,
68
- content: { type: 'skill', ref: skillRef },
69
- engine: {
70
- ref: 'review'
71
- },
72
- state: {
73
- allAnswers: [],
74
- isCorrect: true,
75
- nextContent: {
76
- ref: freeTextSlide._id,
77
- type: 'slide'
78
- },
79
- pendingSlides: [],
80
- slides: [],
81
- step: {
82
- current: 1
83
- },
84
- stars: 0
85
- }
86
- },
87
- slides: (_a = {},
88
- _a[freeTextSlide._id] = freeTextSlide,
89
- _a),
90
- skills: [{ skillRef: skillRef, custom: false, name: skillRef, slidesToReview: 5 }],
91
- token: '1234',
92
- corrections: {},
93
- rank: {}
94
- },
95
- ui: {
96
- currentSlideRef: freeTextSlide._id,
97
- navigation: ['skills', 'slides'],
98
- answers: answer,
99
- slide: {
100
- validateButton: false
101
- }
102
- }
103
- };
104
- test('should dispatch post-answer, fetch-slide and fetch-correction and fetch-start-rank actions when the answer is submitted and when the slide ref is not "successExitNode"', function (t) { return __awaiter(void 0, void 0, void 0, function () {
105
- var expectedActions, _a, dispatch, getState, state;
106
- return __generator(this, function (_b) {
107
- switch (_b.label) {
108
- case 0:
109
- t.plan(10);
110
- expectedActions = [
111
- { type: POST_ANSWER_REQUEST },
112
- {
113
- type: POST_ANSWER_SUCCESS,
114
- payload: postAnswerResponses[freeTextSlide._id]
115
- },
116
- {
117
- type: SLIDE_FETCH_REQUEST,
118
- meta: {
119
- slideRef: qcmGraphicSlide._id
120
- }
121
- },
122
- {
123
- type: SLIDE_FETCH_SUCCESS,
124
- meta: {
125
- slideRef: qcmGraphicSlide._id
126
- },
127
- payload: qcmGraphicSlide
128
- },
129
- { type: CORRECTION_FETCH_REQUEST, meta: { slideRef: freeTextSlide._id } },
130
- {
131
- type: CORRECTION_FETCH_SUCCESS,
132
- meta: { slideRef: freeTextSlide._id },
133
- payload: getChoicesCorrection(freeTextSlide._id)
134
- },
135
- {
136
- type: RANK_FETCH_START_REQUEST
137
- },
138
- {
139
- type: RANK_FETCH_START_SUCCESS,
140
- payload: { rank: 93 }
141
- }
142
- ];
143
- _a = createTestStore(t, initialState, services, expectedActions), dispatch = _a.dispatch, getState = _a.getState;
144
- return [4 /*yield*/, dispatch(postAnswer)];
145
- case 1:
146
- _b.sent();
147
- state = getState();
148
- t.false(state.ui.slide.validateButton);
149
- t.true(state.ui.slide.animateCorrectionPopin);
150
- return [2 /*return*/];
151
- }
152
- });
153
- }); });
154
- test('should dispatch post-answer, fetch-correction and fetch-end-rank actions when the answer is submitted and when the slide ref is "successExitNode"', function (t) { return __awaiter(void 0, void 0, void 0, function () {
155
- var stateBeforeExitNode, expectedActions, _a, dispatch, getState, state;
156
- var _b;
157
- return __generator(this, function (_c) {
158
- switch (_c.label) {
159
- case 0:
160
- t.plan(8);
161
- stateBeforeExitNode = {
162
- data: {
163
- progression: postAnswerResponses[sliderSlide.universalRef],
164
- slides: (_b = {},
165
- _b[freeTextSlide._id] = freeTextSlide,
166
- _b[qcmGraphicSlide._id] = qcmGraphicSlide,
167
- _b[qcmSlide._id] = qcmSlide,
168
- _b[sliderSlide._id] = sliderSlide,
169
- _b),
170
- skills: [{ skillRef: skillRef, custom: false, name: skillRef, slidesToReview: 5 }],
171
- token: '1234',
172
- corrections: {},
173
- rank: {}
174
- },
175
- ui: {
176
- currentSlideRef: templateSlide._id,
177
- navigation: ['skills', 'slides'],
178
- answers: ['Leaderboard', 'utilisateurs', 'étoiles'],
179
- slide: {
180
- validateButton: false
181
- }
182
- }
183
- };
184
- expectedActions = [
185
- { type: POST_ANSWER_REQUEST },
186
- {
187
- type: POST_ANSWER_SUCCESS,
188
- payload: postAnswerResponses[templateSlide._id]
189
- },
190
- { type: CORRECTION_FETCH_REQUEST, meta: { slideRef: templateSlide._id } },
191
- {
192
- type: CORRECTION_FETCH_SUCCESS,
193
- meta: { slideRef: templateSlide._id },
194
- payload: getChoicesCorrection(templateSlide._id)
195
- },
196
- {
197
- type: RANK_FETCH_END_REQUEST
198
- },
199
- {
200
- type: RANK_FETCH_END_SUCCESS,
201
- payload: { rank: 93 }
202
- }
203
- ];
204
- _a = createTestStore(t, stateBeforeExitNode, services, expectedActions), dispatch = _a.dispatch, getState = _a.getState;
205
- return [4 /*yield*/, dispatch(postAnswer)];
206
- case 1:
207
- _c.sent();
208
- state = getState();
209
- t.false(state.ui.slide.validateButton);
210
- t.true(state.ui.slide.animateCorrectionPopin);
211
- return [2 /*return*/];
212
- }
213
- });
214
- }); });
215
- test('should dispatch POST_ANSWER_REQUEST, then POST_ANSWER_FAILURE on error', function (t) { return __awaiter(void 0, void 0, void 0, function () {
216
- var expectedActions, dispatch;
217
- return __generator(this, function (_a) {
218
- switch (_a.label) {
219
- case 0:
220
- t.plan(3);
221
- expectedActions = [
222
- { type: POST_ANSWER_REQUEST },
223
- {
224
- type: POST_ANSWER_FAILURE,
225
- payload: new Error('unexpected'),
226
- error: true
227
- }
228
- ];
229
- dispatch = createTestStore(t, initialState, __assign(__assign({}, services), { postAnswer: function () {
230
- t.pass();
231
- return Promise.reject(new Error('unexpected'));
232
- } }), expectedActions).dispatch;
233
- return [4 /*yield*/, dispatch(postAnswer)];
234
- case 1:
235
- _a.sent();
236
- return [2 /*return*/];
237
- }
238
- });
239
- }); });
240
- test('should not dispatch any action && throw an error if progression does not exist', function (t) { return __awaiter(void 0, void 0, void 0, function () {
241
- var expectedActions, dispatch;
242
- return __generator(this, function (_a) {
243
- switch (_a.label) {
244
- case 0:
245
- t.plan(1);
246
- expectedActions = [];
247
- dispatch = createTestStore(t, __assign(__assign({}, initialState), { data: __assign(__assign({}, initialState.data), { progression: null }) }), services, expectedActions).dispatch;
248
- return [4 /*yield*/, t.throwsAsync(function () { return dispatch(postAnswer); }, undefined, 'Cannot answer a question of an inexistent progression')];
249
- case 1:
250
- _a.sent();
251
- return [2 /*return*/];
252
- }
253
- });
254
- }); });
@@ -1 +0,0 @@
1
- export {};
@@ -1,167 +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 { postProgression, POST_PROGRESSION_REQUEST, POST_PROGRESSION_SUCCESS, POST_PROGRESSION_FAILURE } from '../post-progression';
50
- import { freeTextSlide } from '../../../views/slides/test/fixtures/free-text';
51
- import { services as mockedServices } from '../../../test/util/services.mock';
52
- import { SLIDE_FETCH_REQUEST, SLIDE_FETCH_SUCCESS } from '../fetch-slide';
53
- import { SET_CURRENT_SLIDE } from '../../ui/slides';
54
- import { createTestStore } from '../../test/create-test-store';
55
- var initialState = {
56
- data: {
57
- progression: null,
58
- slides: {},
59
- skills: [],
60
- token: '1234',
61
- corrections: {},
62
- rank: {}
63
- },
64
- ui: {
65
- currentSlideRef: '',
66
- navigation: [],
67
- answers: [],
68
- slide: {
69
- validateButton: false
70
- }
71
- }
72
- };
73
- test('should dispatch POST_PROGRESSION_SUCCESS and SLIDE_FETCH_REQUEST actions when postProgression returns a progression', function (t) { return __awaiter(void 0, void 0, void 0, function () {
74
- var progression, services, expectedActions, dispatch;
75
- return __generator(this, function (_a) {
76
- switch (_a.label) {
77
- case 0:
78
- t.plan(9);
79
- progression = {
80
- _id: '62b1d1087aa12f00253f40ee',
81
- content: {
82
- ref: '_skill-ref',
83
- type: 'skill'
84
- },
85
- engine: {
86
- ref: 'review'
87
- },
88
- state: {
89
- allAnswers: [],
90
- isCorrect: true,
91
- nextContent: {
92
- ref: 'sli_VJYjJnJhg',
93
- type: 'slide'
94
- },
95
- pendingSlides: [],
96
- slides: [],
97
- step: {
98
- current: 1
99
- },
100
- stars: 0
101
- }
102
- };
103
- services = __assign(__assign({}, mockedServices), { postProgression: function (skillRef, token) {
104
- t.is(token, '1234');
105
- t.is(skillRef, 'skill_12345');
106
- return Promise.resolve(progression);
107
- }, fetchSlide: function (slideRef, token) {
108
- t.is(token, '1234');
109
- t.is(slideRef, 'sli_VJYjJnJhg');
110
- return Promise.resolve(freeTextSlide);
111
- } });
112
- expectedActions = [
113
- { type: POST_PROGRESSION_REQUEST },
114
- {
115
- type: POST_PROGRESSION_SUCCESS,
116
- payload: progression
117
- },
118
- {
119
- type: SLIDE_FETCH_REQUEST,
120
- meta: {
121
- slideRef: 'sli_VJYjJnJhg'
122
- }
123
- },
124
- {
125
- type: SLIDE_FETCH_SUCCESS,
126
- meta: {
127
- slideRef: 'sli_VJYjJnJhg'
128
- },
129
- payload: freeTextSlide
130
- },
131
- { type: SET_CURRENT_SLIDE, payload: freeTextSlide }
132
- ];
133
- dispatch = createTestStore(t, initialState, services, expectedActions).dispatch;
134
- return [4 /*yield*/, dispatch(postProgression('skill_12345'))];
135
- case 1:
136
- _a.sent();
137
- return [2 /*return*/];
138
- }
139
- });
140
- }); });
141
- test('should dispatch POST_PROGRESSION_FAILURE action when postProgression fails', function (t) { return __awaiter(void 0, void 0, void 0, function () {
142
- var services, expectedActions, dispatch;
143
- return __generator(this, function (_a) {
144
- switch (_a.label) {
145
- case 0:
146
- t.plan(4);
147
- services = __assign(__assign({}, mockedServices), { postProgression: function (skillRef, token) {
148
- t.is(token, '1234');
149
- t.is(skillRef, 'skill_12345');
150
- return Promise.reject(new Error('error'));
151
- } });
152
- expectedActions = [
153
- { type: POST_PROGRESSION_REQUEST },
154
- {
155
- type: POST_PROGRESSION_FAILURE,
156
- payload: new Error('error'),
157
- error: true
158
- }
159
- ];
160
- dispatch = createTestStore(t, initialState, services, expectedActions).dispatch;
161
- return [4 /*yield*/, dispatch(postProgression('skill_12345'))];
162
- case 1:
163
- _a.sent();
164
- return [2 /*return*/];
165
- }
166
- });
167
- }); });
@@ -1 +0,0 @@
1
- export {};
@@ -1,72 +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 { storeToken, STORE_TOKEN } from '../token';
41
- var initialState = {
42
- data: {
43
- progression: null,
44
- slides: {},
45
- skills: [],
46
- token: '1234',
47
- corrections: {},
48
- rank: {}
49
- },
50
- ui: {
51
- currentSlideRef: '',
52
- navigation: [],
53
- answers: [],
54
- slide: {
55
- validateButton: false
56
- }
57
- }
58
- };
59
- test('should dispatch STORE_TOKEN action when storeToken is called', function (t) { return __awaiter(void 0, void 0, void 0, function () {
60
- var expectedActions, dispatch;
61
- return __generator(this, function (_a) {
62
- switch (_a.label) {
63
- case 0:
64
- expectedActions = [{ type: STORE_TOKEN, payload: 'JWT.token' }];
65
- dispatch = createTestStore(t, initialState, services, expectedActions).dispatch;
66
- return [4 /*yield*/, dispatch(storeToken('JWT.token'))];
67
- case 1:
68
- _a.sent();
69
- return [2 /*return*/];
70
- }
71
- });
72
- }); });
@@ -1 +0,0 @@
1
- export {};