@pie-element/multiple-choice 13.3.6 → 13.3.8

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.
@@ -1,95 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _multipleChoice = _interopRequireDefault(require("../multiple-choice"));
5
- describe('MultipleChoice', () => {
6
- let instance;
7
- beforeEach(() => {
8
- instance = new _multipleChoice.default();
9
- instance._model = {
10
- choices: [{
11
- value: '1'
12
- }, {
13
- value: '2'
14
- }, {
15
- value: '3'
16
- }],
17
- choiceMode: 'checkbox'
18
- };
19
- instance._session = {
20
- value: []
21
- };
22
- instance._onChange = jest.fn();
23
- });
24
- describe('handleKeyDown', () => {
25
- const simulateKeyDown = key => {
26
- const event = new KeyboardEvent('keydown', {
27
- key
28
- });
29
- instance.handleKeyDown(event);
30
- };
31
- it('selects a choice on valid numeric key (checkbox)', () => {
32
- simulateKeyDown('1');
33
- expect(instance._onChange).toHaveBeenCalledWith({
34
- value: '1',
35
- selected: true
36
- });
37
- });
38
- it('toggles a choice on valid numeric key (checkbox)', () => {
39
- instance._session.value = ['1'];
40
- simulateKeyDown('1');
41
- expect(instance._onChange).toHaveBeenCalledWith({
42
- value: '1',
43
- selected: false
44
- });
45
- });
46
- it('selects a choice on valid alphabetic key (checkbox)', () => {
47
- simulateKeyDown('a');
48
- expect(instance._onChange).toHaveBeenCalledWith({
49
- value: '1',
50
- selected: true
51
- });
52
- });
53
- it('does nothing on invalid key', () => {
54
- simulateKeyDown('z');
55
- expect(instance._onChange).not.toHaveBeenCalled();
56
- });
57
- it('selects a choice in radio mode', () => {
58
- instance._model.choiceMode = 'radio';
59
- simulateKeyDown('2');
60
- expect(instance._onChange).toHaveBeenCalledWith({
61
- value: '2',
62
- selected: true
63
- });
64
- });
65
- it('replaces the selected choice in radio mode', () => {
66
- instance._model.choiceMode = 'radio';
67
- instance._session.value = ['1'];
68
- simulateKeyDown('3');
69
- expect(instance._onChange).toHaveBeenCalledWith({
70
- value: '3',
71
- selected: true
72
- });
73
- });
74
- it('does not toggle the same choice in radio mode', () => {
75
- instance._model.choiceMode = 'radio';
76
- instance._session.value = ['1'];
77
- simulateKeyDown('1');
78
- expect(instance._onChange).toHaveBeenCalledWith({
79
- value: '1',
80
- selected: true
81
- });
82
- });
83
- it('does nothing if model is missing', () => {
84
- instance._model = null;
85
- simulateKeyDown('1');
86
- expect(instance._onChange).not.toHaveBeenCalled();
87
- });
88
- it('does nothing if session is missing', () => {
89
- instance._session = null;
90
- simulateKeyDown('1');
91
- expect(instance._onChange).not.toHaveBeenCalled();
92
- });
93
- });
94
- });
95
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbXVsdGlwbGVDaG9pY2UiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImRlc2NyaWJlIiwiaW5zdGFuY2UiLCJiZWZvcmVFYWNoIiwiTXVsdGlwbGVDaG9pY2UiLCJfbW9kZWwiLCJjaG9pY2VzIiwidmFsdWUiLCJjaG9pY2VNb2RlIiwiX3Nlc3Npb24iLCJfb25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJzaW11bGF0ZUtleURvd24iLCJrZXkiLCJldmVudCIsIktleWJvYXJkRXZlbnQiLCJoYW5kbGVLZXlEb3duIiwiaXQiLCJleHBlY3QiLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsInNlbGVjdGVkIiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18va2V5LWV2ZW50cy10ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTXVsdGlwbGVDaG9pY2UgZnJvbSAnLi4vbXVsdGlwbGUtY2hvaWNlJztcblxuZGVzY3JpYmUoJ011bHRpcGxlQ2hvaWNlJywgKCkgPT4ge1xuICBsZXQgaW5zdGFuY2U7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgaW5zdGFuY2UgPSBuZXcgTXVsdGlwbGVDaG9pY2UoKTtcbiAgICBpbnN0YW5jZS5fbW9kZWwgPSB7XG4gICAgICBjaG9pY2VzOiBbXG4gICAgICAgIHsgdmFsdWU6ICcxJyB9LFxuICAgICAgICB7IHZhbHVlOiAnMicgfSxcbiAgICAgICAgeyB2YWx1ZTogJzMnIH0sXG4gICAgICBdLFxuICAgICAgY2hvaWNlTW9kZTogJ2NoZWNrYm94JyxcbiAgICB9O1xuICAgIGluc3RhbmNlLl9zZXNzaW9uID0geyB2YWx1ZTogW10gfTtcbiAgICBpbnN0YW5jZS5fb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdoYW5kbGVLZXlEb3duJywgKCkgPT4ge1xuICAgIGNvbnN0IHNpbXVsYXRlS2V5RG93biA9IChrZXkpID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50ID0gbmV3IEtleWJvYXJkRXZlbnQoJ2tleWRvd24nLCB7IGtleSB9KTtcbiAgICAgIGluc3RhbmNlLmhhbmRsZUtleURvd24oZXZlbnQpO1xuICAgIH07XG5cbiAgICBpdCgnc2VsZWN0cyBhIGNob2ljZSBvbiB2YWxpZCBudW1lcmljIGtleSAoY2hlY2tib3gpJywgKCkgPT4ge1xuICAgICAgc2ltdWxhdGVLZXlEb3duKCcxJyk7XG4gICAgICBleHBlY3QoaW5zdGFuY2UuX29uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7XG4gICAgICAgIHZhbHVlOiAnMScsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgndG9nZ2xlcyBhIGNob2ljZSBvbiB2YWxpZCBudW1lcmljIGtleSAoY2hlY2tib3gpJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX3Nlc3Npb24udmFsdWUgPSBbJzEnXTtcbiAgICAgIHNpbXVsYXRlS2V5RG93bignMScpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICB2YWx1ZTogJzEnLFxuICAgICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdzZWxlY3RzIGEgY2hvaWNlIG9uIHZhbGlkIGFscGhhYmV0aWMga2V5IChjaGVja2JveCknLCAoKSA9PiB7XG4gICAgICBzaW11bGF0ZUtleURvd24oJ2EnKTtcbiAgICAgIGV4cGVjdChpbnN0YW5jZS5fb25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtcbiAgICAgICAgdmFsdWU6ICcxJyxcbiAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdkb2VzIG5vdGhpbmcgb24gaW52YWxpZCBrZXknLCAoKSA9PiB7XG4gICAgICBzaW11bGF0ZUtleURvd24oJ3onKTtcbiAgICAgIGV4cGVjdChpbnN0YW5jZS5fb25DaGFuZ2UpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2VsZWN0cyBhIGNob2ljZSBpbiByYWRpbyBtb2RlJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX21vZGVsLmNob2ljZU1vZGUgPSAncmFkaW8nO1xuICAgICAgc2ltdWxhdGVLZXlEb3duKCcyJyk7XG4gICAgICBleHBlY3QoaW5zdGFuY2UuX29uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7XG4gICAgICAgIHZhbHVlOiAnMicsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVwbGFjZXMgdGhlIHNlbGVjdGVkIGNob2ljZSBpbiByYWRpbyBtb2RlJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX21vZGVsLmNob2ljZU1vZGUgPSAncmFkaW8nO1xuICAgICAgaW5zdGFuY2UuX3Nlc3Npb24udmFsdWUgPSBbJzEnXTtcbiAgICAgIHNpbXVsYXRlS2V5RG93bignMycpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICB2YWx1ZTogJzMnLFxuICAgICAgICBzZWxlY3RlZDogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2RvZXMgbm90IHRvZ2dsZSB0aGUgc2FtZSBjaG9pY2UgaW4gcmFkaW8gbW9kZScsICgpID0+IHtcbiAgICAgIGluc3RhbmNlLl9tb2RlbC5jaG9pY2VNb2RlID0gJ3JhZGlvJztcbiAgICAgIGluc3RhbmNlLl9zZXNzaW9uLnZhbHVlID0gWycxJ107XG4gICAgICBzaW11bGF0ZUtleURvd24oJzEnKTtcbiAgICAgIGV4cGVjdChpbnN0YW5jZS5fb25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtcbiAgICAgICAgdmFsdWU6ICcxJyxcbiAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdkb2VzIG5vdGhpbmcgaWYgbW9kZWwgaXMgbWlzc2luZycsICgpID0+IHtcbiAgICAgIGluc3RhbmNlLl9tb2RlbCA9IG51bGw7XG4gICAgICBzaW11bGF0ZUtleURvd24oJzEnKTtcbiAgICAgIGV4cGVjdChpbnN0YW5jZS5fb25DaGFuZ2UpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnZG9lcyBub3RoaW5nIGlmIHNlc3Npb24gaXMgbWlzc2luZycsICgpID0+IHtcbiAgICAgIGluc3RhbmNlLl9zZXNzaW9uID0gbnVsbDtcbiAgICAgIHNpbXVsYXRlS2V5RG93bignMScpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBQUEsZUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNO0VBQy9CLElBQUlDLFFBQVE7RUFFWkMsVUFBVSxDQUFDLE1BQU07SUFDZkQsUUFBUSxHQUFHLElBQUlFLHVCQUFjLENBQUMsQ0FBQztJQUMvQkYsUUFBUSxDQUFDRyxNQUFNLEdBQUc7TUFDaEJDLE9BQU8sRUFBRSxDQUNQO1FBQUVDLEtBQUssRUFBRTtNQUFJLENBQUMsRUFDZDtRQUFFQSxLQUFLLEVBQUU7TUFBSSxDQUFDLEVBQ2Q7UUFBRUEsS0FBSyxFQUFFO01BQUksQ0FBQyxDQUNmO01BQ0RDLFVBQVUsRUFBRTtJQUNkLENBQUM7SUFDRE4sUUFBUSxDQUFDTyxRQUFRLEdBQUc7TUFBRUYsS0FBSyxFQUFFO0lBQUcsQ0FBQztJQUNqQ0wsUUFBUSxDQUFDUSxTQUFTLEdBQUdDLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUM7RUFDaEMsQ0FBQyxDQUFDO0VBRUZYLFFBQVEsQ0FBQyxlQUFlLEVBQUUsTUFBTTtJQUM5QixN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
@@ -1,107 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _index = _interopRequireDefault(require("../index"));
5
- beforeAll(() => {
6
- if (!customElements.get('pie-multiple-choice-key-events')) {
7
- customElements.define('pie-multiple-choice-key-events', _index.default);
8
- }
9
- });
10
- describe('MultipleChoice', () => {
11
- let instance;
12
- beforeEach(() => {
13
- instance = new _index.default();
14
- instance._model = {
15
- mode: 'gather',
16
- choices: [{
17
- value: '1'
18
- }, {
19
- value: '2'
20
- }, {
21
- value: '3'
22
- }],
23
- choiceMode: 'checkbox'
24
- };
25
- instance._session = {
26
- value: []
27
- };
28
- instance._onChange = jest.fn();
29
- });
30
- describe('handleKeyDown', () => {
31
- const simulateKeyDown = key => {
32
- const event = new KeyboardEvent('keydown', {
33
- key
34
- });
35
- instance.handleKeyDown(event);
36
- };
37
- it('selects a choice on valid numeric key (checkbox)', () => {
38
- simulateKeyDown('1');
39
- expect(instance._onChange).toHaveBeenCalledWith({
40
- value: '1',
41
- selected: true,
42
- selector: 'Keyboard'
43
- });
44
- });
45
- it('toggles a choice on valid numeric key (checkbox)', () => {
46
- instance._session.value = ['1'];
47
- simulateKeyDown('1');
48
- expect(instance._onChange).toHaveBeenCalledWith({
49
- value: '1',
50
- selected: false,
51
- selector: 'Keyboard'
52
- });
53
- });
54
- it('selects a choice on valid alphabetic key (checkbox)', () => {
55
- simulateKeyDown('a');
56
- expect(instance._onChange).toHaveBeenCalledWith({
57
- value: '1',
58
- selected: true,
59
- selector: 'Keyboard'
60
- });
61
- });
62
- it('does nothing on invalid key', () => {
63
- simulateKeyDown('z');
64
- expect(instance._onChange).not.toHaveBeenCalled();
65
- });
66
- it('selects a choice in radio mode', () => {
67
- instance._model.choiceMode = 'radio';
68
- simulateKeyDown('2');
69
- expect(instance._onChange).toHaveBeenCalledWith({
70
- value: '2',
71
- selected: true,
72
- selector: 'Keyboard'
73
- });
74
- });
75
- it('replaces the selected choice in radio mode', () => {
76
- instance._model.choiceMode = 'radio';
77
- instance._session.value = ['1'];
78
- simulateKeyDown('3');
79
- expect(instance._onChange).toHaveBeenCalledWith({
80
- value: '3',
81
- selected: true,
82
- selector: 'Keyboard'
83
- });
84
- });
85
- it('does not toggle the same choice in radio mode', () => {
86
- instance._model.choiceMode = 'radio';
87
- instance._session.value = ['1'];
88
- simulateKeyDown('1');
89
- expect(instance._onChange).toHaveBeenCalledWith({
90
- value: '1',
91
- selected: true,
92
- selector: 'Keyboard'
93
- });
94
- });
95
- it('does nothing if model is missing', () => {
96
- instance._model = null;
97
- simulateKeyDown('1');
98
- expect(instance._onChange).not.toHaveBeenCalled();
99
- });
100
- it('does nothing if session is missing', () => {
101
- instance._session = null;
102
- simulateKeyDown('1');
103
- expect(instance._onChange).not.toHaveBeenCalled();
104
- });
105
- });
106
- });
107
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW5kZXgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImJlZm9yZUFsbCIsImN1c3RvbUVsZW1lbnRzIiwiZ2V0IiwiZGVmaW5lIiwiTXVsdGlwbGVDaG9pY2UiLCJkZXNjcmliZSIsImluc3RhbmNlIiwiYmVmb3JlRWFjaCIsIl9tb2RlbCIsIm1vZGUiLCJjaG9pY2VzIiwidmFsdWUiLCJjaG9pY2VNb2RlIiwiX3Nlc3Npb24iLCJfb25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJzaW11bGF0ZUtleURvd24iLCJrZXkiLCJldmVudCIsIktleWJvYXJkRXZlbnQiLCJoYW5kbGVLZXlEb3duIiwiaXQiLCJleHBlY3QiLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsInNlbGVjdGVkIiwic2VsZWN0b3IiLCJub3QiLCJ0b0hhdmVCZWVuQ2FsbGVkIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL19fdGVzdHNfXy9rZXktZXZlbnRzLnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNdWx0aXBsZUNob2ljZSBmcm9tICcuLi9pbmRleCc7XG5cbmJlZm9yZUFsbCgoKSA9PiB7XG4gIGlmICghY3VzdG9tRWxlbWVudHMuZ2V0KCdwaWUtbXVsdGlwbGUtY2hvaWNlLWtleS1ldmVudHMnKSkge1xuICAgIGN1c3RvbUVsZW1lbnRzLmRlZmluZSgncGllLW11bHRpcGxlLWNob2ljZS1rZXktZXZlbnRzJywgTXVsdGlwbGVDaG9pY2UpO1xuICB9XG59KTtcblxuZGVzY3JpYmUoJ011bHRpcGxlQ2hvaWNlJywgKCkgPT4ge1xuICBsZXQgaW5zdGFuY2U7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgaW5zdGFuY2UgPSBuZXcgTXVsdGlwbGVDaG9pY2UoKTtcbiAgICBpbnN0YW5jZS5fbW9kZWwgPSB7XG4gICAgICBtb2RlOiAnZ2F0aGVyJyxcbiAgICAgIGNob2ljZXM6IFtcbiAgICAgICAgeyB2YWx1ZTogJzEnIH0sXG4gICAgICAgIHsgdmFsdWU6ICcyJyB9LFxuICAgICAgICB7IHZhbHVlOiAnMycgfSxcbiAgICAgIF0sXG4gICAgICBjaG9pY2VNb2RlOiAnY2hlY2tib3gnLFxuICAgIH07XG4gICAgaW5zdGFuY2UuX3Nlc3Npb24gPSB7IHZhbHVlOiBbXSB9O1xuICAgIGluc3RhbmNlLl9vbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2hhbmRsZUtleURvd24nLCAoKSA9PiB7XG4gICAgY29uc3Qgc2ltdWxhdGVLZXlEb3duID0gKGtleSkgPT4ge1xuICAgICAgY29uc3QgZXZlbnQgPSBuZXcgS2V5Ym9hcmRFdmVudCgna2V5ZG93bicsIHsga2V5IH0pO1xuICAgICAgaW5zdGFuY2UuaGFuZGxlS2V5RG93bihldmVudCk7XG4gICAgfTtcblxuICAgIGl0KCdzZWxlY3RzIGEgY2hvaWNlIG9uIHZhbGlkIG51bWVyaWMga2V5IChjaGVja2JveCknLCAoKSA9PiB7XG4gICAgICBzaW11bGF0ZUtleURvd24oJzEnKTtcbiAgICAgIGV4cGVjdChpbnN0YW5jZS5fb25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtcbiAgICAgICAgdmFsdWU6ICcxJyxcbiAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICAgIHNlbGVjdG9yOiAnS2V5Ym9hcmQnLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgndG9nZ2xlcyBhIGNob2ljZSBvbiB2YWxpZCBudW1lcmljIGtleSAoY2hlY2tib3gpJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX3Nlc3Npb24udmFsdWUgPSBbJzEnXTtcbiAgICAgIHNpbXVsYXRlS2V5RG93bignMScpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICB2YWx1ZTogJzEnLFxuICAgICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICAgIHNlbGVjdG9yOiAnS2V5Ym9hcmQnLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2VsZWN0cyBhIGNob2ljZSBvbiB2YWxpZCBhbHBoYWJldGljIGtleSAoY2hlY2tib3gpJywgKCkgPT4ge1xuICAgICAgc2ltdWxhdGVLZXlEb3duKCdhJyk7XG4gICAgICBleHBlY3QoaW5zdGFuY2UuX29uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7XG4gICAgICAgIHZhbHVlOiAnMScsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlLFxuICAgICAgICBzZWxlY3RvcjogJ0tleWJvYXJkJyxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2RvZXMgbm90aGluZyBvbiBpbnZhbGlkIGtleScsICgpID0+IHtcbiAgICAgIHNpbXVsYXRlS2V5RG93bigneicpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzZWxlY3RzIGEgY2hvaWNlIGluIHJhZGlvIG1vZGUnLCAoKSA9PiB7XG4gICAgICBpbnN0YW5jZS5fbW9kZWwuY2hvaWNlTW9kZSA9ICdyYWRpbyc7XG4gICAgICBzaW11bGF0ZUtleURvd24oJzInKTtcbiAgICAgIGV4cGVjdChpbnN0YW5jZS5fb25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtcbiAgICAgICAgdmFsdWU6ICcyJyxcbiAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICAgIHNlbGVjdG9yOiAnS2V5Ym9hcmQnLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVwbGFjZXMgdGhlIHNlbGVjdGVkIGNob2ljZSBpbiByYWRpbyBtb2RlJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX21vZGVsLmNob2ljZU1vZGUgPSAncmFkaW8nO1xuICAgICAgaW5zdGFuY2UuX3Nlc3Npb24udmFsdWUgPSBbJzEnXTtcbiAgICAgIHNpbXVsYXRlS2V5RG93bignMycpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICB2YWx1ZTogJzMnLFxuICAgICAgICBzZWxlY3RlZDogdHJ1ZSxcbiAgICAgICAgc2VsZWN0b3I6ICdLZXlib2FyZCcsXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdkb2VzIG5vdCB0b2dnbGUgdGhlIHNhbWUgY2hvaWNlIGluIHJhZGlvIG1vZGUnLCAoKSA9PiB7XG4gICAgICBpbnN0YW5jZS5fbW9kZWwuY2hvaWNlTW9kZSA9ICdyYWRpbyc7XG4gICAgICBpbnN0YW5jZS5fc2Vzc2lvbi52YWx1ZSA9IFsnMSddO1xuICAgICAgc2ltdWxhdGVLZXlEb3duKCcxJyk7XG4gICAgICBleHBlY3QoaW5zdGFuY2UuX29uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7XG4gICAgICAgIHZhbHVlOiAnMScsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlLFxuICAgICAgICBzZWxlY3RvcjogJ0tleWJvYXJkJyxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2RvZXMgbm90aGluZyBpZiBtb2RlbCBpcyBtaXNzaW5nJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX21vZGVsID0gbnVsbDtcbiAgICAgIHNpbXVsYXRlS2V5RG93bignMScpO1xuICAgICAgZXhwZWN0KGluc3RhbmNlLl9vbkNoYW5nZSkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdkb2VzIG5vdGhpbmcgaWYgc2Vzc2lvbiBpcyBtaXNzaW5nJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2UuX3Nlc3Npb24gPSBudWxsO1xuICAgICAgc2ltdWxhdGVLZXlEb3duKCcxJyk7XG4gICAgICBleHBlY3QoaW5zdGFuY2UuX29uQ2hhbmdlKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQUMsU0FBUyxDQUFD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
@@ -1,101 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _react = _interopRequireDefault(require("react"));
5
- var _react2 = require("@testing-library/react");
6
- var _multipleChoice = require("../multiple-choice");
7
- var _correctAnswerToggle = _interopRequireDefault(require("@pie-lib/correct-answer-toggle"));
8
- // Mock the CorrectAnswerToggle component
9
- jest.mock('@pie-lib/correct-answer-toggle', () => {
10
- const MockToggle = props => /*#__PURE__*/_react.default.createElement("div", {
11
- "data-testid": "correct-answer-toggle",
12
- "data-show": props.show,
13
- "data-toggled": props.toggled
14
- }, "Mock Toggle");
15
- MockToggle.displayName = 'CorrectAnswerToggle';
16
- return MockToggle;
17
- });
18
- describe('Choice', () => {
19
- let onChoiceChanged;
20
- beforeEach(() => {
21
- onChoiceChanged = jest.fn();
22
- });
23
- const renderChoice = (extras = {}) => {
24
- const props = {
25
- classes: {},
26
- choice: {},
27
- index: 0,
28
- choicesLength: 1,
29
- showCorrect: false,
30
- isEvaluateMode: false,
31
- choiceMode: 'radio',
32
- disabled: true,
33
- onChoiceChanged,
34
- checked: true,
35
- correctness: 'correct',
36
- displayKey: '0',
37
- choicesLayout: 'grid',
38
- gridColumns: 2,
39
- ...extras
40
- };
41
- return (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.Choice, props));
42
- };
43
- describe('logic', () => {
44
- it('does not call onChoiceChanged if disabled is true', () => {
45
- const {
46
- container
47
- } = renderChoice({
48
- disabled: true
49
- });
50
- const input = container.querySelector('input');
51
- if (input) {
52
- input.click();
53
- }
54
- // When disabled, onChange should not be called
55
- expect(onChoiceChanged).not.toHaveBeenCalled();
56
- });
57
- });
58
- });
59
- describe('CorespringChoice', () => {
60
- const mkWrapper = (opts = {}) => {
61
- const defaultProps = {
62
- classes: {},
63
- choices: [],
64
- disabled: false,
65
- keyMode: 'letters',
66
- onChoiceChanged: jest.fn(),
67
- mode: 'gather',
68
- ...opts
69
- };
70
- return (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps));
71
- };
72
- describe('Toggle', () => {
73
- it('toggle is rendered', () => {
74
- mkWrapper();
75
- expect(_react2.screen.getByTestId('correct-answer-toggle')).toBeInTheDocument();
76
- });
77
- it('toggle show is set to false by default', () => {
78
- mkWrapper();
79
- const toggle = _react2.screen.getByTestId('correct-answer-toggle');
80
- expect(toggle).toHaveAttribute('data-show', 'false');
81
- });
82
- it('shows toggle if mode is evaluate, feedback is enabled and responseCorrect is false', () => {
83
- mkWrapper({
84
- mode: 'evaluate',
85
- responseCorrect: false,
86
- feedbackEnabled: true
87
- });
88
- const toggle = _react2.screen.getByTestId('correct-answer-toggle');
89
- expect(toggle).toHaveAttribute('data-show', 'true');
90
- });
91
- it('hides toggle if mode is evaluate and responseCorrect is true', () => {
92
- mkWrapper({
93
- mode: 'evaluate',
94
- responseCorrect: true
95
- });
96
- const toggle = _react2.screen.getByTestId('correct-answer-toggle');
97
- expect(toggle).toHaveAttribute('data-show', 'false');
98
- });
99
- });
100
- });
101
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfbXVsdGlwbGVDaG9pY2UiLCJfY29ycmVjdEFuc3dlclRvZ2dsZSIsImplc3QiLCJtb2NrIiwiTW9ja1RvZ2dsZSIsInByb3BzIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJzaG93IiwidG9nZ2xlZCIsImRpc3BsYXlOYW1lIiwiZGVzY3JpYmUiLCJvbkNob2ljZUNoYW5nZWQiLCJiZWZvcmVFYWNoIiwiZm4iLCJyZW5kZXJDaG9pY2UiLCJleHRyYXMiLCJjbGFzc2VzIiwiY2hvaWNlIiwiaW5kZXgiLCJjaG9pY2VzTGVuZ3RoIiwic2hvd0NvcnJlY3QiLCJpc0V2YWx1YXRlTW9kZSIsImNob2ljZU1vZGUiLCJkaXNhYmxlZCIsImNoZWNrZWQiLCJjb3JyZWN0bmVzcyIsImRpc3BsYXlLZXkiLCJjaG9pY2VzTGF5b3V0IiwiZ3JpZENvbHVtbnMiLCJyZW5kZXIiLCJDaG9pY2UiLCJpdCIsImNvbnRhaW5lciIsImlucHV0IiwicXVlcnlTZWxlY3RvciIsImNsaWNrIiwiZXhwZWN0Iiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCIsIm1rV3JhcHBlciIsIm9wdHMiLCJkZWZhdWx0UHJvcHMiLCJjaG9pY2VzIiwia2V5TW9kZSIsIm1vZGUiLCJNdWx0aXBsZUNob2ljZSIsInNjcmVlbiIsImdldEJ5VGVzdElkIiwidG9CZUluVGhlRG9jdW1lbnQiLCJ0b2dnbGUiLCJ0b0hhdmVBdHRyaWJ1dGUiLCJyZXNwb25zZUNvcnJlY3QiLCJmZWVkYmFja0VuYWJsZWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvX190ZXN0c19fL211bHRpcGxlLWNob2ljZS10ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgcmVuZGVyLCBzY3JlZW4gfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB7IE11bHRpcGxlQ2hvaWNlLCBDaG9pY2UgfSBmcm9tICcuLi9tdWx0aXBsZS1jaG9pY2UnO1xuaW1wb3J0IENvcnJlY3RBbnN3ZXJUb2dnbGUgZnJvbSAnQHBpZS1saWIvY29ycmVjdC1hbnN3ZXItdG9nZ2xlJztcblxuLy8gTW9jayB0aGUgQ29ycmVjdEFuc3dlclRvZ2dsZSBjb21wb25lbnRcbmplc3QubW9jaygnQHBpZS1saWIvY29ycmVjdC1hbnN3ZXItdG9nZ2xlJywgKCkgPT4ge1xuICBjb25zdCBNb2NrVG9nZ2xlID0gKHByb3BzKSA9PiAoXG4gICAgPGRpdiBkYXRhLXRlc3RpZD1cImNvcnJlY3QtYW5zd2VyLXRvZ2dsZVwiIGRhdGEtc2hvdz17cHJvcHMuc2hvd30gZGF0YS10b2dnbGVkPXtwcm9wcy50b2dnbGVkfT5cbiAgICAgIE1vY2sgVG9nZ2xlXG4gICAgPC9kaXY+XG4gICk7XG4gIE1vY2tUb2dnbGUuZGlzcGxheU5hbWUgPSAnQ29ycmVjdEFuc3dlclRvZ2dsZSc7XG4gIHJldHVybiBNb2NrVG9nZ2xlO1xufSk7XG5cbmRlc2NyaWJlKCdDaG9pY2UnLCAoKSA9PiB7XG4gIGxldCBvbkNob2ljZUNoYW5nZWQ7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgb25DaG9pY2VDaGFuZ2VkID0gamVzdC5mbigpO1xuICB9KTtcblxuICBjb25zdCByZW5kZXJDaG9pY2UgPSAoZXh0cmFzID0ge30pID0+IHtcbiAgICBjb25zdCBwcm9wcyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2hvaWNlOiB7fSxcbiAgICAgIGluZGV4OiAwLFxuICAgICAgY2hvaWNlc0xlbmd0aDogMSxcbiAgICAgIHNob3dDb3JyZWN0OiBmYWxzZSxcbiAgICAgIGlzRXZhbHVhdGVNb2RlOiBmYWxzZSxcbiAgICAgIGNob2ljZU1vZGU6ICdyYWRpbycsXG4gICAgICBkaXNhYmxlZDogdHJ1ZSxcbiAgICAgIG9uQ2hvaWNlQ2hhbmdlZCxcbiAgICAgIGNoZWNrZWQ6IHRydWUsXG4gICAgICBjb3JyZWN0bmVzczogJ2NvcnJlY3QnLFxuICAgICAgZGlzcGxheUtleTogJzAnLFxuICAgICAgY2hvaWNlc0xheW91dDogJ2dyaWQnLFxuICAgICAgZ3JpZENvbHVtbnM6IDIsXG4gICAgICAuLi5leHRyYXMsXG4gICAgfTtcbiAgICByZXR1cm4gcmVuZGVyKDxDaG9pY2Ugey4uLnByb3BzfSAvPik7XG4gIH07XG5cbiAgZGVzY3JpYmUoJ2xvZ2ljJywgKCkgPT4ge1xuICAgIGl0KCdkb2VzIG5vdCBjYWxsIG9uQ2hvaWNlQ2hhbmdlZCBpZiBkaXNhYmxlZCBpcyB0cnVlJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNob2ljZSh7IGRpc2FibGVkOiB0cnVlIH0pO1xuICAgICAgY29uc3QgaW5wdXQgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICAgIGlmIChpbnB1dCkge1xuICAgICAgICBpbnB1dC5jbGljaygpO1xuICAgICAgfVxuICAgICAgLy8gV2hlbiBkaXNhYmxlZCwgb25DaGFuZ2Ugc2hvdWxkIG5vdCBiZSBjYWxsZWRcbiAgICAgIGV4cGVjdChvbkNob2ljZUNoYW5nZWQpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG5cbmRlc2NyaWJlKCdDb3Jlc3ByaW5nQ2hvaWNlJywgKCkgPT4ge1xuICBjb25zdCBta1dyYXBwZXIgPSAob3B0cyA9IHt9KSA9PiB7XG4gICAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBjaG9pY2VzOiBbXSxcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgIGtleU1vZGU6ICdsZXR0ZXJzJyxcbiAgICAgIG9uQ2hvaWNlQ2hhbmdlZDogamVzdC5mbigpLFxuICAgICAgbW9kZTogJ2dhdGhlcicsXG4gICAgICAuLi5vcHRzLFxuICAgIH07XG5cbiAgICByZXR1cm4gcmVuZGVyKDxNdWx0aXBsZUNob2ljZSB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gIH07XG5cbiAgZGVzY3JpYmUoJ1RvZ2dsZScsICgpID0+IHtcbiAgICBpdCgndG9nZ2xlIGlzIHJlbmRlcmVkJywgKCkgPT4ge1xuICAgICAgbWtXcmFwcGVyKCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGVzdElkKCdjb3JyZWN0LWFuc3dlci10b2dnbGUnKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCd0b2dnbGUgc2hvdyBpcyBzZXQgdG8gZmFsc2UgYnkgZGVmYXVsdCcsICgpID0+IHtcbiAgICAgIG1rV3JhcHBlcigpO1xuICAgICAgY29uc3QgdG9nZ2xlID0gc2NyZWVuLmdldEJ5VGVzdElkKCdjb3JyZWN0LWFuc3dlci10b2dnbGUnKTtcbiAgICAgIGV4cGVjdCh0b2dnbGUpLnRvSGF2ZUF0dHJpYnV0ZSgnZGF0YS1zaG93JywgJ2ZhbHNlJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvd3MgdG9nZ2xlIGlmIG1vZGUgaXMgZXZhbHVhdGUsIGZlZWRiYWNrIGlzIGVuYWJsZWQgYW5kIHJlc3BvbnNlQ29ycmVjdCBpcyBmYWxzZScsICgpID0+IHtcbiAgICAgIG1rV3JhcHBlcih7IG1vZGU6ICdldmFsdWF0ZScsIHJlc3BvbnNlQ29ycmVjdDogZmFsc2UsIGZlZWRiYWNrRW5hYmxlZDogdHJ1ZSB9KTtcbiAgICAgIGNvbnN0IHRvZ2dsZSA9IHNjcmVlbi5nZXRCeVRlc3RJZCgnY29ycmVjdC1hbnN3ZXItdG9nZ2xlJyk7XG4gICAgICBleHBlY3QodG9nZ2xlKS50b0hhdmVBdHRyaWJ1dGUoJ2RhdGEtc2hvdycsICd0cnVlJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnaGlkZXMgdG9nZ2xlIGlmIG1vZGUgaXMgZXZhbHVhdGUgYW5kIHJlc3BvbnNlQ29ycmVjdCBpcyB0cnVlJywgKCkgPT4ge1xuICAgICAgbWtXcmFwcGVyKHsgbW9kZTogJ2V2YWx1YXRlJywgcmVzcG9uc2VDb3JyZWN0OiB0cnVlIH0pO1xuICAgICAgY29uc3QgdG9nZ2xlID0gc2NyZWVuLmdldEJ5VGVzdElkKCdjb3JyZWN0LWFuc3dlci10b2dnbGUnKTtcbiAgICAgIGV4cGVjdCh0b2dnbGUpLnRvSGF2ZUF0dHJpYnV0ZSgnZGF0YS1zaG93JywgJ2ZhbHNlJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGVBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLG9CQUFBLEdBQUFKLHNCQUFBLENBQUFDLE9BQUE7QUFFQTtBQUNBSSxJQUFJLENBQUNDLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxNQUFNO0VBQ2hELE1BQU1DLFVBQVUsR0FBSUMsS0FBSyxpQkFDdkJULE1BQUEsQ0FBQVUsT0FBQSxDQUFBQyxhQUFBO0lBQUssZUFBWSx1QkFBdUI7SUFBQyxhQUFXRixLQUFLLENBQUNHLElBQUs7SUFBQyxnQkFBY0gsS0FBSyxDQUFDSTtFQUFRLEdBQUMsYUFFeEYsQ0FDTjtFQUNETCxVQUFVLENBQUNNLFdBQVcsR0FBRyxxQkFBcUI7RUFDOUMsT0FBT04sVUFBVTtBQUNuQixDQUFDLENBQUM7QUFFRk8sUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNO0VBQ3ZCLElBQUlDLGVBQWU7RUFFbkJDLFVBQVUsQ0FBQyxNQUFNO0lBQ2ZELGVBQWUsR0FBR1YsSUFBSSxDQUFDWSxFQUFFLENBQUMsQ0FBQztFQUM3QixDQUFDLENBQUM7RUFFRixNQUFNQyxZQUFZLEdBQUdBLENBQUNDLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSztJQUNwQyxNQUFNWCxLQUFLLEdBQUc7TUFDWlksT0FBTyxFQUFFLENBQUMsQ0FBQztNQUNYQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO01BQ1ZDLEtBQUssRUFBRSxDQUFDO01BQ1JDLGFBQWEsRUFBRSxDQUFDO01BQ2hCQyxXQUFXLEVBQUUsS0FBSztNQUNsQkMsY0FBYyxFQUFFLEtBQUs7TUFDckJDLFVBQVUsRUFBRSxPQUFPO01BQ25CQyxRQUFRLEVBQUUsSUFBSTtNQUNkWixlQUFlO01BQ2ZhLE9BQU8sRUFBRSxJQUFJO01BQ2JDLFdBQVcsRUFBRSxTQUFTO01BQ3RCQyxVQUFVLEVBQUUsR0FBRztNQUNmQyxhQUFhLEVBQUUsTUFBTTtNQUNyQkMsV0FBVyxFQUFFLENBQUM7TUFDZCxHQUFHYjtJQUNMLENBQUM7SUFDRCxPQUFPLElBQUFjLGNBQU0sZUFBQ2xDLE1BQUEsQ0FBQVUsT0FBQSxDQUFBQyxhQUFBLENBQUNQLGVBQUEsQ0FBQStCLE1BQU0sRUFBSzFCLEtBQVEsQ0FBQyxDQUFDO0VBQ3RDLENBQUM7RUFFRE0sUUFBUSxDQUFDLE9BQU8sRUFBRSxNQUFNO0lBQ3RCcUIsRUFBRSxDQUFDLG1EQUFtRCxFQUFFLE1BQU07TUFDNUQsTUFBTTtRQUFFQztNQUFVLENBQUMsR0FBR2xCLFlBQVksQ0FBQztRQUFFUyxRQUFRLEVBQUU7TUFBSyxDQUFDLENBQUM7TUFDdEQsTUFBTVUsS0FBSyxHQUFHRCxTQUFTLENBQUNFLGFBQWEsQ0FBQyxPQUFPLENBQUM7TUFDOUMsSUFBSUQsS0FBSyxFQUFFO1FBQ1RBLEtBQUssQ0FBQ0UsS0FBSyxDQUFDLENBQUM7TUFDZjtNQUNBO01BQ0FDLE1BQU0sQ0FBQ3pCLGVBQWUsQ0FBQyxDQUFDMEIsR0FBRyxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQztFQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGNUIsUUFBUSxDQUFDLGtCQUFrQixFQUFFLE1BQU07RUFDakMsTUFBTTZCLFNBQVMsR0FBR0EsQ0FBQ0MsSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLO0lBQy9CLE1BQU1DLFlBQVksR0FBRztNQUNuQnpCLE9BQU8sRUFBRSxDQUFDLENBQUM7TUFDWDBCLE9BQU8sRUFBRSxFQUFFO01BQ1huQixRQUFRLEVBQUUsS0FBSztNQUNmb0IsT0FBTyxFQUFFLFNBQVM7TUFDbEJoQyxlQUFlLEVBQUVWLElBQUksQ0FBQ1ksRUFBRSxDQUFDLENBQUM7TUFDMUIrQixJQUFJLEVBQUUsUUFBUTtNQUNkLEdBQUdKO0lBQ0wsQ0FBQztJQUVELE9BQU8sSUFBQVgsY0FBTSxlQUFDbEMsTUFBQSxDQUFBVSxPQUFBLENBQUFDLGFBQUEsQ0FBQ1AsZUFBQSxDQUFBOEMsY0FBYyxFQUFLSixZQUFlLENBQUMsQ0FBQztFQUNyRCxDQUFDO0VBRUQvQixRQUFRLENBQUMsUUFBUSxFQUFFLE1BQU07SUFDdkJxQixFQUFFLENBQUMsb0JBQW9CLEVBQUUsTUFBTTtNQUM3QlEsU0FBUyxDQUFDLENBQUM7TUFDWEgsTUFBTSxDQUFDVSxjQUFNLENBQUNDLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUNDLGlCQUFpQixDQUFDLENBQUM7SUFDekUsQ0FBQyxDQUFDO0lBRUZqQixFQUFFLENBQUMsd0NBQXdDLEVBQUUsTUFBTTtNQUNqRFEsU0FBUyxDQUFDLENBQUM7TUFDWCxNQUFNVSxNQUFNLEdBQUdILGNBQU0sQ0FBQ0MsV0FBVyxDQUFDLHVCQUF1QixDQUFDO01BQzFEWCxNQUFNLENBQUNhLE1BQU0sQ0FBQyxDQUFDQyxlQUFlLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQztJQUN0RCxDQUFDLENBQUM7SUFFRm5CLEVBQUUsQ0FBQyxvRkFBb0YsRUFBRSxNQUFNO01BQzdGUSxTQUFTLENBQUM7UUFBRUssSUFBSSxFQUFFLFVBQVU7UUFBRU8sZUFBZSxFQUFFLEtBQUs7UUFBRUMsZUFBZSxFQUFFO01BQUssQ0FBQyxDQUFDO01BQzlFLE1BQU1ILE1BQU0sR0FBR0gsY0FBTSxDQUFDQyxXQUFXLENBQUMsdUJBQXVCLENBQUM7TUFDMURYLE1BQU0sQ0FBQ2EsTUFBTSxDQUFDLENBQUNDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDO0lBQ3JELENBQUMsQ0FBQztJQUVGbkIsRUFBRSxDQUFDLDhEQUE4RCxFQUFFLE1BQU07TUFDdkVRLFNBQVMsQ0FBQztRQUFFSyxJQUFJLEVBQUUsVUFBVTtRQUFFTyxlQUFlLEVBQUU7TUFBSyxDQUFDLENBQUM7TUFDdEQsTUFBTUYsTUFBTSxHQUFHSCxjQUFNLENBQUNDLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQztNQUMxRFgsTUFBTSxDQUFDYSxNQUFNLENBQUMsQ0FBQ0MsZUFBZSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUM7SUFDdEQsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -1,256 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _react = _interopRequireDefault(require("react"));
5
- var _react2 = require("@testing-library/react");
6
- var _multipleChoice = require("../multiple-choice");
7
- // Mock the CorrectAnswerToggle component
8
- jest.mock('@pie-lib/correct-answer-toggle', () => {
9
- const MockToggle = props => /*#__PURE__*/_react.default.createElement("div", {
10
- "data-testid": "correct-answer-toggle",
11
- "data-show": props.show,
12
- "data-toggled": props.toggled
13
- }, "Mock Toggle");
14
- MockToggle.displayName = 'CorrectAnswerToggle';
15
- return MockToggle;
16
- });
17
- jest.mock('@pie-lib/render-ui', () => ({
18
- color: {
19
- text: () => '#000',
20
- background: () => '#fff',
21
- incorrect: () => '#f00',
22
- correct: () => '#0f0',
23
- primaryLight: () => '#eee',
24
- primary: () => '#333'
25
- },
26
- Collapsible: ({
27
- children
28
- }) => /*#__PURE__*/_react.default.createElement("div", null, children),
29
- PreviewPrompt: ({
30
- prompt,
31
- tagName: Tag = 'div'
32
- }) => /*#__PURE__*/_react.default.createElement(Tag, null, prompt),
33
- transformDataHeadings: html => html
34
- }));
35
- jest.mock('@pie-lib/translator', () => ({
36
- __esModule: true,
37
- default: {
38
- translator: {
39
- t: key => key
40
- }
41
- }
42
- }));
43
-
44
- // Mock Choice with separate select/deselect buttons so fireEvent.click
45
- // reliably triggers handleChange with the correct checked value.
46
- jest.mock('../choice', () => {
47
- const React = require('react');
48
- return {
49
- __esModule: true,
50
- default: ({
51
- choice,
52
- onChoiceChanged
53
- }) => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("button", {
54
- "data-testid": `select-${choice.value}`,
55
- onClick: () => onChoiceChanged({
56
- target: {
57
- value: choice.value,
58
- checked: true
59
- }
60
- })
61
- }), /*#__PURE__*/React.createElement("button", {
62
- "data-testid": `deselect-${choice.value}`,
63
- onClick: () => onChoiceChanged({
64
- target: {
65
- value: choice.value,
66
- checked: false
67
- }
68
- })
69
- }))
70
- };
71
- });
72
- describe('CorespringChoice', () => {
73
- const mkWrapper = (opts = {}) => {
74
- const defaultProps = {
75
- classes: {},
76
- choices: [],
77
- disabled: false,
78
- keyMode: 'letters',
79
- onChoiceChanged: jest.fn(),
80
- mode: 'gather',
81
- ...opts
82
- };
83
- return (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps));
84
- };
85
- describe('Toggle', () => {
86
- it('toggle is rendered', () => {
87
- mkWrapper();
88
- expect(_react2.screen.getByTestId('correct-answer-toggle')).toBeInTheDocument();
89
- });
90
- it('toggle show is set to false by default', () => {
91
- mkWrapper();
92
- const toggle = _react2.screen.getByTestId('correct-answer-toggle');
93
- expect(toggle).toHaveAttribute('data-show', 'false');
94
- });
95
- it('shows toggle if mode is evaluate, feedback is enabled and responseCorrect is false', () => {
96
- mkWrapper({
97
- mode: 'evaluate',
98
- responseCorrect: false,
99
- feedbackEnabled: true
100
- });
101
- const toggle = _react2.screen.getByTestId('correct-answer-toggle');
102
- expect(toggle).toHaveAttribute('data-show', 'true');
103
- });
104
- it('hides toggle if mode is evaluate and responseCorrect is true', () => {
105
- mkWrapper({
106
- mode: 'evaluate',
107
- responseCorrect: true
108
- });
109
- const toggle = _react2.screen.getByTestId('correct-answer-toggle');
110
- expect(toggle).toHaveAttribute('data-show', 'false');
111
- });
112
- });
113
- });
114
- describe('MultipleChoice handleChange', () => {
115
- const makeChoice = value => ({
116
- value,
117
- label: value
118
- });
119
- const defaultProps = (overrides = {}) => ({
120
- mode: 'gather',
121
- choiceMode: 'radio',
122
- choices: [makeChoice('A'), makeChoice('B'), makeChoice('C')],
123
- session: {
124
- value: []
125
- },
126
- disabled: false,
127
- onChoiceChanged: jest.fn(),
128
- ...overrides
129
- });
130
- describe('maxSelections: null', () => {
131
- it('allows selecting a first answer', () => {
132
- const onChoiceChanged = jest.fn();
133
- const {
134
- getByTestId
135
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
136
- maxSelections: null,
137
- onChoiceChanged
138
- })));
139
- _react2.fireEvent.click(getByTestId('select-A'));
140
- expect(onChoiceChanged).toHaveBeenCalledWith({
141
- value: 'A',
142
- selected: true,
143
- selector: 'Mouse'
144
- });
145
- });
146
- it('allows switching to a different answer after one is already selected', () => {
147
- const onChoiceChanged = jest.fn();
148
- const {
149
- getByTestId
150
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
151
- maxSelections: null,
152
- session: {
153
- value: ['A']
154
- },
155
- onChoiceChanged
156
- })));
157
- _react2.fireEvent.click(getByTestId('select-B'));
158
- expect(onChoiceChanged).toHaveBeenCalledWith({
159
- value: 'B',
160
- selected: true,
161
- selector: 'Mouse'
162
- });
163
- });
164
- });
165
- describe('maxSelections: 1, choiceMode: radio', () => {
166
- it('allows selecting a first answer', () => {
167
- const onChoiceChanged = jest.fn();
168
- const {
169
- getByTestId
170
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
171
- maxSelections: 1,
172
- onChoiceChanged
173
- })));
174
- _react2.fireEvent.click(getByTestId('select-A'));
175
- expect(onChoiceChanged).toHaveBeenCalledWith({
176
- value: 'A',
177
- selected: true,
178
- selector: 'Mouse'
179
- });
180
- });
181
- it('allows switching to a different answer after one is already selected', () => {
182
- const onChoiceChanged = jest.fn();
183
- const {
184
- getByTestId
185
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
186
- maxSelections: 1,
187
- session: {
188
- value: ['A']
189
- },
190
- onChoiceChanged
191
- })));
192
- _react2.fireEvent.click(getByTestId('select-B'));
193
- expect(onChoiceChanged).toHaveBeenCalledWith({
194
- value: 'B',
195
- selected: true,
196
- selector: 'Mouse'
197
- });
198
- });
199
- });
200
- describe('maxSelections: 2, choiceMode: checkbox', () => {
201
- it('allows selecting up to the limit', () => {
202
- const onChoiceChanged = jest.fn();
203
- const {
204
- getByTestId
205
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
206
- choiceMode: 'checkbox',
207
- maxSelections: 2,
208
- session: {
209
- value: ['A']
210
- },
211
- onChoiceChanged
212
- })));
213
- _react2.fireEvent.click(getByTestId('select-B'));
214
- expect(onChoiceChanged).toHaveBeenCalledWith({
215
- value: 'B',
216
- selected: true,
217
- selector: 'Mouse'
218
- });
219
- });
220
- it('blocks selecting beyond the limit', () => {
221
- const onChoiceChanged = jest.fn();
222
- const {
223
- getByTestId
224
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
225
- choiceMode: 'checkbox',
226
- maxSelections: 2,
227
- session: {
228
- value: ['A', 'B']
229
- },
230
- onChoiceChanged
231
- })));
232
- _react2.fireEvent.click(getByTestId('select-C'));
233
- expect(onChoiceChanged).not.toHaveBeenCalled();
234
- });
235
- it('allows deselecting when at the limit', () => {
236
- const onChoiceChanged = jest.fn();
237
- const {
238
- getByTestId
239
- } = (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_multipleChoice.MultipleChoice, defaultProps({
240
- choiceMode: 'checkbox',
241
- maxSelections: 2,
242
- session: {
243
- value: ['A', 'B']
244
- },
245
- onChoiceChanged
246
- })));
247
- _react2.fireEvent.click(getByTestId('deselect-A'));
248
- expect(onChoiceChanged).toHaveBeenCalledWith({
249
- value: 'A',
250
- selected: false,
251
- selector: 'Mouse'
252
- });
253
- });
254
- });
255
- });
256
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfbXVsdGlwbGVDaG9pY2UiLCJqZXN0IiwibW9jayIsIk1vY2tUb2dnbGUiLCJwcm9wcyIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50Iiwic2hvdyIsInRvZ2dsZWQiLCJkaXNwbGF5TmFtZSIsImNvbG9yIiwidGV4dCIsImJhY2tncm91bmQiLCJpbmNvcnJlY3QiLCJjb3JyZWN0IiwicHJpbWFyeUxpZ2h0IiwicHJpbWFyeSIsIkNvbGxhcHNpYmxlIiwiY2hpbGRyZW4iLCJQcmV2aWV3UHJvbXB0IiwicHJvbXB0IiwidGFnTmFtZSIsIlRhZyIsInRyYW5zZm9ybURhdGFIZWFkaW5ncyIsImh0bWwiLCJfX2VzTW9kdWxlIiwidHJhbnNsYXRvciIsInQiLCJrZXkiLCJSZWFjdCIsImNob2ljZSIsIm9uQ2hvaWNlQ2hhbmdlZCIsIkZyYWdtZW50IiwidmFsdWUiLCJvbkNsaWNrIiwidGFyZ2V0IiwiY2hlY2tlZCIsImRlc2NyaWJlIiwibWtXcmFwcGVyIiwib3B0cyIsImRlZmF1bHRQcm9wcyIsImNsYXNzZXMiLCJjaG9pY2VzIiwiZGlzYWJsZWQiLCJrZXlNb2RlIiwiZm4iLCJtb2RlIiwicmVuZGVyIiwiTXVsdGlwbGVDaG9pY2UiLCJpdCIsImV4cGVjdCIsInNjcmVlbiIsImdldEJ5VGVzdElkIiwidG9CZUluVGhlRG9jdW1lbnQiLCJ0b2dnbGUiLCJ0b0hhdmVBdHRyaWJ1dGUiLCJyZXNwb25zZUNvcnJlY3QiLCJmZWVkYmFja0VuYWJsZWQiLCJtYWtlQ2hvaWNlIiwibGFiZWwiLCJvdmVycmlkZXMiLCJjaG9pY2VNb2RlIiwic2Vzc2lvbiIsIm1heFNlbGVjdGlvbnMiLCJmaXJlRXZlbnQiLCJjbGljayIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwic2VsZWN0ZWQiLCJzZWxlY3RvciIsIm5vdCIsInRvSGF2ZUJlZW5DYWxsZWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvX190ZXN0c19fL211bHRpcGxlLWNob2ljZS50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgcmVuZGVyLCBzY3JlZW4sIGZpcmVFdmVudCB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnO1xuaW1wb3J0IHsgTXVsdGlwbGVDaG9pY2UgfSBmcm9tICcuLi9tdWx0aXBsZS1jaG9pY2UnO1xuXG4vLyBNb2NrIHRoZSBDb3JyZWN0QW5zd2VyVG9nZ2xlIGNvbXBvbmVudFxuamVzdC5tb2NrKCdAcGllLWxpYi9jb3JyZWN0LWFuc3dlci10b2dnbGUnLCAoKSA9PiB7XG4gIGNvbnN0IE1vY2tUb2dnbGUgPSAocHJvcHMpID0+IChcbiAgICA8ZGl2IGRhdGEtdGVzdGlkPVwiY29ycmVjdC1hbnN3ZXItdG9nZ2xlXCIgZGF0YS1zaG93PXtwcm9wcy5zaG93fSBkYXRhLXRvZ2dsZWQ9e3Byb3BzLnRvZ2dsZWR9PlxuICAgICAgTW9jayBUb2dnbGVcbiAgICA8L2Rpdj5cbiAgKTtcbiAgTW9ja1RvZ2dsZS5kaXNwbGF5TmFtZSA9ICdDb3JyZWN0QW5zd2VyVG9nZ2xlJztcbiAgcmV0dXJuIE1vY2tUb2dnbGU7XG59KTtcblxuamVzdC5tb2NrKCdAcGllLWxpYi9yZW5kZXItdWknLCAoKSA9PiAoe1xuICBjb2xvcjoge1xuICAgIHRleHQ6ICgpID0+ICcjMDAwJyxcbiAgICBiYWNrZ3JvdW5kOiAoKSA9PiAnI2ZmZicsXG4gICAgaW5jb3JyZWN0OiAoKSA9PiAnI2YwMCcsXG4gICAgY29ycmVjdDogKCkgPT4gJyMwZjAnLFxuICAgIHByaW1hcnlMaWdodDogKCkgPT4gJyNlZWUnLFxuICAgIHByaW1hcnk6ICgpID0+ICcjMzMzJyxcbiAgfSxcbiAgQ29sbGFwc2libGU6ICh7IGNoaWxkcmVuIH0pID0+IDxkaXY+e2NoaWxkcmVufTwvZGl2PixcbiAgUHJldmlld1Byb21wdDogKHsgcHJvbXB0LCB0YWdOYW1lOiBUYWcgPSAnZGl2JyB9KSA9PiA8VGFnPntwcm9tcHR9PC9UYWc+LFxuICB0cmFuc2Zvcm1EYXRhSGVhZGluZ3M6IChodG1sKSA9PiBodG1sLFxufSkpO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL3RyYW5zbGF0b3InLCAoKSA9PiAoe1xuICBfX2VzTW9kdWxlOiB0cnVlLFxuICBkZWZhdWx0OiB7IHRyYW5zbGF0b3I6IHsgdDogKGtleSkgPT4ga2V5IH0gfSxcbn0pKTtcblxuLy8gTW9jayBDaG9pY2Ugd2l0aCBzZXBhcmF0ZSBzZWxlY3QvZGVzZWxlY3QgYnV0dG9ucyBzbyBmaXJlRXZlbnQuY2xpY2tcbi8vIHJlbGlhYmx5IHRyaWdnZXJzIGhhbmRsZUNoYW5nZSB3aXRoIHRoZSBjb3JyZWN0IGNoZWNrZWQgdmFsdWUuXG5qZXN0Lm1vY2soJy4uL2Nob2ljZScsICgpID0+IHtcbiAgY29uc3QgUmVhY3QgPSByZXF1aXJlKCdyZWFjdCcpO1xuICByZXR1cm4ge1xuICAgIF9fZXNNb2R1bGU6IHRydWUsXG4gICAgZGVmYXVsdDogKHsgY2hvaWNlLCBvbkNob2ljZUNoYW5nZWQgfSkgPT4gKFxuICAgICAgPD5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGRhdGEtdGVzdGlkPXtgc2VsZWN0LSR7Y2hvaWNlLnZhbHVlfWB9XG4gICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaG9pY2VDaGFuZ2VkKHsgdGFyZ2V0OiB7IHZhbHVlOiBjaG9pY2UudmFsdWUsIGNoZWNrZWQ6IHRydWUgfSB9KX1cbiAgICAgICAgLz5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGRhdGEtdGVzdGlkPXtgZGVzZWxlY3QtJHtjaG9pY2UudmFsdWV9YH1cbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNob2ljZUNoYW5nZWQoeyB0YXJnZXQ6IHsgdmFsdWU6IGNob2ljZS52YWx1ZSwgY2hlY2tlZDogZmFsc2UgfSB9KX1cbiAgICAgICAgLz5cbiAgICAgIDwvPlxuICAgICksXG4gIH07XG59KTtcblxuXG5kZXNjcmliZSgnQ29yZXNwcmluZ0Nob2ljZScsICgpID0+IHtcbiAgY29uc3QgbWtXcmFwcGVyID0gKG9wdHMgPSB7fSkgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2hvaWNlczogW10sXG4gICAgICBkaXNhYmxlZDogZmFsc2UsXG4gICAgICBrZXlNb2RlOiAnbGV0dGVycycsXG4gICAgICBvbkNob2ljZUNoYW5nZWQ6IGplc3QuZm4oKSxcbiAgICAgIG1vZGU6ICdnYXRoZXInLFxuICAgICAgLi4ub3B0cyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHJlbmRlcig8TXVsdGlwbGVDaG9pY2Ugey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICB9O1xuXG4gIGRlc2NyaWJlKCdUb2dnbGUnLCAoKSA9PiB7XG4gICAgaXQoJ3RvZ2dsZSBpcyByZW5kZXJlZCcsICgpID0+IHtcbiAgICAgIG1rV3JhcHBlcigpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRlc3RJZCgnY29ycmVjdC1hbnN3ZXItdG9nZ2xlJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgndG9nZ2xlIHNob3cgaXMgc2V0IHRvIGZhbHNlIGJ5IGRlZmF1bHQnLCAoKSA9PiB7XG4gICAgICBta1dyYXBwZXIoKTtcbiAgICAgIGNvbnN0IHRvZ2dsZSA9IHNjcmVlbi5nZXRCeVRlc3RJZCgnY29ycmVjdC1hbnN3ZXItdG9nZ2xlJyk7XG4gICAgICBleHBlY3QodG9nZ2xlKS50b0hhdmVBdHRyaWJ1dGUoJ2RhdGEtc2hvdycsICdmYWxzZScpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3dzIHRvZ2dsZSBpZiBtb2RlIGlzIGV2YWx1YXRlLCBmZWVkYmFjayBpcyBlbmFibGVkIGFuZCByZXNwb25zZUNvcnJlY3QgaXMgZmFsc2UnLCAoKSA9PiB7XG4gICAgICBta1dyYXBwZXIoeyBtb2RlOiAnZXZhbHVhdGUnLCByZXNwb25zZUNvcnJlY3Q6IGZhbHNlLCBmZWVkYmFja0VuYWJsZWQ6IHRydWUgfSk7XG4gICAgICBjb25zdCB0b2dnbGUgPSBzY3JlZW4uZ2V0QnlUZXN0SWQoJ2NvcnJlY3QtYW5zd2VyLXRvZ2dsZScpO1xuICAgICAgZXhwZWN0KHRvZ2dsZSkudG9IYXZlQXR0cmlidXRlKCdkYXRhLXNob3cnLCAndHJ1ZScpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2hpZGVzIHRvZ2dsZSBpZiBtb2RlIGlzIGV2YWx1YXRlIGFuZCByZXNwb25zZUNvcnJlY3QgaXMgdHJ1ZScsICgpID0+IHtcbiAgICAgIG1rV3JhcHBlcih7IG1vZGU6ICdldmFsdWF0ZScsIHJlc3BvbnNlQ29ycmVjdDogdHJ1ZSB9KTtcbiAgICAgIGNvbnN0IHRvZ2dsZSA9IHNjcmVlbi5nZXRCeVRlc3RJZCgnY29ycmVjdC1hbnN3ZXItdG9nZ2xlJyk7XG4gICAgICBleHBlY3QodG9nZ2xlKS50b0hhdmVBdHRyaWJ1dGUoJ2RhdGEtc2hvdycsICdmYWxzZScpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuXG5kZXNjcmliZSgnTXVsdGlwbGVDaG9pY2UgaGFuZGxlQ2hhbmdlJywgKCkgPT4ge1xuICBjb25zdCBtYWtlQ2hvaWNlID0gKHZhbHVlKSA9PiAoeyB2YWx1ZSwgbGFiZWw6IHZhbHVlIH0pO1xuXG4gIGNvbnN0IGRlZmF1bHRQcm9wcyA9IChvdmVycmlkZXMgPSB7fSkgPT4gKHtcbiAgICBtb2RlOiAnZ2F0aGVyJyxcbiAgICBjaG9pY2VNb2RlOiAncmFkaW8nLFxuICAgIGNob2ljZXM6IFttYWtlQ2hvaWNlKCdBJyksIG1ha2VDaG9pY2UoJ0InKSwgbWFrZUNob2ljZSgnQycpXSxcbiAgICBzZXNzaW9uOiB7IHZhbHVlOiBbXSB9LFxuICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICBvbkNob2ljZUNoYW5nZWQ6IGplc3QuZm4oKSxcbiAgICAuLi5vdmVycmlkZXMsXG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdtYXhTZWxlY3Rpb25zOiBudWxsJywgKCkgPT4ge1xuICAgIGl0KCdhbGxvd3Mgc2VsZWN0aW5nIGEgZmlyc3QgYW5zd2VyJywgKCkgPT4ge1xuICAgICAgY29uc3Qgb25DaG9pY2VDaGFuZ2VkID0gamVzdC5mbigpO1xuICAgICAgY29uc3QgeyBnZXRCeVRlc3RJZCB9ID0gcmVuZGVyKFxuICAgICAgICA8TXVsdGlwbGVDaG9pY2Ugey4uLmRlZmF1bHRQcm9wcyh7IG1heFNlbGVjdGlvbnM6IG51bGwsIG9uQ2hvaWNlQ2hhbmdlZCB9KX0gLz4sXG4gICAgICApO1xuXG4gICAgICBmaXJlRXZlbnQuY2xpY2soZ2V0QnlUZXN0SWQoJ3NlbGVjdC1BJykpO1xuXG4gICAgICBleHBlY3Qob25DaG9pY2VDaGFuZ2VkKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IHZhbHVlOiAnQScsIHNlbGVjdGVkOiB0cnVlLCBzZWxlY3RvcjogJ01vdXNlJyB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdhbGxvd3Mgc3dpdGNoaW5nIHRvIGEgZGlmZmVyZW50IGFuc3dlciBhZnRlciBvbmUgaXMgYWxyZWFkeSBzZWxlY3RlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IG9uQ2hvaWNlQ2hhbmdlZCA9IGplc3QuZm4oKTtcbiAgICAgIGNvbnN0IHsgZ2V0QnlUZXN0SWQgfSA9IHJlbmRlcihcbiAgICAgICAgPE11bHRpcGxlQ2hvaWNlXG4gICAgICAgICAgey4uLmRlZmF1bHRQcm9wcyh7XG4gICAgICAgICAgICBtYXhTZWxlY3Rpb25zOiBudWxsLFxuICAgICAgICAgICAgc2Vzc2lvbjogeyB2YWx1ZTogWydBJ10gfSxcbiAgICAgICAgICAgIG9uQ2hvaWNlQ2hhbmdlZCxcbiAgICAgICAgICB9KX1cbiAgICAgICAgLz4sXG4gICAgICApO1xuXG4gICAgICBmaXJlRXZlbnQuY2xpY2soZ2V0QnlUZXN0SWQoJ3NlbGVjdC1CJykpO1xuXG4gICAgICBleHBlY3Qob25DaG9pY2VDaGFuZ2VkKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IHZhbHVlOiAnQicsIHNlbGVjdGVkOiB0cnVlLCBzZWxlY3RvcjogJ01vdXNlJyB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ21heFNlbGVjdGlvbnM6IDEsIGNob2ljZU1vZGU6IHJhZGlvJywgKCkgPT4ge1xuICAgIGl0KCdhbGxvd3Mgc2VsZWN0aW5nIGEgZmlyc3QgYW5zd2VyJywgKCkgPT4ge1xuICAgICAgY29uc3Qgb25DaG9pY2VDaGFuZ2VkID0gamVzdC5mbigpO1xuICAgICAgY29uc3QgeyBnZXRCeVRlc3RJZCB9ID0gcmVuZGVyKFxuICAgICAgICA8TXVsdGlwbGVDaG9pY2Ugey4uLmRlZmF1bHRQcm9wcyh7IG1heFNlbGVjdGlvbnM6IDEsIG9uQ2hvaWNlQ2hhbmdlZCB9KX0gLz4sXG4gICAgICApO1xuXG4gICAgICBmaXJlRXZlbnQuY2xpY2soZ2V0QnlUZXN0SWQoJ3NlbGVjdC1BJykpO1xuXG4gICAgICBleHBlY3Qob25DaG9pY2VDaGFuZ2VkKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IHZhbHVlOiAnQScsIHNlbGVjdGVkOiB0cnVlLCBzZWxlY3RvcjogJ01vdXNlJyB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdhbGxvd3Mgc3dpdGNoaW5nIHRvIGEgZGlmZmVyZW50IGFuc3dlciBhZnRlciBvbmUgaXMgYWxyZWFkeSBzZWxlY3RlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IG9uQ2hvaWNlQ2hhbmdlZCA9IGplc3QuZm4oKTtcbiAgICAgIGNvbnN0IHsgZ2V0QnlUZXN0SWQgfSA9IHJlbmRlcihcbiAgICAgICAgPE11bHRpcGxlQ2hvaWNlXG4gICAgICAgICAgey4uLmRlZmF1bHRQcm9wcyh7XG4gICAgICAgICAgICBtYXhTZWxlY3Rpb25zOiAxLFxuICAgICAgICAgICAgc2Vzc2lvbjogeyB2YWx1ZTogWydBJ10gfSxcbiAgICAgICAgICAgIG9uQ2hvaWNlQ2hhbmdlZCxcbiAgICAgICAgICB9KX1cbiAgICAgICAgLz4sXG4gICAgICApO1xuXG4gICAgICBmaXJlRXZlbnQuY2xpY2soZ2V0QnlUZXN0SWQoJ3NlbGVjdC1CJykpO1xuXG4gICAgICBleHBlY3Qob25DaG9pY2VDaGFuZ2VkKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IHZhbHVlOiAnQicsIHNlbGVjdGVkOiB0cnVlLCBzZWxlY3RvcjogJ01vdXNlJyB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ21heFNlbGVjdGlvbnM6IDIsIGNob2ljZU1vZGU6IGNoZWNrYm94JywgKCkgPT4ge1xuICAgIGl0KCdhbGxvd3Mgc2VsZWN0aW5nIHVwIHRvIHRoZSBsaW1pdCcsICgpID0+IHtcbiAgICAgIGNvbnN0IG9uQ2hvaWNlQ2hhbmdlZCA9IGplc3QuZm4oKTtcbiAgICAgIGNvbnN0IHsgZ2V0QnlUZXN0SWQgfSA9IHJlbmRlcihcbiAgICAgICAgPE11bHRpcGxlQ2hvaWNlXG4gICAgICAgICAgey4uLmRlZmF1bHRQcm9wcyh7XG4gICAgICAgICAgICBjaG9pY2VNb2RlOiAnY2hlY2tib3gnLFxuICAgICAgICAgICAgbWF4U2VsZWN0aW9uczogMixcbiAgICAgICAgICAgIHNlc3Npb246IHsgdmFsdWU6IFsnQSddIH0sXG4gICAgICAgICAgICBvbkNob2ljZUNoYW5nZWQsXG4gICAgICAgICAgfSl9XG4gICAgICAgIC8+LFxuICAgICAgKTtcblxuICAgICAgZmlyZUV2ZW50LmNsaWNrKGdldEJ5VGVzdElkKCdzZWxlY3QtQicpKTtcblxuICAgICAgZXhwZWN0KG9uQ2hvaWNlQ2hhbmdlZCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoeyB2YWx1ZTogJ0InLCBzZWxlY3RlZDogdHJ1ZSwgc2VsZWN0b3I6ICdNb3VzZScgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnYmxvY2tzIHNlbGVjdGluZyBiZXlvbmQgdGhlIGxpbWl0JywgKCkgPT4ge1xuICAgICAgY29uc3Qgb25DaG9pY2VDaGFuZ2VkID0gamVzdC5mbigpO1xuICAgICAgY29uc3QgeyBnZXRCeVRlc3RJZCB9ID0gcmVuZGVyKFxuICAgICAgICA8TXVsdGlwbGVDaG9pY2VcbiAgICAgICAgICB7Li4uZGVmYXVsdFByb3BzKHtcbiAgICAgICAgICAgIGNob2ljZU1vZGU6ICdjaGVja2JveCcsXG4gICAgICAgICAgICBtYXhTZWxlY3Rpb25zOiAyLFxuICAgICAgICAgICAgc2Vzc2lvbjogeyB2YWx1ZTogWydBJywgJ0InXSB9LFxuICAgICAgICAgICAgb25DaG9pY2VDaGFuZ2VkLFxuICAgICAgICAgIH0pfVxuICAgICAgICAvPixcbiAgICAgICk7XG5cbiAgICAgIGZpcmVFdmVudC5jbGljayhnZXRCeVRlc3RJZCgnc2VsZWN0LUMnKSk7XG5cbiAgICAgIGV4cGVjdChvbkNob2ljZUNoYW5nZWQpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnYWxsb3dzIGRlc2VsZWN0aW5nIHdoZW4gYXQgdGhlIGxpbWl0JywgKCkgPT4ge1xuICAgICAgY29uc3Qgb25DaG9pY2VDaGFuZ2VkID0gamVzdC5mbigpO1xuICAgICAgY29uc3QgeyBnZXRCeVRlc3RJZCB9ID0gcmVuZGVyKFxuICAgICAgICA8TXVsdGlwbGVDaG9pY2VcbiAgICAgICAgICB7Li4uZGVmYXVsdFByb3BzKHtcbiAgICAgICAgICAgIGNob2ljZU1vZGU6ICdjaGVja2JveCcsXG4gICAgICAgICAgICBtYXhTZWxlY3Rpb25zOiAyLFxuICAgICAgICAgICAgc2Vzc2lvbjogeyB2YWx1ZTogWydBJywgJ0InXSB9LFxuICAgICAgICAgICAgb25DaG9pY2VDaGFuZ2VkLFxuICAgICAgICAgIH0pfVxuICAgICAgICAvPixcbiAgICAgICk7XG5cbiAgICAgIGZpcmVFdmVudC5jbGljayhnZXRCeVRlc3RJZCgnZGVzZWxlY3QtQScpKTtcblxuICAgICAgZXhwZWN0KG9uQ2hvaWNlQ2hhbmdlZCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoeyB2YWx1ZTogJ0EnLCBzZWxlY3RlZDogZmFsc2UsIHNlbGVjdG9yOiAnTW91c2UnIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFD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