@dxc-technology/halstack-react 0.0.0-4dc6bb3 → 0.0.0-4dc980c
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.
- package/HalstackContext.js +7 -8
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +16 -15
- package/checkbox/Checkbox.stories.tsx +79 -59
- package/checkbox/types.d.ts +4 -0
- package/common/variables.js +19 -15
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +258 -0
- package/date-input/DateInput.js +77 -222
- package/date-input/DateInput.stories.tsx +30 -17
- package/date-input/DateInput.test.js +411 -138
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +160 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +115 -0
- package/date-input/types.d.ts +53 -0
- package/dropdown/Dropdown.js +32 -29
- package/dropdown/Dropdown.test.js +17 -22
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +177 -219
- package/file-input/FileInput.stories.tsx +38 -10
- package/file-input/FileInput.test.js +53 -12
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +38 -63
- package/file-input/types.d.ts +17 -0
- package/flex/Flex.d.ts +1 -1
- package/flex/Flex.js +31 -19
- package/flex/types.d.ts +14 -3
- package/link/Link.js +1 -1
- package/number-input/NumberInput.test.js +42 -6
- package/package.json +7 -12
- package/paginator/Paginator.js +2 -2
- package/paginator/Paginator.test.js +1 -1
- package/quick-nav/QuickNav.js +3 -1
- package/quick-nav/QuickNav.stories.tsx +67 -25
- package/radio-group/RadioGroup.js +9 -5
- package/radio-group/RadioGroup.test.js +116 -59
- package/resultsetTable/Icons.d.ts +7 -0
- package/resultsetTable/Icons.js +51 -0
- package/resultsetTable/ResultsetTable.js +48 -107
- package/resultsetTable/ResultsetTable.stories.tsx +50 -25
- package/resultsetTable/ResultsetTable.test.js +23 -41
- package/resultsetTable/types.d.ts +2 -2
- package/select/Select.js +1 -0
- package/select/Select.stories.tsx +2 -5
- package/select/Select.test.js +267 -209
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +9 -8
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +2 -2
- package/switch/Switch.d.ts +3 -3
- package/switch/Switch.js +5 -4
- package/switch/types.d.ts +6 -1
- package/table/Table.js +1 -1
- package/table/Table.test.js +1 -1
- package/tabs/Tabs.js +3 -3
- package/tabs/Tabs.stories.tsx +0 -1
- package/text-input/TextInput.js +9 -5
- package/text-input/TextInput.test.js +558 -648
- package/common/RequiredComponent.js +0 -32
|
@@ -401,27 +401,16 @@ describe("TextInput component tests", function () {
|
|
|
401
401
|
value: "Blur test"
|
|
402
402
|
});
|
|
403
403
|
});
|
|
404
|
-
test("Clear action tooltip is correct",
|
|
405
|
-
var _render10,
|
|
404
|
+
test("Clear action tooltip is correct", function () {
|
|
405
|
+
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
406
|
+
label: "Input label",
|
|
407
|
+
value: "Text",
|
|
408
|
+
clearable: true
|
|
409
|
+
})),
|
|
410
|
+
getByTitle = _render10.getByTitle;
|
|
406
411
|
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
switch (_context.prev = _context.next) {
|
|
410
|
-
case 0:
|
|
411
|
-
_render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
412
|
-
label: "Input label",
|
|
413
|
-
value: "Text",
|
|
414
|
-
clearable: true
|
|
415
|
-
})), getByTitle = _render10.getByTitle;
|
|
416
|
-
expect(getByTitle("Clear field")).toBeTruthy();
|
|
417
|
-
|
|
418
|
-
case 2:
|
|
419
|
-
case "end":
|
|
420
|
-
return _context.stop();
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
}, _callee);
|
|
424
|
-
})));
|
|
412
|
+
expect(getByTitle("Clear field")).toBeTruthy();
|
|
413
|
+
});
|
|
425
414
|
test("Clear action onClick cleans the input", function () {
|
|
426
415
|
var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
427
416
|
label: "Input label",
|
|
@@ -553,13 +542,70 @@ describe("TextInput component tests", function () {
|
|
|
553
542
|
|
|
554
543
|
expect(onClick).toHaveBeenCalled();
|
|
555
544
|
});
|
|
545
|
+
test("Text input submit correctly value in form", function () {
|
|
546
|
+
var onClick = jest.fn();
|
|
547
|
+
var action = {
|
|
548
|
+
onClick: onClick,
|
|
549
|
+
icon: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
550
|
+
"data-testid": "image",
|
|
551
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
552
|
+
height: "24px",
|
|
553
|
+
viewBox: "0 0 24 24",
|
|
554
|
+
width: "24px",
|
|
555
|
+
fill: "currentColor"
|
|
556
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
557
|
+
d: "M0 0h24v24H0V0z",
|
|
558
|
+
fill: "none"
|
|
559
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
560
|
+
d: "M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"
|
|
561
|
+
})),
|
|
562
|
+
title: "Search"
|
|
563
|
+
};
|
|
564
|
+
var handlerOnSubmit = jest.fn(function (e) {
|
|
565
|
+
e.preventDefault();
|
|
566
|
+
var formData = new FormData(e.target);
|
|
567
|
+
var formProps = Object.fromEntries(formData);
|
|
568
|
+
expect(formProps).toStrictEqual({
|
|
569
|
+
data: "test"
|
|
570
|
+
});
|
|
571
|
+
});
|
|
572
|
+
|
|
573
|
+
var _render17 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement("form", {
|
|
574
|
+
onSubmit: handlerOnSubmit
|
|
575
|
+
}, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
576
|
+
label: "Input label",
|
|
577
|
+
name: "data",
|
|
578
|
+
action: action
|
|
579
|
+
}), /*#__PURE__*/_react["default"].createElement("button", {
|
|
580
|
+
type: "submit"
|
|
581
|
+
}, "Submit"))),
|
|
582
|
+
getByText = _render17.getByText,
|
|
583
|
+
getAllByRole = _render17.getAllByRole,
|
|
584
|
+
getByRole = _render17.getByRole;
|
|
585
|
+
|
|
586
|
+
var search = getAllByRole("button")[0];
|
|
587
|
+
var submit = getByText("Submit");
|
|
588
|
+
var input = getByRole("textbox");
|
|
589
|
+
|
|
590
|
+
_userEvent["default"].type(input, "test");
|
|
591
|
+
|
|
592
|
+
expect(input.value).toBe("test");
|
|
593
|
+
|
|
594
|
+
_userEvent["default"].click(search);
|
|
595
|
+
|
|
596
|
+
expect(handlerOnSubmit).not.toHaveBeenCalled();
|
|
597
|
+
|
|
598
|
+
_userEvent["default"].click(submit);
|
|
599
|
+
|
|
600
|
+
expect(handlerOnSubmit).toHaveBeenCalled();
|
|
601
|
+
});
|
|
556
602
|
test("Renders with correct prefix and suffix", function () {
|
|
557
|
-
var
|
|
603
|
+
var _render18 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
558
604
|
label: "Input label",
|
|
559
605
|
prefix: "+34",
|
|
560
606
|
suffix: "USD"
|
|
561
607
|
})),
|
|
562
|
-
getByText =
|
|
608
|
+
getByText = _render18.getByText;
|
|
563
609
|
|
|
564
610
|
expect(getByText("+34")).toBeTruthy();
|
|
565
611
|
expect(getByText("USD")).toBeTruthy();
|
|
@@ -584,13 +630,13 @@ describe("TextInput component tests", function () {
|
|
|
584
630
|
title: "Search"
|
|
585
631
|
};
|
|
586
632
|
|
|
587
|
-
var
|
|
633
|
+
var _render19 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
588
634
|
label: "Example label",
|
|
589
635
|
clearable: true,
|
|
590
636
|
action: action
|
|
591
637
|
})),
|
|
592
|
-
getByRole =
|
|
593
|
-
getAllByRole =
|
|
638
|
+
getByRole = _render19.getByRole,
|
|
639
|
+
getAllByRole = _render19.getAllByRole;
|
|
594
640
|
|
|
595
641
|
var input = getByRole("textbox");
|
|
596
642
|
expect(input.getAttribute("aria-autocomplete")).toBeNull();
|
|
@@ -610,13 +656,13 @@ describe("TextInput component tests", function () {
|
|
|
610
656
|
expect(search.getAttribute("aria-label")).toBe("Search");
|
|
611
657
|
});
|
|
612
658
|
test("Autosuggest has correct accesibility attributes", function () {
|
|
613
|
-
var
|
|
659
|
+
var _render20 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
614
660
|
label: "Autocomplete Countries",
|
|
615
661
|
optional: true,
|
|
616
662
|
suggestions: countries
|
|
617
663
|
})),
|
|
618
|
-
getByRole =
|
|
619
|
-
getAllByRole =
|
|
664
|
+
getByRole = _render20.getByRole,
|
|
665
|
+
getAllByRole = _render20.getAllByRole;
|
|
620
666
|
|
|
621
667
|
var input = getByRole("combobox");
|
|
622
668
|
expect(input.getAttribute("aria-autocomplete")).toBe("list");
|
|
@@ -634,115 +680,90 @@ describe("TextInput component tests", function () {
|
|
|
634
680
|
});
|
|
635
681
|
});
|
|
636
682
|
describe("TextInput component synchronous autosuggest tests", function () {
|
|
637
|
-
test("Autosuggest is displayed when the input gains focus",
|
|
638
|
-
var onChange
|
|
683
|
+
test("Autosuggest is displayed when the input gains focus", function () {
|
|
684
|
+
var onChange = jest.fn();
|
|
639
685
|
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
suggestions: countries,
|
|
648
|
-
onChange: onChange
|
|
649
|
-
})), getByRole = _render20.getByRole, getByText = _render20.getByText;
|
|
650
|
-
input = getByRole("combobox");
|
|
686
|
+
var _render21 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
687
|
+
label: "Autocomplete Countries",
|
|
688
|
+
suggestions: countries,
|
|
689
|
+
onChange: onChange
|
|
690
|
+
})),
|
|
691
|
+
getByRole = _render21.getByRole,
|
|
692
|
+
getByText = _render21.getByText;
|
|
651
693
|
|
|
652
|
-
|
|
694
|
+
var input = getByRole("combobox");
|
|
653
695
|
|
|
654
|
-
|
|
655
|
-
expect(list).toBeTruthy();
|
|
656
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
657
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
658
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
659
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
696
|
+
_react2.fireEvent.focus(input);
|
|
660
697
|
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
})
|
|
668
|
-
test("Autosuggest is displayed when the user clicks the input",
|
|
669
|
-
var onChange
|
|
698
|
+
var list = getByRole("listbox");
|
|
699
|
+
expect(list).toBeTruthy();
|
|
700
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
701
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
702
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
703
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
704
|
+
});
|
|
705
|
+
test("Autosuggest is displayed when the user clicks the input", function () {
|
|
706
|
+
var onChange = jest.fn();
|
|
670
707
|
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
suggestions: countries,
|
|
679
|
-
onChange: onChange
|
|
680
|
-
})), getByRole = _render21.getByRole, getByText = _render21.getByText;
|
|
681
|
-
input = getByRole("combobox");
|
|
708
|
+
var _render22 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
709
|
+
label: "Autocomplete Countries",
|
|
710
|
+
suggestions: countries,
|
|
711
|
+
onChange: onChange
|
|
712
|
+
})),
|
|
713
|
+
getByRole = _render22.getByRole,
|
|
714
|
+
getByText = _render22.getByText;
|
|
682
715
|
|
|
683
|
-
|
|
716
|
+
var input = getByRole("combobox");
|
|
684
717
|
|
|
685
|
-
|
|
686
|
-
expect(list).toBeTruthy();
|
|
687
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
688
|
-
expect(getByText("Albania")).toBeTruthy();
|
|
689
|
-
expect(getByText("Algeria")).toBeTruthy();
|
|
690
|
-
expect(getByText("Andorra")).toBeTruthy();
|
|
718
|
+
_react2.fireEvent.focus(input);
|
|
691
719
|
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
})
|
|
699
|
-
test("Autosuggest is displayed while the user is writing (if closed previously, if it is open stays open)",
|
|
700
|
-
var onChange
|
|
720
|
+
var list = getByRole("listbox");
|
|
721
|
+
expect(list).toBeTruthy();
|
|
722
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
723
|
+
expect(getByText("Albania")).toBeTruthy();
|
|
724
|
+
expect(getByText("Algeria")).toBeTruthy();
|
|
725
|
+
expect(getByText("Andorra")).toBeTruthy();
|
|
726
|
+
});
|
|
727
|
+
test("Autosuggest is displayed while the user is writing (if closed previously, if it is open stays open)", function () {
|
|
728
|
+
var onChange = jest.fn();
|
|
701
729
|
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
})), getByRole = _render22.getByRole, queryByRole = _render22.queryByRole, getByText = _render22.getByText, getAllByText = _render22.getAllByText;
|
|
712
|
-
input = getByRole("combobox");
|
|
730
|
+
var _render23 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
731
|
+
label: "Autocomplete Countries",
|
|
732
|
+
suggestions: countries,
|
|
733
|
+
onChange: onChange
|
|
734
|
+
})),
|
|
735
|
+
getByRole = _render23.getByRole,
|
|
736
|
+
queryByRole = _render23.queryByRole,
|
|
737
|
+
getByText = _render23.getByText,
|
|
738
|
+
getAllByText = _render23.getAllByText;
|
|
713
739
|
|
|
714
|
-
|
|
740
|
+
var input = getByRole("combobox");
|
|
715
741
|
|
|
716
|
-
|
|
717
|
-
expect(list).toBeTruthy();
|
|
742
|
+
_react2.fireEvent.focus(input);
|
|
718
743
|
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
code: "Esc",
|
|
722
|
-
keyCode: 27,
|
|
723
|
-
charCode: 27
|
|
724
|
-
});
|
|
744
|
+
var list = getByRole("listbox");
|
|
745
|
+
expect(list).toBeTruthy();
|
|
725
746
|
|
|
726
|
-
|
|
747
|
+
_react2.fireEvent.keyDown(input, {
|
|
748
|
+
key: "Esc",
|
|
749
|
+
code: "Esc",
|
|
750
|
+
keyCode: 27,
|
|
751
|
+
charCode: 27
|
|
752
|
+
});
|
|
727
753
|
|
|
728
|
-
|
|
754
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
729
755
|
|
|
730
|
-
|
|
731
|
-
expect(getAllByText("B").length).toBe(4);
|
|
732
|
-
expect(getByText("ahamas")).toBeTruthy();
|
|
733
|
-
expect(getByText("ahrain")).toBeTruthy();
|
|
734
|
-
expect(getByText("angladesh")).toBeTruthy();
|
|
735
|
-
expect(getByText("arbados")).toBeTruthy();
|
|
756
|
+
_userEvent["default"].type(input, "B");
|
|
736
757
|
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
})
|
|
758
|
+
expect(list).toBeTruthy();
|
|
759
|
+
expect(getAllByText("B").length).toBe(4);
|
|
760
|
+
expect(getByText("ahamas")).toBeTruthy();
|
|
761
|
+
expect(getByText("ahrain")).toBeTruthy();
|
|
762
|
+
expect(getByText("angladesh")).toBeTruthy();
|
|
763
|
+
expect(getByText("arbados")).toBeTruthy();
|
|
764
|
+
});
|
|
744
765
|
test("Autosuggest displays filtered when the input has a default value", function () {
|
|
745
|
-
var
|
|
766
|
+
var _render24 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
746
767
|
label: "Uncontrolled suggestions filtered by default",
|
|
747
768
|
helperText: "Example of helper text",
|
|
748
769
|
placeholder: "Placeholder",
|
|
@@ -751,9 +772,9 @@ describe("TextInput component synchronous autosuggest tests", function () {
|
|
|
751
772
|
suggestions: ["Suggestion 11", "Suggestion 12", "Suggestion 23", "Suggestion 24"],
|
|
752
773
|
clearable: true
|
|
753
774
|
})),
|
|
754
|
-
getByRole =
|
|
755
|
-
getByText =
|
|
756
|
-
getAllByText =
|
|
775
|
+
getByRole = _render24.getByRole,
|
|
776
|
+
getByText = _render24.getByText,
|
|
777
|
+
getAllByText = _render24.getAllByText;
|
|
757
778
|
|
|
758
779
|
var input = getByRole("combobox");
|
|
759
780
|
expect(input.value).toBe("Suggestion 2");
|
|
@@ -764,517 +785,412 @@ describe("TextInput component synchronous autosuggest tests", function () {
|
|
|
764
785
|
expect(getByText("3")).toBeTruthy();
|
|
765
786
|
expect(getByText("4")).toBeTruthy();
|
|
766
787
|
});
|
|
767
|
-
test("Autosuggest is not displayed when prop suggestions is an empty array",
|
|
768
|
-
var onChange
|
|
788
|
+
test("Autosuggest is not displayed when prop suggestions is an empty array", function () {
|
|
789
|
+
var onChange = jest.fn();
|
|
769
790
|
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
label: "Autocomplete Countries",
|
|
777
|
-
suggestions: [],
|
|
778
|
-
onChange: onChange
|
|
779
|
-
})), queryByRole = _render24.queryByRole;
|
|
780
|
-
input = queryByRole("textbox");
|
|
791
|
+
var _render25 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
792
|
+
label: "Autocomplete Countries",
|
|
793
|
+
suggestions: [],
|
|
794
|
+
onChange: onChange
|
|
795
|
+
})),
|
|
796
|
+
queryByRole = _render25.queryByRole;
|
|
781
797
|
|
|
782
|
-
|
|
798
|
+
var input = queryByRole("textbox");
|
|
783
799
|
|
|
784
|
-
|
|
800
|
+
_react2.fireEvent.focus(input);
|
|
785
801
|
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
}
|
|
791
|
-
}, _callee5);
|
|
792
|
-
})));
|
|
793
|
-
test("Autosuggest closes the listbox when there are no matches for the user's input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
794
|
-
var onChange, _render25, getByRole, queryByRole, getByText, input, list;
|
|
802
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
803
|
+
});
|
|
804
|
+
test("Autosuggest closes the listbox when there are no matches for the user's input", function () {
|
|
805
|
+
var onChange = jest.fn();
|
|
795
806
|
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
onChange: onChange
|
|
805
|
-
})), getByRole = _render25.getByRole, queryByRole = _render25.queryByRole, getByText = _render25.getByText;
|
|
806
|
-
input = getByRole("combobox");
|
|
807
|
+
var _render26 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
808
|
+
label: "Autocomplete Countries",
|
|
809
|
+
suggestions: countries,
|
|
810
|
+
onChange: onChange
|
|
811
|
+
})),
|
|
812
|
+
getByRole = _render26.getByRole,
|
|
813
|
+
queryByRole = _render26.queryByRole,
|
|
814
|
+
getByText = _render26.getByText;
|
|
807
815
|
|
|
808
|
-
|
|
816
|
+
var input = getByRole("combobox");
|
|
809
817
|
|
|
810
|
-
|
|
811
|
-
expect(list).toBeTruthy();
|
|
812
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
818
|
+
_react2.fireEvent.focus(input);
|
|
813
819
|
|
|
814
|
-
|
|
820
|
+
var list = getByRole("listbox");
|
|
821
|
+
expect(list).toBeTruthy();
|
|
822
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
815
823
|
|
|
816
|
-
|
|
824
|
+
_userEvent["default"].type(input, "x");
|
|
817
825
|
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
}
|
|
823
|
-
}, _callee6);
|
|
824
|
-
})));
|
|
825
|
-
test("Autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
|
826
|
-
var onChange, _render26, getByRole, queryByRole, getByText, input, list;
|
|
826
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
827
|
+
});
|
|
828
|
+
test("Autosuggest with no matches founded doesn't let the listbox to be opened", function () {
|
|
829
|
+
var onChange = jest.fn();
|
|
827
830
|
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
onChange: onChange
|
|
837
|
-
})), getByRole = _render26.getByRole, queryByRole = _render26.queryByRole, getByText = _render26.getByText;
|
|
838
|
-
input = getByRole("combobox");
|
|
831
|
+
var _render27 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
832
|
+
label: "Autocomplete Countries",
|
|
833
|
+
suggestions: countries,
|
|
834
|
+
onChange: onChange
|
|
835
|
+
})),
|
|
836
|
+
getByRole = _render27.getByRole,
|
|
837
|
+
queryByRole = _render27.queryByRole,
|
|
838
|
+
getByText = _render27.getByText;
|
|
839
839
|
|
|
840
|
-
|
|
840
|
+
var input = getByRole("combobox");
|
|
841
841
|
|
|
842
|
-
|
|
843
|
-
expect(list).toBeTruthy();
|
|
844
|
-
expect(getByText("Afghanistan")).toBeTruthy();
|
|
842
|
+
_react2.fireEvent.focus(input);
|
|
845
843
|
|
|
846
|
-
|
|
844
|
+
var list = getByRole("listbox");
|
|
845
|
+
expect(list).toBeTruthy();
|
|
846
|
+
expect(getByText("Afghanistan")).toBeTruthy();
|
|
847
847
|
|
|
848
|
-
|
|
848
|
+
_userEvent["default"].type(input, "x");
|
|
849
849
|
|
|
850
|
-
|
|
850
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
851
851
|
|
|
852
|
-
|
|
852
|
+
_react2.fireEvent.focus(input);
|
|
853
853
|
|
|
854
|
-
|
|
855
|
-
key: "ArrowUp",
|
|
856
|
-
code: "ArrowUp",
|
|
857
|
-
keyCode: 38,
|
|
858
|
-
charCode: 38
|
|
859
|
-
});
|
|
854
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
860
855
|
|
|
861
|
-
|
|
856
|
+
_react2.fireEvent.keyDown(input, {
|
|
857
|
+
key: "ArrowUp",
|
|
858
|
+
code: "ArrowUp",
|
|
859
|
+
keyCode: 38,
|
|
860
|
+
charCode: 38
|
|
861
|
+
});
|
|
862
862
|
|
|
863
|
-
|
|
864
|
-
key: "ArrowDown",
|
|
865
|
-
code: "ArrowDown",
|
|
866
|
-
keyCode: 40,
|
|
867
|
-
charCode: 40
|
|
868
|
-
});
|
|
863
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
869
864
|
|
|
870
|
-
|
|
865
|
+
_react2.fireEvent.keyDown(input, {
|
|
866
|
+
key: "ArrowDown",
|
|
867
|
+
code: "ArrowDown",
|
|
868
|
+
keyCode: 40,
|
|
869
|
+
charCode: 40
|
|
870
|
+
});
|
|
871
871
|
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
}
|
|
877
|
-
}, _callee7);
|
|
878
|
-
})));
|
|
879
|
-
test("Autosuggest uncontrolled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
|
|
880
|
-
var onChange, _render27, getByRole, getByText, queryByRole, input;
|
|
872
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
873
|
+
});
|
|
874
|
+
test("Autosuggest uncontrolled - Suggestion selected by click", function () {
|
|
875
|
+
var onChange = jest.fn();
|
|
881
876
|
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
onChange: onChange
|
|
891
|
-
})), getByRole = _render27.getByRole, getByText = _render27.getByText, queryByRole = _render27.queryByRole;
|
|
892
|
-
input = getByRole("combobox");
|
|
877
|
+
var _render28 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
878
|
+
label: "Autocomplete Countries",
|
|
879
|
+
suggestions: countries,
|
|
880
|
+
onChange: onChange
|
|
881
|
+
})),
|
|
882
|
+
getByRole = _render28.getByRole,
|
|
883
|
+
getByText = _render28.getByText,
|
|
884
|
+
queryByRole = _render28.queryByRole;
|
|
893
885
|
|
|
894
|
-
|
|
886
|
+
var input = getByRole("combobox");
|
|
895
887
|
|
|
896
|
-
|
|
888
|
+
_react2.fireEvent.focus(input);
|
|
897
889
|
|
|
898
|
-
|
|
899
|
-
expect(getByText("Alba")).toBeTruthy();
|
|
900
|
-
expect(getByText("nia")).toBeTruthy();
|
|
890
|
+
_userEvent["default"].type(input, "Alba");
|
|
901
891
|
|
|
902
|
-
|
|
892
|
+
expect(onChange).toHaveBeenCalled();
|
|
893
|
+
expect(getByText("Alba")).toBeTruthy();
|
|
894
|
+
expect(getByText("nia")).toBeTruthy();
|
|
903
895
|
|
|
904
|
-
|
|
905
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
896
|
+
_userEvent["default"].click(getByRole("option"));
|
|
906
897
|
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
}, _callee8);
|
|
913
|
-
})));
|
|
914
|
-
test("Autosuggest controlled - Suggestion selected by click", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
|
|
915
|
-
var onChange, _render28, getByRole, getByText, queryByRole, input;
|
|
898
|
+
expect(input.value).toBe("Albania");
|
|
899
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
900
|
+
});
|
|
901
|
+
test("Autosuggest controlled - Suggestion selected by click", function () {
|
|
902
|
+
var onChange = jest.fn();
|
|
916
903
|
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
onChange: onChange
|
|
927
|
-
})), getByRole = _render28.getByRole, getByText = _render28.getByText, queryByRole = _render28.queryByRole;
|
|
928
|
-
input = getByRole("combobox");
|
|
904
|
+
var _render29 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
905
|
+
label: "Autocomplete Countries",
|
|
906
|
+
value: "Andor",
|
|
907
|
+
suggestions: countries,
|
|
908
|
+
onChange: onChange
|
|
909
|
+
})),
|
|
910
|
+
getByRole = _render29.getByRole,
|
|
911
|
+
getByText = _render29.getByText,
|
|
912
|
+
queryByRole = _render29.queryByRole;
|
|
929
913
|
|
|
930
|
-
|
|
914
|
+
var input = getByRole("combobox");
|
|
931
915
|
|
|
932
|
-
|
|
933
|
-
expect(getByText("Andor")).toBeTruthy();
|
|
934
|
-
expect(getByText("ra")).toBeTruthy();
|
|
916
|
+
_userEvent["default"].click(getByText("Autocomplete Countries"));
|
|
935
917
|
|
|
936
|
-
|
|
918
|
+
expect(input.value).toBe("Andor");
|
|
919
|
+
expect(getByText("Andor")).toBeTruthy();
|
|
920
|
+
expect(getByText("ra")).toBeTruthy();
|
|
937
921
|
|
|
938
|
-
|
|
939
|
-
value: "Andorra"
|
|
940
|
-
});
|
|
941
|
-
expect(queryByRole("listbox")).toBeFalsy();
|
|
922
|
+
_userEvent["default"].click(getByRole("option"));
|
|
942
923
|
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
var onChange, onBlur, _render29, getByRole, getByText, input;
|
|
924
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
925
|
+
value: "Andorra"
|
|
926
|
+
});
|
|
927
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
928
|
+
});
|
|
929
|
+
test("Autosuggest - Pattern constraint", function () {
|
|
930
|
+
var onChange = jest.fn();
|
|
931
|
+
var onBlur = jest.fn();
|
|
952
932
|
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
onChange: onChange,
|
|
963
|
-
onBlur: onBlur,
|
|
964
|
-
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
965
|
-
})), getByRole = _render29.getByRole, getByText = _render29.getByText;
|
|
966
|
-
input = getByRole("combobox");
|
|
933
|
+
var _render30 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
934
|
+
label: "Autocomplete Countries",
|
|
935
|
+
suggestions: countries,
|
|
936
|
+
onChange: onChange,
|
|
937
|
+
onBlur: onBlur,
|
|
938
|
+
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
939
|
+
})),
|
|
940
|
+
getByRole = _render30.getByRole,
|
|
941
|
+
getByText = _render30.getByText;
|
|
967
942
|
|
|
968
|
-
|
|
943
|
+
var input = getByRole("combobox");
|
|
969
944
|
|
|
970
|
-
|
|
945
|
+
_react2.fireEvent.focus(input);
|
|
971
946
|
|
|
972
|
-
|
|
973
|
-
expect(getByText("ra")).toBeTruthy();
|
|
947
|
+
_userEvent["default"].type(input, "Andor");
|
|
974
948
|
|
|
975
|
-
|
|
949
|
+
expect(getByText("Andor")).toBeTruthy();
|
|
950
|
+
expect(getByText("ra")).toBeTruthy();
|
|
976
951
|
|
|
977
|
-
|
|
978
|
-
value: "Andorra",
|
|
979
|
-
error: "Please match the format requested."
|
|
980
|
-
});
|
|
952
|
+
_userEvent["default"].click(getByRole("option"));
|
|
981
953
|
|
|
982
|
-
|
|
954
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
955
|
+
value: "Andorra",
|
|
956
|
+
error: "Please match the format requested."
|
|
957
|
+
});
|
|
983
958
|
|
|
984
|
-
|
|
985
|
-
value: "Andorra",
|
|
986
|
-
error: "Please match the format requested."
|
|
987
|
-
});
|
|
959
|
+
_react2.fireEvent.blur(input);
|
|
988
960
|
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
var onChange, onBlur, _render30, getByText, getByRole, input;
|
|
961
|
+
expect(onBlur).toHaveBeenCalledWith({
|
|
962
|
+
value: "Andorra",
|
|
963
|
+
error: "Please match the format requested."
|
|
964
|
+
});
|
|
965
|
+
});
|
|
966
|
+
test("Autosuggest - Length constraint", function () {
|
|
967
|
+
var onChange = jest.fn();
|
|
968
|
+
var onBlur = jest.fn();
|
|
998
969
|
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
onBlur: onBlur,
|
|
1010
|
-
minLength: 5,
|
|
1011
|
-
maxLength: 10
|
|
1012
|
-
})), getByText = _render30.getByText, getByRole = _render30.getByRole;
|
|
1013
|
-
input = getByRole("combobox");
|
|
970
|
+
var _render31 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
971
|
+
label: "Autocomplete Countries",
|
|
972
|
+
suggestions: countries,
|
|
973
|
+
onChange: onChange,
|
|
974
|
+
onBlur: onBlur,
|
|
975
|
+
minLength: 5,
|
|
976
|
+
maxLength: 10
|
|
977
|
+
})),
|
|
978
|
+
getByText = _render31.getByText,
|
|
979
|
+
getByRole = _render31.getByRole;
|
|
1014
980
|
|
|
1015
|
-
|
|
981
|
+
var input = getByRole("combobox");
|
|
1016
982
|
|
|
1017
|
-
|
|
983
|
+
_react2.fireEvent.focus(input);
|
|
1018
984
|
|
|
1019
|
-
|
|
1020
|
-
expect(getByText("d")).toBeTruthy();
|
|
985
|
+
_userEvent["default"].type(input, "Cha");
|
|
1021
986
|
|
|
1022
|
-
|
|
987
|
+
expect(getByText("Cha")).toBeTruthy();
|
|
988
|
+
expect(getByText("d")).toBeTruthy();
|
|
1023
989
|
|
|
1024
|
-
|
|
1025
|
-
value: "Cha",
|
|
1026
|
-
error: "Min length 5, max length 10."
|
|
1027
|
-
});
|
|
990
|
+
_userEvent["default"].click(getByRole("option"));
|
|
1028
991
|
|
|
1029
|
-
|
|
992
|
+
expect(onChange).toHaveBeenCalledWith({
|
|
993
|
+
value: "Cha",
|
|
994
|
+
error: "Min length 5, max length 10."
|
|
995
|
+
});
|
|
1030
996
|
|
|
1031
|
-
|
|
1032
|
-
value: "Chad",
|
|
1033
|
-
error: "Min length 5, max length 10."
|
|
1034
|
-
});
|
|
997
|
+
_react2.fireEvent.blur(input);
|
|
1035
998
|
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
|
|
1044
|
-
var onChange, _render31, getByRole, queryByRole, input, list;
|
|
999
|
+
expect(onBlur).toHaveBeenCalledWith({
|
|
1000
|
+
value: "Chad",
|
|
1001
|
+
error: "Min length 5, max length 10."
|
|
1002
|
+
});
|
|
1003
|
+
});
|
|
1004
|
+
test("Autosuggest keys: arrow down key opens autosuggest, active first option is selected with Enter and closes the autosuggest", function () {
|
|
1005
|
+
var onChange = jest.fn();
|
|
1045
1006
|
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
suggestions: countries,
|
|
1054
|
-
onChange: onChange
|
|
1055
|
-
})), getByRole = _render31.getByRole, queryByRole = _render31.queryByRole;
|
|
1056
|
-
input = getByRole("combobox");
|
|
1007
|
+
var _render32 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1008
|
+
label: "Autocomplete Countries",
|
|
1009
|
+
suggestions: countries,
|
|
1010
|
+
onChange: onChange
|
|
1011
|
+
})),
|
|
1012
|
+
getByRole = _render32.getByRole,
|
|
1013
|
+
queryByRole = _render32.queryByRole;
|
|
1057
1014
|
|
|
1058
|
-
|
|
1059
|
-
key: "ArrowDown",
|
|
1060
|
-
code: "ArrowDown",
|
|
1061
|
-
keyCode: 40,
|
|
1062
|
-
charCode: 40
|
|
1063
|
-
});
|
|
1015
|
+
var input = getByRole("combobox");
|
|
1064
1016
|
|
|
1065
|
-
|
|
1066
|
-
|
|
1017
|
+
_react2.fireEvent.keyDown(input, {
|
|
1018
|
+
key: "ArrowDown",
|
|
1019
|
+
code: "ArrowDown",
|
|
1020
|
+
keyCode: 40,
|
|
1021
|
+
charCode: 40
|
|
1022
|
+
});
|
|
1067
1023
|
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
code: "Enter",
|
|
1071
|
-
keyCode: 13,
|
|
1072
|
-
charCode: 13
|
|
1073
|
-
});
|
|
1024
|
+
var list = getByRole("listbox");
|
|
1025
|
+
expect(list).toBeTruthy();
|
|
1074
1026
|
|
|
1075
|
-
|
|
1076
|
-
|
|
1027
|
+
_react2.fireEvent.keyDown(input, {
|
|
1028
|
+
key: "Enter",
|
|
1029
|
+
code: "Enter",
|
|
1030
|
+
keyCode: 13,
|
|
1031
|
+
charCode: 13
|
|
1032
|
+
});
|
|
1077
1033
|
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
}, _callee12);
|
|
1084
|
-
})));
|
|
1085
|
-
test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee13() {
|
|
1086
|
-
var onChange, _render32, getByRole, queryByRole, input, list;
|
|
1034
|
+
expect(input.value).toBe("Afghanistan");
|
|
1035
|
+
expect(queryByRole("list")).toBeFalsy();
|
|
1036
|
+
});
|
|
1037
|
+
test("Autosuggest keys: arrow up key opens autosuggest, active last option is selected with Enter and closes the autosuggest", function () {
|
|
1038
|
+
var onChange = jest.fn();
|
|
1087
1039
|
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
suggestions: countries,
|
|
1096
|
-
onChange: onChange
|
|
1097
|
-
})), getByRole = _render32.getByRole, queryByRole = _render32.queryByRole;
|
|
1098
|
-
input = getByRole("combobox");
|
|
1040
|
+
var _render33 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1041
|
+
label: "Autocomplete Countries",
|
|
1042
|
+
suggestions: countries,
|
|
1043
|
+
onChange: onChange
|
|
1044
|
+
})),
|
|
1045
|
+
getByRole = _render33.getByRole,
|
|
1046
|
+
queryByRole = _render33.queryByRole;
|
|
1099
1047
|
|
|
1100
|
-
|
|
1101
|
-
key: "ArrowUp",
|
|
1102
|
-
code: "ArrowUp",
|
|
1103
|
-
keyCode: 38,
|
|
1104
|
-
charCode: 38
|
|
1105
|
-
});
|
|
1048
|
+
var input = getByRole("combobox");
|
|
1106
1049
|
|
|
1107
|
-
|
|
1108
|
-
|
|
1050
|
+
_react2.fireEvent.keyDown(input, {
|
|
1051
|
+
key: "ArrowUp",
|
|
1052
|
+
code: "ArrowUp",
|
|
1053
|
+
keyCode: 38,
|
|
1054
|
+
charCode: 38
|
|
1055
|
+
});
|
|
1109
1056
|
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
code: "Enter",
|
|
1113
|
-
keyCode: 13,
|
|
1114
|
-
charCode: 13
|
|
1115
|
-
});
|
|
1057
|
+
var list = getByRole("listbox");
|
|
1058
|
+
expect(list).toBeTruthy();
|
|
1116
1059
|
|
|
1117
|
-
|
|
1118
|
-
|
|
1060
|
+
_react2.fireEvent.keyDown(input, {
|
|
1061
|
+
key: "Enter",
|
|
1062
|
+
code: "Enter",
|
|
1063
|
+
keyCode: 13,
|
|
1064
|
+
charCode: 13
|
|
1065
|
+
});
|
|
1119
1066
|
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
}, _callee13);
|
|
1126
|
-
})));
|
|
1127
|
-
test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee14() {
|
|
1128
|
-
var onChange, _render33, getByRole, queryByRole, input, list;
|
|
1067
|
+
expect(input.value).toBe("Djibouti");
|
|
1068
|
+
expect(queryByRole("list")).toBeFalsy();
|
|
1069
|
+
});
|
|
1070
|
+
test("Autosuggest keys: Esc key closes the autosuggest and cleans the input", function () {
|
|
1071
|
+
var onChange = jest.fn();
|
|
1129
1072
|
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
suggestions: countries,
|
|
1138
|
-
onChange: onChange
|
|
1139
|
-
})), getByRole = _render33.getByRole, queryByRole = _render33.queryByRole;
|
|
1140
|
-
input = getByRole("combobox");
|
|
1073
|
+
var _render34 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1074
|
+
label: "Autocomplete Countries",
|
|
1075
|
+
suggestions: countries,
|
|
1076
|
+
onChange: onChange
|
|
1077
|
+
})),
|
|
1078
|
+
getByRole = _render34.getByRole,
|
|
1079
|
+
queryByRole = _render34.queryByRole;
|
|
1141
1080
|
|
|
1142
|
-
|
|
1081
|
+
var input = getByRole("combobox");
|
|
1143
1082
|
|
|
1144
|
-
|
|
1083
|
+
_react2.fireEvent.focus(input);
|
|
1145
1084
|
|
|
1146
|
-
|
|
1147
|
-
expect(list).toBeTruthy();
|
|
1085
|
+
_userEvent["default"].type(input, "Bangla");
|
|
1148
1086
|
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
code: "Esc",
|
|
1152
|
-
keyCode: 27,
|
|
1153
|
-
charCode: 27
|
|
1154
|
-
});
|
|
1087
|
+
var list = getByRole("listbox");
|
|
1088
|
+
expect(list).toBeTruthy();
|
|
1155
1089
|
|
|
1156
|
-
|
|
1157
|
-
|
|
1090
|
+
_react2.fireEvent.keyDown(input, {
|
|
1091
|
+
key: "Esc",
|
|
1092
|
+
code: "Esc",
|
|
1093
|
+
keyCode: 27,
|
|
1094
|
+
charCode: 27
|
|
1095
|
+
});
|
|
1158
1096
|
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
}, _callee14);
|
|
1165
|
-
})));
|
|
1166
|
-
test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee15() {
|
|
1167
|
-
var onChange, _render34, getByRole, queryByRole, input, list;
|
|
1097
|
+
expect(input.value).toBe("");
|
|
1098
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1099
|
+
});
|
|
1100
|
+
test("Autosuggest keys: Enter, if no active suggestion closes the autosuggest", function () {
|
|
1101
|
+
var onChange = jest.fn();
|
|
1168
1102
|
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
suggestions: countries,
|
|
1177
|
-
onChange: onChange
|
|
1178
|
-
})), getByRole = _render34.getByRole, queryByRole = _render34.queryByRole;
|
|
1179
|
-
input = getByRole("combobox");
|
|
1103
|
+
var _render35 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1104
|
+
label: "Autocomplete Countries",
|
|
1105
|
+
suggestions: countries,
|
|
1106
|
+
onChange: onChange
|
|
1107
|
+
})),
|
|
1108
|
+
getByRole = _render35.getByRole,
|
|
1109
|
+
queryByRole = _render35.queryByRole;
|
|
1180
1110
|
|
|
1181
|
-
|
|
1111
|
+
var input = getByRole("combobox");
|
|
1182
1112
|
|
|
1183
|
-
|
|
1184
|
-
expect(list).toBeTruthy();
|
|
1113
|
+
_react2.fireEvent.focus(input);
|
|
1185
1114
|
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
code: "Enter",
|
|
1189
|
-
keyCode: 27,
|
|
1190
|
-
charCode: 27
|
|
1191
|
-
});
|
|
1115
|
+
var list = getByRole("listbox");
|
|
1116
|
+
expect(list).toBeTruthy();
|
|
1192
1117
|
|
|
1193
|
-
|
|
1194
|
-
|
|
1118
|
+
_react2.fireEvent.keyDown(input, {
|
|
1119
|
+
key: "Enter",
|
|
1120
|
+
code: "Enter",
|
|
1121
|
+
keyCode: 27,
|
|
1122
|
+
charCode: 27
|
|
1123
|
+
});
|
|
1195
1124
|
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
}, _callee15);
|
|
1202
|
-
})));
|
|
1203
|
-
test("Autosuggest complex key secuence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee16() {
|
|
1204
|
-
var onChange, _render35, getByRole, queryByRole, input;
|
|
1125
|
+
expect(input.value).toBe("");
|
|
1126
|
+
expect(queryByRole("list")).toBeFalsy();
|
|
1127
|
+
});
|
|
1128
|
+
test("Autosuggest complex key secuence: write, arrow up two times, arrow down and select with Enter. Then, clean with Esc.", function () {
|
|
1129
|
+
var onChange = jest.fn();
|
|
1205
1130
|
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
suggestions: countries,
|
|
1214
|
-
onChange: onChange
|
|
1215
|
-
})), getByRole = _render35.getByRole, queryByRole = _render35.queryByRole;
|
|
1216
|
-
input = getByRole("combobox");
|
|
1131
|
+
var _render36 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1132
|
+
label: "Autocomplete Countries",
|
|
1133
|
+
suggestions: countries,
|
|
1134
|
+
onChange: onChange
|
|
1135
|
+
})),
|
|
1136
|
+
getByRole = _render36.getByRole,
|
|
1137
|
+
queryByRole = _render36.queryByRole;
|
|
1217
1138
|
|
|
1218
|
-
|
|
1139
|
+
var input = getByRole("combobox");
|
|
1219
1140
|
|
|
1220
|
-
|
|
1141
|
+
_react2.fireEvent.focus(input);
|
|
1221
1142
|
|
|
1222
|
-
|
|
1223
|
-
key: "ArrowUp",
|
|
1224
|
-
code: "ArrowUp",
|
|
1225
|
-
keyCode: 38,
|
|
1226
|
-
charCode: 38
|
|
1227
|
-
});
|
|
1143
|
+
_userEvent["default"].type(input, "Ba");
|
|
1228
1144
|
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1145
|
+
_react2.fireEvent.keyDown(input, {
|
|
1146
|
+
key: "ArrowUp",
|
|
1147
|
+
code: "ArrowUp",
|
|
1148
|
+
keyCode: 38,
|
|
1149
|
+
charCode: 38
|
|
1150
|
+
});
|
|
1235
1151
|
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1152
|
+
_react2.fireEvent.keyDown(input, {
|
|
1153
|
+
key: "ArrowUp",
|
|
1154
|
+
code: "ArrowUpp",
|
|
1155
|
+
keyCode: 38,
|
|
1156
|
+
charCode: 38
|
|
1157
|
+
});
|
|
1242
1158
|
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1159
|
+
_react2.fireEvent.keyDown(input, {
|
|
1160
|
+
key: "ArrowDown",
|
|
1161
|
+
code: "ArrowDown",
|
|
1162
|
+
keyCode: 40,
|
|
1163
|
+
charCode: 40
|
|
1164
|
+
});
|
|
1249
1165
|
|
|
1250
|
-
|
|
1251
|
-
|
|
1166
|
+
_react2.fireEvent.keyDown(input, {
|
|
1167
|
+
key: "Enter",
|
|
1168
|
+
code: "Enter",
|
|
1169
|
+
keyCode: 13,
|
|
1170
|
+
charCode: 13
|
|
1171
|
+
});
|
|
1252
1172
|
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
code: "Esp",
|
|
1256
|
-
keyCode: 27,
|
|
1257
|
-
charCode: 27
|
|
1258
|
-
});
|
|
1173
|
+
expect(input.value).toBe("Barbados");
|
|
1174
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1259
1175
|
|
|
1260
|
-
|
|
1261
|
-
|
|
1176
|
+
_react2.fireEvent.keyDown(input, {
|
|
1177
|
+
key: "Esc",
|
|
1178
|
+
code: "Esp",
|
|
1179
|
+
keyCode: 27,
|
|
1180
|
+
charCode: 27
|
|
1181
|
+
});
|
|
1262
1182
|
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
}
|
|
1267
|
-
}
|
|
1268
|
-
}, _callee16);
|
|
1269
|
-
})));
|
|
1183
|
+
expect(input.value).toBe("");
|
|
1184
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1185
|
+
});
|
|
1270
1186
|
});
|
|
1271
1187
|
describe("TextInput component asynchronous autosuggest tests", function () {
|
|
1272
|
-
test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1273
|
-
var callbackFunc, onChange,
|
|
1188
|
+
test("Autosuggest 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
1189
|
+
var callbackFunc, onChange, _render37, getByRole, getByText, input;
|
|
1274
1190
|
|
|
1275
|
-
return _regenerator["default"].wrap(function
|
|
1191
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
1276
1192
|
while (1) {
|
|
1277
|
-
switch (
|
|
1193
|
+
switch (_context.prev = _context.next) {
|
|
1278
1194
|
case 0:
|
|
1279
1195
|
callbackFunc = jest.fn(function (newValue) {
|
|
1280
1196
|
var result = new Promise(function (resolve) {
|
|
@@ -1287,17 +1203,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1287
1203
|
return result;
|
|
1288
1204
|
});
|
|
1289
1205
|
onChange = jest.fn();
|
|
1290
|
-
|
|
1206
|
+
_render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1291
1207
|
label: "Autosuggest Countries",
|
|
1292
1208
|
suggestions: callbackFunc,
|
|
1293
1209
|
onChange: onChange
|
|
1294
|
-
})), getByRole =
|
|
1210
|
+
})), getByRole = _render37.getByRole, getByText = _render37.getByText;
|
|
1295
1211
|
input = getByRole("combobox");
|
|
1296
1212
|
|
|
1297
1213
|
_react2.fireEvent.focus(input);
|
|
1298
1214
|
|
|
1299
1215
|
expect(getByRole("listbox")).toBeTruthy();
|
|
1300
|
-
|
|
1216
|
+
_context.next = 8;
|
|
1301
1217
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1302
1218
|
return getByText("Searching...");
|
|
1303
1219
|
});
|
|
@@ -1310,7 +1226,7 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1310
1226
|
|
|
1311
1227
|
_userEvent["default"].type(input, "Ab");
|
|
1312
1228
|
|
|
1313
|
-
|
|
1229
|
+
_context.next = 15;
|
|
1314
1230
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1315
1231
|
return getByText("Searching...");
|
|
1316
1232
|
});
|
|
@@ -1336,66 +1252,58 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1336
1252
|
|
|
1337
1253
|
case 19:
|
|
1338
1254
|
case "end":
|
|
1339
|
-
return
|
|
1255
|
+
return _context.stop();
|
|
1340
1256
|
}
|
|
1341
1257
|
}
|
|
1342
|
-
},
|
|
1258
|
+
}, _callee);
|
|
1343
1259
|
})));
|
|
1344
|
-
test("Autosuggest Esc key works while 'Searching...' message is shown",
|
|
1345
|
-
var callbackFunc
|
|
1260
|
+
test("Autosuggest Esc key works while 'Searching...' message is shown", function () {
|
|
1261
|
+
var callbackFunc = jest.fn(function (newValue) {
|
|
1262
|
+
var result = new Promise(function (resolve) {
|
|
1263
|
+
return setTimeout(function () {
|
|
1264
|
+
resolve(newValue ? countries.filter(function (option) {
|
|
1265
|
+
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1266
|
+
}) : countries);
|
|
1267
|
+
}, 100);
|
|
1268
|
+
});
|
|
1269
|
+
return result;
|
|
1270
|
+
});
|
|
1271
|
+
var onChange = jest.fn();
|
|
1346
1272
|
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
return option.toUpperCase().includes(newValue.toUpperCase());
|
|
1356
|
-
}) : countries);
|
|
1357
|
-
}, 100);
|
|
1358
|
-
});
|
|
1359
|
-
return result;
|
|
1360
|
-
});
|
|
1361
|
-
onChange = jest.fn();
|
|
1362
|
-
_render37 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1363
|
-
label: "Autosuggest Countries",
|
|
1364
|
-
suggestions: callbackFunc,
|
|
1365
|
-
onChange: onChange
|
|
1366
|
-
})), getByRole = _render37.getByRole, queryByText = _render37.queryByText, queryByRole = _render37.queryByRole;
|
|
1367
|
-
input = getByRole("combobox");
|
|
1273
|
+
var _render38 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1274
|
+
label: "Autosuggest Countries",
|
|
1275
|
+
suggestions: callbackFunc,
|
|
1276
|
+
onChange: onChange
|
|
1277
|
+
})),
|
|
1278
|
+
getByRole = _render38.getByRole,
|
|
1279
|
+
queryByText = _render38.queryByText,
|
|
1280
|
+
queryByRole = _render38.queryByRole;
|
|
1368
1281
|
|
|
1369
|
-
|
|
1282
|
+
var input = getByRole("combobox");
|
|
1370
1283
|
|
|
1371
|
-
|
|
1284
|
+
_react2.fireEvent.focus(input);
|
|
1372
1285
|
|
|
1373
|
-
|
|
1286
|
+
expect(getByRole("listbox")).toBeTruthy();
|
|
1374
1287
|
|
|
1375
|
-
|
|
1376
|
-
key: "Esc",
|
|
1377
|
-
code: "Esc",
|
|
1378
|
-
keyCode: 27,
|
|
1379
|
-
charCode: 27
|
|
1380
|
-
});
|
|
1288
|
+
_userEvent["default"].type(input, "Ab");
|
|
1381
1289
|
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1290
|
+
_react2.fireEvent.keyDown(input, {
|
|
1291
|
+
key: "Esc",
|
|
1292
|
+
code: "Esc",
|
|
1293
|
+
keyCode: 27,
|
|
1294
|
+
charCode: 27
|
|
1295
|
+
});
|
|
1385
1296
|
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
})));
|
|
1393
|
-
test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee19() {
|
|
1394
|
-
var callbackFunc, onChange, _render38, getByRole, getByText, queryByText, queryByRole, input, list;
|
|
1297
|
+
expect(queryByRole("listbox")).toBeFalsy();
|
|
1298
|
+
expect(queryByText("Searching...")).toBeFalsy();
|
|
1299
|
+
expect(input.value).toBe("");
|
|
1300
|
+
});
|
|
1301
|
+
test("Autosuggest Esc + arrow down working while 'Searching...' message is shown", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
1302
|
+
var callbackFunc, onChange, _render39, getByRole, getByText, queryByText, queryByRole, input, list;
|
|
1395
1303
|
|
|
1396
|
-
return _regenerator["default"].wrap(function
|
|
1304
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
1397
1305
|
while (1) {
|
|
1398
|
-
switch (
|
|
1306
|
+
switch (_context2.prev = _context2.next) {
|
|
1399
1307
|
case 0:
|
|
1400
1308
|
callbackFunc = jest.fn(function (newValue) {
|
|
1401
1309
|
var result = new Promise(function (resolve) {
|
|
@@ -1408,11 +1316,11 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1408
1316
|
return result;
|
|
1409
1317
|
});
|
|
1410
1318
|
onChange = jest.fn();
|
|
1411
|
-
|
|
1319
|
+
_render39 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1412
1320
|
label: "Autosuggest Countries",
|
|
1413
1321
|
suggestions: callbackFunc,
|
|
1414
1322
|
onChange: onChange
|
|
1415
|
-
})), getByRole =
|
|
1323
|
+
})), getByRole = _render39.getByRole, getByText = _render39.getByText, queryByText = _render39.queryByText, queryByRole = _render39.queryByRole;
|
|
1416
1324
|
input = getByRole("combobox");
|
|
1417
1325
|
|
|
1418
1326
|
_react2.fireEvent.focus(input);
|
|
@@ -1441,7 +1349,7 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1441
1349
|
});
|
|
1442
1350
|
|
|
1443
1351
|
expect(list).toBeTruthy();
|
|
1444
|
-
|
|
1352
|
+
_context2.next = 16;
|
|
1445
1353
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1446
1354
|
return getByText("Searching...");
|
|
1447
1355
|
});
|
|
@@ -1454,17 +1362,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1454
1362
|
|
|
1455
1363
|
case 20:
|
|
1456
1364
|
case "end":
|
|
1457
|
-
return
|
|
1365
|
+
return _context2.stop();
|
|
1458
1366
|
}
|
|
1459
1367
|
}
|
|
1460
|
-
},
|
|
1368
|
+
}, _callee2);
|
|
1461
1369
|
})));
|
|
1462
|
-
test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1463
|
-
var callbackFunc, onChange,
|
|
1370
|
+
test("Asynchronous uncontrolled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
1371
|
+
var callbackFunc, onChange, _render40, getByRole, getByText, input;
|
|
1464
1372
|
|
|
1465
|
-
return _regenerator["default"].wrap(function
|
|
1373
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
1466
1374
|
while (1) {
|
|
1467
|
-
switch (
|
|
1375
|
+
switch (_context3.prev = _context3.next) {
|
|
1468
1376
|
case 0:
|
|
1469
1377
|
callbackFunc = jest.fn(function (newValue) {
|
|
1470
1378
|
var result = new Promise(function (resolve) {
|
|
@@ -1477,18 +1385,18 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1477
1385
|
return result;
|
|
1478
1386
|
});
|
|
1479
1387
|
onChange = jest.fn();
|
|
1480
|
-
|
|
1388
|
+
_render40 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1481
1389
|
label: "Autosuggest Countries",
|
|
1482
1390
|
onChange: onChange,
|
|
1483
1391
|
suggestions: callbackFunc
|
|
1484
|
-
})), getByRole =
|
|
1392
|
+
})), getByRole = _render40.getByRole, getByText = _render40.getByText;
|
|
1485
1393
|
input = getByRole("combobox");
|
|
1486
1394
|
|
|
1487
1395
|
_react2.fireEvent.focus(input);
|
|
1488
1396
|
|
|
1489
1397
|
_userEvent["default"].type(input, "Den");
|
|
1490
1398
|
|
|
1491
|
-
|
|
1399
|
+
_context3.next = 8;
|
|
1492
1400
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1493
1401
|
return getByText("Searching...");
|
|
1494
1402
|
});
|
|
@@ -1505,17 +1413,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1505
1413
|
|
|
1506
1414
|
case 12:
|
|
1507
1415
|
case "end":
|
|
1508
|
-
return
|
|
1416
|
+
return _context3.stop();
|
|
1509
1417
|
}
|
|
1510
1418
|
}
|
|
1511
|
-
},
|
|
1419
|
+
}, _callee3);
|
|
1512
1420
|
})));
|
|
1513
|
-
test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1514
|
-
var callbackFunc, onChange,
|
|
1421
|
+
test("Asynchronous controlled autosuggest test", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
1422
|
+
var callbackFunc, onChange, _render41, getByRole, getByText, queryByRole, input;
|
|
1515
1423
|
|
|
1516
|
-
return _regenerator["default"].wrap(function
|
|
1424
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
1517
1425
|
while (1) {
|
|
1518
|
-
switch (
|
|
1426
|
+
switch (_context4.prev = _context4.next) {
|
|
1519
1427
|
case 0:
|
|
1520
1428
|
callbackFunc = jest.fn(function (newValue) {
|
|
1521
1429
|
var result = new Promise(function (resolve) {
|
|
@@ -1528,45 +1436,47 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1528
1436
|
return result;
|
|
1529
1437
|
});
|
|
1530
1438
|
onChange = jest.fn();
|
|
1531
|
-
|
|
1439
|
+
_render41 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1532
1440
|
label: "Autosuggest Countries",
|
|
1533
1441
|
value: "Denm",
|
|
1534
1442
|
onChange: onChange,
|
|
1535
1443
|
suggestions: callbackFunc
|
|
1536
|
-
})), getByRole =
|
|
1444
|
+
})), getByRole = _render41.getByRole, getByText = _render41.getByText, queryByRole = _render41.queryByRole;
|
|
1537
1445
|
input = getByRole("combobox");
|
|
1446
|
+
expect(input.value).toBe("Denm");
|
|
1538
1447
|
|
|
1539
|
-
|
|
1448
|
+
_userEvent["default"].click(getByText("Autosuggest Countries"));
|
|
1540
1449
|
|
|
1541
|
-
|
|
1450
|
+
_context4.next = 8;
|
|
1542
1451
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1543
1452
|
return getByText("Searching...");
|
|
1544
1453
|
});
|
|
1545
1454
|
|
|
1546
|
-
case
|
|
1547
|
-
expect(input.value).toBe("Denm");
|
|
1455
|
+
case 8:
|
|
1548
1456
|
expect(getByText("Denmark")).toBeTruthy();
|
|
1549
1457
|
|
|
1550
|
-
|
|
1458
|
+
_react2.fireEvent.focus(getByRole("option"));
|
|
1459
|
+
|
|
1460
|
+
_userEvent["default"].click(getByText("Denmark"));
|
|
1551
1461
|
|
|
1552
1462
|
expect(onChange).toHaveBeenCalledWith({
|
|
1553
1463
|
value: "Denmark"
|
|
1554
1464
|
});
|
|
1555
1465
|
expect(queryByRole("listbox")).toBeFalsy();
|
|
1556
1466
|
|
|
1557
|
-
case
|
|
1467
|
+
case 13:
|
|
1558
1468
|
case "end":
|
|
1559
|
-
return
|
|
1469
|
+
return _context4.stop();
|
|
1560
1470
|
}
|
|
1561
1471
|
}
|
|
1562
|
-
},
|
|
1472
|
+
}, _callee4);
|
|
1563
1473
|
})));
|
|
1564
|
-
test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1565
|
-
var callbackFunc, onChange,
|
|
1474
|
+
test("Asynchronous autosuggest closes the listbox after finishing no matches search", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
1475
|
+
var callbackFunc, onChange, _render42, getByText, getByRole, queryByRole, input;
|
|
1566
1476
|
|
|
1567
|
-
return _regenerator["default"].wrap(function
|
|
1477
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
1568
1478
|
while (1) {
|
|
1569
|
-
switch (
|
|
1479
|
+
switch (_context5.prev = _context5.next) {
|
|
1570
1480
|
case 0:
|
|
1571
1481
|
callbackFunc = jest.fn(function (newValue) {
|
|
1572
1482
|
var result = new Promise(function (resolve) {
|
|
@@ -1579,18 +1489,18 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1579
1489
|
return result;
|
|
1580
1490
|
});
|
|
1581
1491
|
onChange = jest.fn();
|
|
1582
|
-
|
|
1492
|
+
_render42 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1583
1493
|
label: "Autosuggest Countries",
|
|
1584
1494
|
onChange: onChange,
|
|
1585
1495
|
suggestions: callbackFunc
|
|
1586
|
-
})), getByText =
|
|
1496
|
+
})), getByText = _render42.getByText, getByRole = _render42.getByRole, queryByRole = _render42.queryByRole;
|
|
1587
1497
|
input = getByRole("combobox");
|
|
1588
1498
|
|
|
1589
1499
|
_react2.fireEvent.focus(input);
|
|
1590
1500
|
|
|
1591
1501
|
_userEvent["default"].type(input, "Example text");
|
|
1592
1502
|
|
|
1593
|
-
|
|
1503
|
+
_context5.next = 8;
|
|
1594
1504
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1595
1505
|
return getByText("Searching...");
|
|
1596
1506
|
});
|
|
@@ -1600,17 +1510,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1600
1510
|
|
|
1601
1511
|
case 9:
|
|
1602
1512
|
case "end":
|
|
1603
|
-
return
|
|
1513
|
+
return _context5.stop();
|
|
1604
1514
|
}
|
|
1605
1515
|
}
|
|
1606
|
-
},
|
|
1516
|
+
}, _callee5);
|
|
1607
1517
|
})));
|
|
1608
|
-
test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1609
|
-
var callbackFunc, onChange,
|
|
1518
|
+
test("Asynchronous autosuggest with no matches founded doesn't let the listbox to be opened", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
1519
|
+
var callbackFunc, onChange, _render43, getByText, getByRole, queryByRole, input;
|
|
1610
1520
|
|
|
1611
|
-
return _regenerator["default"].wrap(function
|
|
1521
|
+
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
1612
1522
|
while (1) {
|
|
1613
|
-
switch (
|
|
1523
|
+
switch (_context6.prev = _context6.next) {
|
|
1614
1524
|
case 0:
|
|
1615
1525
|
callbackFunc = jest.fn(function (newValue) {
|
|
1616
1526
|
var result = new Promise(function (resolve) {
|
|
@@ -1623,18 +1533,18 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1623
1533
|
return result;
|
|
1624
1534
|
});
|
|
1625
1535
|
onChange = jest.fn();
|
|
1626
|
-
|
|
1536
|
+
_render43 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1627
1537
|
label: "Autosuggest Countries",
|
|
1628
1538
|
onChange: onChange,
|
|
1629
1539
|
suggestions: callbackFunc
|
|
1630
|
-
})), getByText =
|
|
1540
|
+
})), getByText = _render43.getByText, getByRole = _render43.getByRole, queryByRole = _render43.queryByRole;
|
|
1631
1541
|
input = getByRole("combobox");
|
|
1632
1542
|
|
|
1633
1543
|
_react2.fireEvent.focus(input);
|
|
1634
1544
|
|
|
1635
1545
|
_userEvent["default"].type(input, "wrong");
|
|
1636
1546
|
|
|
1637
|
-
|
|
1547
|
+
_context6.next = 8;
|
|
1638
1548
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1639
1549
|
return getByText("Searching...");
|
|
1640
1550
|
});
|
|
@@ -1666,17 +1576,17 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1666
1576
|
|
|
1667
1577
|
case 15:
|
|
1668
1578
|
case "end":
|
|
1669
|
-
return
|
|
1579
|
+
return _context6.stop();
|
|
1670
1580
|
}
|
|
1671
1581
|
}
|
|
1672
|
-
},
|
|
1582
|
+
}, _callee6);
|
|
1673
1583
|
})));
|
|
1674
|
-
test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1675
|
-
var errorCallbackFunc, onChange,
|
|
1584
|
+
test("Asynchronous autosuggest request failed, shows 'Error fetching data' message", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
|
1585
|
+
var errorCallbackFunc, onChange, _render44, getByRole, getByText, input;
|
|
1676
1586
|
|
|
1677
|
-
return _regenerator["default"].wrap(function
|
|
1587
|
+
return _regenerator["default"].wrap(function _callee7$(_context7) {
|
|
1678
1588
|
while (1) {
|
|
1679
|
-
switch (
|
|
1589
|
+
switch (_context7.prev = _context7.next) {
|
|
1680
1590
|
case 0:
|
|
1681
1591
|
errorCallbackFunc = jest.fn(function () {
|
|
1682
1592
|
var result = new Promise(function (resolve, reject) {
|
|
@@ -1687,16 +1597,16 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1687
1597
|
return result;
|
|
1688
1598
|
});
|
|
1689
1599
|
onChange = jest.fn();
|
|
1690
|
-
|
|
1600
|
+
_render44 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
1691
1601
|
label: "Autosuggest Countries",
|
|
1692
1602
|
onChange: onChange,
|
|
1693
1603
|
suggestions: errorCallbackFunc
|
|
1694
|
-
})), getByRole =
|
|
1604
|
+
})), getByRole = _render44.getByRole, getByText = _render44.getByText;
|
|
1695
1605
|
input = getByRole("combobox");
|
|
1696
1606
|
|
|
1697
1607
|
_react2.fireEvent.focus(input);
|
|
1698
1608
|
|
|
1699
|
-
|
|
1609
|
+
_context7.next = 7;
|
|
1700
1610
|
return (0, _react2.waitForElementToBeRemoved)(function () {
|
|
1701
1611
|
return getByText("Searching...");
|
|
1702
1612
|
});
|
|
@@ -1706,9 +1616,9 @@ describe("TextInput component asynchronous autosuggest tests", function () {
|
|
|
1706
1616
|
|
|
1707
1617
|
case 8:
|
|
1708
1618
|
case "end":
|
|
1709
|
-
return
|
|
1619
|
+
return _context7.stop();
|
|
1710
1620
|
}
|
|
1711
1621
|
}
|
|
1712
|
-
},
|
|
1622
|
+
}, _callee7);
|
|
1713
1623
|
})));
|
|
1714
1624
|
});
|