@reltio/components 1.4.2071 → 1.4.2072

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/AttributesView/AttributesView.js +1 -1
  2. package/ColumnsSettings/components/ColumnsSettingsPopup/ColumnsSettingsPopup.d.ts +2 -3
  3. package/ColumnsSettings/helpers.d.ts +3 -1
  4. package/ColumnsSettings/types.d.ts +8 -0
  5. package/CommentsContainer/CommentsContainer.js +1 -1
  6. package/ConfigureColumnsPopup/ConfigureColumnsPopup.d.ts +23 -40
  7. package/ConfigureColumnsPopup/ConfigureColumnsPopup.js +6 -26
  8. package/EditModeAttributesList/EditModeAttributesList.js +1 -1
  9. package/EditModeAttributesPager/EditModeAttributesPager.test.js +1 -1
  10. package/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.js +1 -1
  11. package/MetadataTypesSelector/MetadataTypesSelector.d.ts +2 -1
  12. package/MetadataTypesSelector/components/SelectMetadataTypesList/SelectMetadataTypesList.d.ts +5 -6
  13. package/MoreAttributesButton/useMoreAttributesItems.d.ts +1 -1
  14. package/ReadOnlyAttributesList/ReadOnlyAttributesList.js +1 -1
  15. package/ReadOnlyAttributesPager/ReadOnlyAttributesPager.js +1 -1
  16. package/ReadOnlyAttributesView/ReadOnlyAttributesView.js +1 -1
  17. package/ScrollableTabs/ScrollableTabs.test.js +69 -19
  18. package/SearchHighlighter/SearchHighlighter.test.js +18 -7
  19. package/SelectAttributesList/SelectAttributesList.d.ts +11 -6
  20. package/SelectAttributesList/SelectAttributesList.js +5 -2
  21. package/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.test.js +109 -60
  22. package/SidePanelContentHeader/SidePanelContentHeader.js +2 -2
  23. package/SidePanelContentHeader/SidePanelContentHeader.test.js +104 -0
  24. package/SidePanelEmptyState/SidePanelEmptyState.js +1 -1
  25. package/SidePanelEmptyState/SidePanelEmptyState.test.js +24 -0
  26. package/SimpleAttribute/SimpleAttribute.js +1 -1
  27. package/SimpleAttribute/SimpleAttribute.test.js +155 -80
  28. package/SimpleAttributeEditor/SimpleAttributeEditor.test.js +339 -330
  29. package/SimpleAttributeEditor/useAttributeValuePermissions.js +1 -1
  30. package/SimpleDropDownSelector/SimpleDropDownSelector.test.js +86 -10
  31. package/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.js +1 -1
  32. package/SimpleDropDownSelector/components/DropDownValue/DropDownValue.js +1 -1
  33. package/SimpleMatchRulesBlock/SimpleMatchRulesBlock.test.js +128 -32
  34. package/SmallIconButton/SmallIconButton.test.js +98 -25
  35. package/TableWithBars/TableWithBars.test.js +98 -60
  36. package/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.js +1 -1
  37. package/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.js +1 -1
  38. package/Tags/Tags.d.ts +0 -1
  39. package/Tags/Tags.test.js +8 -7
  40. package/TransitiveMatchBlock/TransitiveMatchBlock.test.js +78 -22
  41. package/TransitiveMatchRule/TransitiveMatchRule.test.js +78 -37
  42. package/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.js +1 -1
  43. package/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.test.js +12 -18
  44. package/UploadFileButton/UploadFileButton.d.ts +2 -2
  45. package/UploadFileButton/UploadFileButton.test.js +199 -0
  46. package/UploadImageDialog/UploadImageDialog.test.js +1 -0
  47. package/UploadImageDialog/components/DividerWithText/DividerWithText.js +1 -1
  48. package/UploadImageDialog/components/ErrorSnackbar/ErrorSnackbar.test.js +80 -22
  49. package/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.js +1 -1
  50. package/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.test.js +162 -49
  51. package/ValueChip/ValueChip.test.js +7 -23
  52. package/VirtualGroupedList/VirtualGroupedList.d.ts +19 -31
  53. package/VirtualGroupedList/VirtualGroupedList.js +11 -36
  54. package/VirtualGroupedList/VirtualGroupedList.test.js +224 -0
  55. package/VirtualGroupedList/helpers.d.ts +7 -2
  56. package/VirtualGroupedList/helpers.js +3 -1
  57. package/VirtualGroupedList/index.d.ts +1 -1
  58. package/VirtualGroupedList/types.d.ts +10 -6
  59. package/VirtualGroupedList/useScrollToFocusItem.d.ts +8 -5
  60. package/WhiteSearchInput/{WhiteSearchInput.spec.js → WhiteSearchInput.test.js} +3 -8
  61. package/cjs/AttributesView/AttributesView.js +2 -2
  62. package/cjs/ColumnsSettings/components/ColumnsSettingsPopup/ColumnsSettingsPopup.d.ts +2 -3
  63. package/cjs/ColumnsSettings/helpers.d.ts +3 -1
  64. package/cjs/ColumnsSettings/types.d.ts +8 -0
  65. package/cjs/ColumnsSettings/types.js +2 -0
  66. package/cjs/CommentsContainer/CommentsContainer.js +1 -1
  67. package/cjs/ConfigureColumnsPopup/ConfigureColumnsPopup.d.ts +23 -40
  68. package/cjs/ConfigureColumnsPopup/ConfigureColumnsPopup.js +6 -26
  69. package/cjs/EditModeAttributesList/EditModeAttributesList.js +2 -2
  70. package/cjs/EditModeAttributesPager/EditModeAttributesPager.test.js +2 -2
  71. package/cjs/EditModeAttributesPager/components/AttributeRenderer/AttributeRenderer.js +2 -2
  72. package/cjs/MetadataTypesSelector/MetadataTypesSelector.d.ts +2 -1
  73. package/cjs/MetadataTypesSelector/components/SelectMetadataTypesList/SelectMetadataTypesList.d.ts +5 -6
  74. package/cjs/MoreAttributesButton/useMoreAttributesItems.d.ts +1 -1
  75. package/cjs/ReadOnlyAttributesList/ReadOnlyAttributesList.js +2 -2
  76. package/cjs/ReadOnlyAttributesPager/ReadOnlyAttributesPager.js +2 -2
  77. package/cjs/ReadOnlyAttributesView/ReadOnlyAttributesView.js +2 -2
  78. package/cjs/ScrollableTabs/ScrollableTabs.test.js +69 -19
  79. package/cjs/SearchHighlighter/SearchHighlighter.test.js +18 -7
  80. package/cjs/SelectAttributesList/SelectAttributesList.d.ts +11 -6
  81. package/cjs/SelectAttributesList/SelectAttributesList.js +5 -2
  82. package/cjs/SelectorWithOnlyOptionAutoSelect/SelectorWithOnlyOptionAutoSelect.test.js +109 -60
  83. package/cjs/SidePanelContentHeader/SidePanelContentHeader.js +2 -2
  84. package/cjs/SidePanelContentHeader/SidePanelContentHeader.test.js +109 -0
  85. package/cjs/SidePanelEmptyState/SidePanelEmptyState.js +1 -1
  86. package/cjs/SidePanelEmptyState/SidePanelEmptyState.test.js +29 -0
  87. package/cjs/SimpleAttribute/SimpleAttribute.js +1 -1
  88. package/cjs/SimpleAttribute/SimpleAttribute.test.js +155 -80
  89. package/cjs/SimpleAttributeEditor/SimpleAttributeEditor.test.js +338 -352
  90. package/cjs/SimpleAttributeEditor/useAttributeValuePermissions.js +2 -2
  91. package/cjs/SimpleDropDownSelector/SimpleDropDownSelector.test.js +86 -10
  92. package/cjs/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.js +1 -1
  93. package/cjs/SimpleDropDownSelector/components/DropDownValue/DropDownValue.js +1 -1
  94. package/cjs/SimpleMatchRulesBlock/SimpleMatchRulesBlock.test.js +127 -31
  95. package/cjs/SmallIconButton/SmallIconButton.test.js +98 -25
  96. package/cjs/TableWithBars/TableWithBars.test.js +98 -60
  97. package/cjs/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.js +1 -1
  98. package/cjs/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.js +1 -1
  99. package/cjs/Tags/Tags.d.ts +0 -1
  100. package/cjs/Tags/Tags.test.js +8 -7
  101. package/cjs/TransitiveMatchBlock/TransitiveMatchBlock.test.js +77 -21
  102. package/cjs/TransitiveMatchRule/TransitiveMatchRule.test.js +78 -37
  103. package/cjs/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.js +1 -1
  104. package/cjs/TransitiveMatchRulesTooltip/TransitiveMatchRulesTooltip.test.js +12 -18
  105. package/cjs/UploadFileButton/UploadFileButton.d.ts +2 -2
  106. package/cjs/UploadFileButton/UploadFileButton.test.js +204 -0
  107. package/cjs/UploadImageDialog/UploadImageDialog.test.js +1 -0
  108. package/cjs/UploadImageDialog/components/DividerWithText/DividerWithText.js +1 -1
  109. package/cjs/UploadImageDialog/components/ErrorSnackbar/ErrorSnackbar.test.js +80 -22
  110. package/cjs/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.js +1 -1
  111. package/cjs/UploadImageDialog/components/ImageByUrlField/ImageByUrlField.test.js +162 -49
  112. package/cjs/ValueChip/ValueChip.test.js +7 -23
  113. package/cjs/VirtualGroupedList/VirtualGroupedList.d.ts +19 -31
  114. package/cjs/VirtualGroupedList/VirtualGroupedList.js +11 -36
  115. package/cjs/VirtualGroupedList/VirtualGroupedList.test.js +252 -0
  116. package/cjs/VirtualGroupedList/helpers.d.ts +7 -2
  117. package/cjs/VirtualGroupedList/helpers.js +3 -1
  118. package/cjs/VirtualGroupedList/index.d.ts +1 -1
  119. package/cjs/VirtualGroupedList/types.d.ts +10 -6
  120. package/cjs/VirtualGroupedList/useScrollToFocusItem.d.ts +8 -5
  121. package/cjs/WhiteSearchInput/{WhiteSearchInput.spec.js → WhiteSearchInput.test.js} +3 -8
  122. package/cjs/features/crosswalks/hooks/useAttributeActions.test.js +24 -25
  123. package/cjs/features/crosswalks/hooks/useCrosswalkActions.test.js +10 -11
  124. package/cjs/features/workflow/hooks/useChangeRequest.test.js +5 -6
  125. package/cjs/hooks/useCommentsEntitiesMap/useCommentsEntitiesMap.test.js +8 -9
  126. package/cjs/hooks/useKeyboardNavigation/useKeyboardNavigation.d.ts +9 -13
  127. package/features/crosswalks/hooks/useAttributeActions.test.js +1 -2
  128. package/features/crosswalks/hooks/useCrosswalkActions.test.js +1 -2
  129. package/features/workflow/hooks/useChangeRequest.test.js +1 -2
  130. package/hooks/useCommentsEntitiesMap/useCommentsEntitiesMap.test.js +1 -2
  131. package/hooks/useKeyboardNavigation/useKeyboardNavigation.d.ts +9 -13
  132. package/package.json +1 -1
  133. package/SidePanelContentHeader/SidePanelContentHeader.spec.js +0 -49
  134. package/SidePanelEmptyState/SidePanelEmptyState.spec.js +0 -24
  135. package/SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.js +0 -103
  136. package/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.js +0 -13
  137. package/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.js +0 -21
  138. package/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.js +0 -20
  139. package/UploadFileButton/UploadFileButton.spec.js +0 -219
  140. package/UploadImageDialog/components/DividerWithText/DividerWithText.test.js +0 -9
  141. package/VirtualGroupedList/VirtualGroupedList.spec.js +0 -282
  142. package/cjs/SidePanelContentHeader/SidePanelContentHeader.spec.js +0 -54
  143. package/cjs/SidePanelEmptyState/SidePanelEmptyState.spec.d.ts +0 -1
  144. package/cjs/SidePanelEmptyState/SidePanelEmptyState.spec.js +0 -29
  145. package/cjs/SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.d.ts +0 -1
  146. package/cjs/SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.js +0 -108
  147. package/cjs/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.d.ts +0 -1
  148. package/cjs/SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.js +0 -18
  149. package/cjs/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.d.ts +0 -1
  150. package/cjs/TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.js +0 -26
  151. package/cjs/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.d.ts +0 -1
  152. package/cjs/TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.js +0 -25
  153. package/cjs/UploadFileButton/UploadFileButton.spec.d.ts +0 -1
  154. package/cjs/UploadFileButton/UploadFileButton.spec.js +0 -224
  155. package/cjs/UploadImageDialog/components/DividerWithText/DividerWithText.test.d.ts +0 -1
  156. package/cjs/UploadImageDialog/components/DividerWithText/DividerWithText.test.js +0 -14
  157. package/cjs/VirtualGroupedList/VirtualGroupedList.spec.d.ts +0 -1
  158. package/cjs/VirtualGroupedList/VirtualGroupedList.spec.js +0 -287
  159. package/cjs/WhiteSearchInput/WhiteSearchInput.spec.d.ts +0 -1
  160. /package/{SidePanelContentHeader/SidePanelContentHeader.spec.d.ts → ColumnsSettings/types.js} +0 -0
  161. /package/{SidePanelEmptyState/SidePanelEmptyState.spec.d.ts → SidePanelContentHeader/SidePanelContentHeader.test.d.ts} +0 -0
  162. /package/{SimpleAttributeEditor/SimpleAttributeEditorWithoutPermissions.test.d.ts → SidePanelEmptyState/SidePanelEmptyState.test.d.ts} +0 -0
  163. /package/{SimpleDropDownSelector/components/DropDownPlaceholder/DropDownPlaceholder.test.d.ts → UploadFileButton/UploadFileButton.test.d.ts} +0 -0
  164. /package/{TableWithBars/components/AttributeCellRenderer/AttributeCellRenderer.test.d.ts → VirtualGroupedList/VirtualGroupedList.test.d.ts} +0 -0
  165. /package/{TableWithBars/components/HeadCellRenderer/HeadCellRenderer.test.d.ts → WhiteSearchInput/WhiteSearchInput.test.d.ts} +0 -0
  166. /package/{UploadFileButton/UploadFileButton.spec.d.ts → cjs/SidePanelContentHeader/SidePanelContentHeader.test.d.ts} +0 -0
  167. /package/{UploadImageDialog/components/DividerWithText/DividerWithText.test.d.ts → cjs/SidePanelEmptyState/SidePanelEmptyState.test.d.ts} +0 -0
  168. /package/{VirtualGroupedList/VirtualGroupedList.spec.d.ts → cjs/UploadFileButton/UploadFileButton.test.d.ts} +0 -0
  169. /package/{WhiteSearchInput/WhiteSearchInput.spec.d.ts → cjs/VirtualGroupedList/VirtualGroupedList.test.d.ts} +0 -0
  170. /package/cjs/{SidePanelContentHeader/SidePanelContentHeader.spec.d.ts → WhiteSearchInput/WhiteSearchInput.test.d.ts} +0 -0
  171. /package/cjs/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.d.ts +0 -0
  172. /package/cjs/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.js +0 -0
  173. /package/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.d.ts +0 -0
  174. /package/contexts/{AllwaysVisibleAttributesContext → AlwaysVisibleAttributesContext}/index.js +0 -0
@@ -1,80 +1,118 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
2
49
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
50
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
51
  };
5
52
  Object.defineProperty(exports, "__esModule", { value: true });
6
53
  var react_1 = __importDefault(require("react"));
7
- var enzyme_1 = require("enzyme");
8
- var ramda_1 = require("ramda");
54
+ var react_2 = require("@testing-library/react");
55
+ var user_event_1 = __importDefault(require("@testing-library/user-event"));
9
56
  var TableWithBars_1 = require("./TableWithBars");
10
- var BasicTable_1 = require("../BasicTable");
11
- var HeadCellRenderer_1 = require("./components/HeadCellRenderer");
12
- var AttributeCellRenderer_1 = require("./components/AttributeCellRenderer");
13
- var NumberCellValueRenderer_1 = require("./components/NumberCellValueRenderer");
14
- jest.mock('react-virtualized-auto-sizer', function () {
15
- return jest.fn().mockImplementation(function (_a) {
16
- var children = _a.children;
17
- return react_1.default.createElement("div", null, children());
18
- });
19
- });
57
+ var test_utils_1 = require("../test-utils");
20
58
  describe('TableWithBars', function () {
21
59
  var data = [
22
60
  { label: 'Attribute 01', value: 10000, group: 'attr01' },
23
61
  { label: 'Attribute 02', value: 20, group: 'attr02' },
24
62
  { label: 'Attribute 03', value: 3, group: 'attr03' }
25
63
  ];
64
+ var setUp = function (props) {
65
+ if (props === void 0) { props = {}; }
66
+ var user = user_event_1.default.setup();
67
+ return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(TableWithBars_1.TableWithBars, __assign({ width: 600, height: 300, data: data }, props))));
68
+ };
26
69
  it('should render BasicTable', function () {
27
- var expectedColumnsData = [
28
- {
29
- headCellRenderer: HeadCellRenderer_1.HeadCellRenderer,
30
- id: 'label',
31
- label: 'Attributes',
32
- initialWidth: 240,
33
- resizable: false,
34
- rowCellValueRenderer: AttributeCellRenderer_1.AttributeCellRenderer
35
- },
36
- {
37
- headCellRenderer: HeadCellRenderer_1.HeadCellRenderer,
38
- id: 'value',
39
- label: 'No of Profiles',
40
- maxValue: 10000,
41
- initialWidth: 360,
42
- resizable: false,
43
- rowCellValueRenderer: NumberCellValueRenderer_1.NumberCellValueRenderer
44
- }
45
- ];
46
- var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(TableWithBars_1.TableWithBars, { width: 600, height: 300, data: data }));
47
- var tableChart = wrapper.find(BasicTable_1.BasicTable);
48
- expect(tableChart).toHaveLength(1);
49
- expect(tableChart.prop('columnsData')).toEqual(expectedColumnsData);
50
- expect(tableChart.prop('rowsData')).toEqual(data);
70
+ var unmockTableSizing = (0, test_utils_1.mockBasicTableSizing)();
71
+ setUp();
72
+ var headCells = react_2.screen.getAllByTestId('table-with-bar-head-cell');
73
+ expect(headCells).toHaveLength(2);
74
+ expect(headCells[0]).toHaveTextContent('Attributes');
75
+ expect(headCells[1]).toHaveTextContent('No of Profiles');
76
+ var firstRowCells = react_2.screen.getAllByTestId('base-cell-0');
77
+ expect(firstRowCells).toHaveLength(2);
78
+ expect((0, react_2.within)(firstRowCells[0]).getByTestId('attribute-cell-renderer')).toHaveTextContent('Attribute 01');
79
+ expect(firstRowCells[1]).toHaveTextContent('10.0K');
80
+ expect(firstRowCells[1].querySelector('.bar')).toHaveStyle('width: 100%');
81
+ var secondRowCells = react_2.screen.getAllByTestId('base-cell-1');
82
+ expect(secondRowCells).toHaveLength(2);
83
+ expect((0, react_2.within)(secondRowCells[0]).getByTestId('attribute-cell-renderer')).toHaveTextContent('Attribute 02');
84
+ expect(secondRowCells[1]).toHaveTextContent('20');
85
+ expect(secondRowCells[1].querySelector('.bar')).toHaveStyle('width: 0.2%');
86
+ unmockTableSizing();
51
87
  });
52
88
  it('should render TableWithBars with headers from options', function () {
53
- var headers = ['Test header 1', 'Test header 2'];
54
- var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(TableWithBars_1.TableWithBars, { width: 600, height: 300, data: data, options: { headers: headers } }));
55
- var tableChart = wrapper.find(BasicTable_1.BasicTable);
56
- expect(tableChart).toHaveLength(1);
57
- expect(tableChart.prop('columnsData').map((0, ramda_1.prop)('label'))).toEqual(headers);
89
+ setUp({ options: { headers: ['Test header 1', 'Test header 2'] } });
90
+ var headCells = react_2.screen.getAllByTestId('table-with-bar-head-cell');
91
+ expect(headCells).toHaveLength(2);
92
+ expect(headCells[0]).toHaveTextContent('Test header 1');
93
+ expect(headCells[1]).toHaveTextContent('Test header 2');
58
94
  });
59
95
  it('should not render second column when showValues = false', function () {
60
- var wrapper = (0, enzyme_1.shallow)(react_1.default.createElement(TableWithBars_1.TableWithBars, { width: 600, height: 300, data: data, options: { showValues: false } }));
61
- var tableChart = wrapper.find(BasicTable_1.BasicTable);
62
- expect(tableChart).toHaveLength(1);
63
- expect(tableChart.prop('columnsData')).toEqual([
64
- {
65
- headCellRenderer: HeadCellRenderer_1.HeadCellRenderer,
66
- id: 'label',
67
- label: 'Attributes',
68
- initialWidth: 240,
69
- resizable: false,
70
- rowCellValueRenderer: AttributeCellRenderer_1.AttributeCellRenderer
71
- }
72
- ]);
73
- });
74
- it('should call props.onItemClick on label click', function () {
75
- var onItemClick = jest.fn();
76
- var wrapper = (0, enzyme_1.mount)(react_1.default.createElement(TableWithBars_1.TableWithBars, { width: 600, height: 300, data: data, onItemClick: onItemClick }));
77
- wrapper.find('.attribute').first().simulate('click');
78
- expect(onItemClick).toHaveBeenCalledWith('attr01');
96
+ setUp({ options: { showValues: false } });
97
+ var headCells = react_2.screen.getAllByTestId('table-with-bar-head-cell');
98
+ expect(headCells).toHaveLength(1);
99
+ expect(headCells[0]).toHaveTextContent('Attributes');
79
100
  });
101
+ it('should call props.onItemClick on label click', function () { return __awaiter(void 0, void 0, void 0, function () {
102
+ var unmockTableSizing, onItemClick, user;
103
+ return __generator(this, function (_a) {
104
+ switch (_a.label) {
105
+ case 0:
106
+ unmockTableSizing = (0, test_utils_1.mockBasicTableSizing)();
107
+ onItemClick = jest.fn();
108
+ user = setUp({ onItemClick: onItemClick }).user;
109
+ return [4 /*yield*/, user.click(react_2.screen.getByText('Attribute 01'))];
110
+ case 1:
111
+ _a.sent();
112
+ expect(onItemClick).toHaveBeenCalledWith('attr01');
113
+ unmockTableSizing();
114
+ return [2 /*return*/];
115
+ }
116
+ });
117
+ }); });
80
118
  });
@@ -15,7 +15,7 @@ var AttributeCellRenderer = function (_a) {
15
15
  var styles = (0, styles_1.useStyles)();
16
16
  var clickable = (0, useClickableChartStyle_1.useClickableChartStyle)(onClick);
17
17
  return (react_1.default.createElement(ExpandedValueTooltip_1.ExpandedValueTooltip, { value: value },
18
- react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.attribute, clickable), onClick: onClick }, value)));
18
+ react_1.default.createElement("div", { "data-reltio-id": "attribute-cell-renderer", className: (0, classnames_1.default)(styles.attribute, clickable), onClick: onClick }, value)));
19
19
  };
20
20
  exports.AttributeCellRenderer = AttributeCellRenderer;
21
21
  exports.default = (0, withTableContext_1.withTableContext)(function (_a, _b) {
@@ -34,7 +34,7 @@ var styles_1 = require("./styles");
34
34
  var HeadCellRenderer = function (_a) {
35
35
  var className = _a.className, headCellData = _a.headCellData, otherProps = __rest(_a, ["className", "headCellData"]);
36
36
  var styles = (0, styles_1.useStyles)();
37
- return (react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.headCell, className) },
37
+ return (react_1.default.createElement("div", { "data-reltio-id": "table-with-bar-head-cell", className: (0, classnames_1.default)(styles.headCell, className) },
38
38
  react_1.default.createElement(DefaultHeadCellRenderer_1.default, __assign({}, otherProps, { headCellData: __assign(__assign({}, headCellData), { label: (react_1.default.createElement(ExpandedValueTooltip_1.ExpandedValueTooltip, { value: headCellData.label },
39
39
  react_1.default.createElement("div", { className: styles.headLabel }, headCellData.label))) }) }))));
40
40
  };
@@ -2,7 +2,6 @@ import React from 'react';
2
2
  type Props = {
3
3
  className?: string;
4
4
  values: string[];
5
- dataReltioId?: string;
6
5
  };
7
6
  export declare const Tags: ({ className, values }: Props) => React.JSX.Element;
8
7
  export {};
@@ -4,17 +4,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  var react_1 = __importDefault(require("react"));
7
- var enzyme_1 = require("enzyme");
8
- var SpecialAttributesArray_1 = require("../SpecialAttributesArray");
9
- var Tag_1 = require("./components/Tag");
7
+ var react_2 = require("@testing-library/react");
8
+ var MdmModuleContext_1 = require("../contexts/MdmModuleContext");
10
9
  var Tags_1 = require("./Tags");
11
10
  describe('Tags tests', function () {
12
11
  var values = ['tag1'];
13
12
  var className = 'class1';
13
+ var entity = { uri: 'uri1' };
14
+ var uiPath = 'https://uiPath';
14
15
  it('should render SpecialAttributesArray with correct props', function () {
15
- var component = (0, enzyme_1.shallow)(react_1.default.createElement(Tags_1.Tags, { values: values, className: className }));
16
- expect(component.find(SpecialAttributesArray_1.SpecialAttributesArray).prop('className')).toBe(className);
17
- expect(component.find(SpecialAttributesArray_1.SpecialAttributesArray).prop('values')).toBe(values);
18
- expect(component.find(SpecialAttributesArray_1.SpecialAttributesArray).prop('Component')).toBe(Tag_1.Tag);
16
+ (0, react_2.render)(react_1.default.createElement(MdmModuleContext_1.MdmModuleProvider, { values: { entity: entity, uiPath: uiPath } },
17
+ react_1.default.createElement(Tags_1.Tags, { values: values, className: className })));
18
+ expect(react_2.screen.getByTestId('reltio-attribute-value')).toHaveClass('class1');
19
+ expect(react_2.screen.getByText('tag1')).toHaveAttribute('href', 'https://uiPath#p~com.reltio.plugins.tags.TagPerspective_e~uri1_tag~tag1');
19
20
  });
20
21
  });
@@ -1,13 +1,58 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
2
49
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
50
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
51
  };
5
52
  Object.defineProperty(exports, "__esModule", { value: true });
6
53
  var react_1 = __importDefault(require("react"));
7
- var enzyme_1 = require("enzyme");
8
- var test_utils_1 = require("react-dom/test-utils");
9
- var TransitiveMatchRule_1 = require("../TransitiveMatchRule");
10
- var MatchRulesBadge_1 = require("../MatchRulesBadge");
54
+ var react_2 = require("@testing-library/react");
55
+ var user_event_1 = __importDefault(require("@testing-library/user-event"));
11
56
  var TransitiveMatchBlock_1 = require("./TransitiveMatchBlock");
12
57
  var matchRules = [
13
58
  { uri: 'uri1', label: 'label1' },
@@ -17,23 +62,34 @@ var transitiveMatchRules = [
17
62
  { label: 'TLabel1', matchRules: matchRules },
18
63
  { label: 'TLabel2', matchRules: matchRules }
19
64
  ];
65
+ var defaultProps = { transitiveMatchRules: transitiveMatchRules };
66
+ var setUp = function (props) {
67
+ if (props === void 0) { props = {}; }
68
+ var user = user_event_1.default.setup();
69
+ return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(TransitiveMatchBlock_1.TransitiveMatchBlock, __assign({}, defaultProps, props))));
70
+ };
20
71
  describe('TransitiveMatchBlock test', function () {
21
- var getTransitiveMatchRule = function (component) { return component.find(TransitiveMatchRule_1.TransitiveMatchRule); };
22
- var getMatchRulesBadge = function (component) { return component.find(MatchRulesBadge_1.MatchRulesBadge); };
23
- it('should render expanded TransitiveMatchRule', function () {
24
- var component = (0, enzyme_1.mount)(react_1.default.createElement(TransitiveMatchBlock_1.TransitiveMatchBlock, { transitiveMatchRules: transitiveMatchRules }));
25
- expect(getTransitiveMatchRule(component)).toHaveLength(0);
26
- (0, test_utils_1.act)(function () {
27
- getMatchRulesBadge(component).prop('onExpand')();
72
+ it('should expand TransitiveMatchRule correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
73
+ var user, matchRules;
74
+ return __generator(this, function (_a) {
75
+ switch (_a.label) {
76
+ case 0:
77
+ user = setUp().user;
78
+ expect(react_2.screen.getByText('Transitive matches')).toBeInTheDocument();
79
+ expect(react_2.screen.queryByTestId('match-rule-wrapper')).not.toBeInTheDocument();
80
+ return [4 /*yield*/, user.click(react_2.screen.getByTestId('arrow-expand-button'))];
81
+ case 1:
82
+ _a.sent();
83
+ matchRules = react_2.screen.getAllByTestId('match-rule-wrapper');
84
+ expect(matchRules).toHaveLength(2);
85
+ expect((0, react_2.within)(matchRules[0]).getByText('TLabel1')).toBeInTheDocument();
86
+ expect((0, react_2.within)(matchRules[0]).getByText('Match rules')).toBeInTheDocument();
87
+ expect((0, react_2.within)(matchRules[0]).getByText('- label1')).toBeInTheDocument();
88
+ expect((0, react_2.within)(matchRules[1]).getByText('TLabel2')).toBeInTheDocument();
89
+ expect((0, react_2.within)(matchRules[1]).getByText('Match rules')).toBeInTheDocument();
90
+ expect((0, react_2.within)(matchRules[1]).getByText('- label2')).toBeInTheDocument();
91
+ return [2 /*return*/];
92
+ }
28
93
  });
29
- component.update();
30
- var transitiveMatchRuleComponents = getTransitiveMatchRule(component);
31
- expect(transitiveMatchRuleComponents).toHaveLength(2);
32
- expect(transitiveMatchRuleComponents.at(0).prop('label')).toBe(transitiveMatchRules[0].label);
33
- expect(transitiveMatchRuleComponents.at(1).prop('label')).toBe(transitiveMatchRules[1].label);
34
- });
35
- it('should render correct MatchRulesBadge', function () {
36
- var component = (0, enzyme_1.shallow)(react_1.default.createElement(TransitiveMatchBlock_1.TransitiveMatchBlock, { transitiveMatchRules: transitiveMatchRules }));
37
- expect(component.find(TransitiveMatchBlock_1.MatchRuleBadgeWithTooltip).text()).toBe('Transitive matches');
38
- });
94
+ }); });
39
95
  });
@@ -10,49 +10,90 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
13
49
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
50
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
51
  };
16
52
  Object.defineProperty(exports, "__esModule", { value: true });
17
53
  var react_1 = __importDefault(require("react"));
18
- var enzyme_1 = require("enzyme");
19
- var test_utils_1 = require("react-dom/test-utils");
20
- var SimpleMatchRulesBuilder_1 = require("../SimpleMatchRulesBuilder");
21
- var SimpleMatchRules_1 = require("../SimpleMatchRules");
22
- var ArrowExpandButton_1 = require("../ArrowExpandButton");
54
+ var react_2 = require("@testing-library/react");
55
+ var user_event_1 = __importDefault(require("@testing-library/user-event"));
23
56
  var TransitiveMatchRule_1 = require("./TransitiveMatchRule");
24
57
  describe('TransitiveMatchRule tests', function () {
25
- var getSimpleMatchRulesBuilder = function (component) { return component.find(SimpleMatchRulesBuilder_1.SimpleMatchRulesBuilder); };
26
- var getBadge = function (component) { return component.find('.badge'); };
27
- var getLabel = function (component) { return component.find('.label'); };
28
- var getArrowExpandButton = function (component) { return component.find(ArrowExpandButton_1.ArrowExpandButton); };
29
- var matchRules = [
30
- { uri: 'uri1', label: 'label1' },
31
- { uri: 'uri2', label: 'label2' }
32
- ];
33
- var transitiveMatchRule = { label: 'TLabel1', matchRules: matchRules };
34
- it('should render SimpleMatchRulesBuilder when expanded', function () {
35
- var component = (0, enzyme_1.mount)(react_1.default.createElement(TransitiveMatchRule_1.TransitiveMatchRule, __assign({}, transitiveMatchRule)));
36
- expect(getSimpleMatchRulesBuilder(component)).toHaveLength(0);
37
- (0, test_utils_1.act)(function () {
38
- getBadge(component).prop('onClick')();
39
- });
40
- component.update();
41
- expect(getSimpleMatchRulesBuilder(component)).toHaveLength(1);
42
- expect(getSimpleMatchRulesBuilder(component).prop('matchRules')).toBe(matchRules);
43
- expect(getSimpleMatchRulesBuilder(component).prop('Component')).toBe(SimpleMatchRules_1.SimpleMatchRules);
44
- });
45
- it('should render label correctly', function () {
46
- var component = (0, enzyme_1.mount)(react_1.default.createElement(TransitiveMatchRule_1.TransitiveMatchRule, __assign({}, transitiveMatchRule)));
47
- expect(getLabel(component).text()).toBe(transitiveMatchRule.label);
48
- });
49
- it('should provide expanded prop to arrow', function () {
50
- var component = (0, enzyme_1.mount)(react_1.default.createElement(TransitiveMatchRule_1.TransitiveMatchRule, __assign({}, transitiveMatchRule)));
51
- expect(getArrowExpandButton(component).prop('expanded')).toBe(false);
52
- (0, test_utils_1.act)(function () {
53
- getBadge(component).prop('onClick')();
58
+ var defaultProps = {
59
+ label: 'TLabel1',
60
+ matchRules: [
61
+ { uri: 'uri1', label: 'label1' },
62
+ { uri: 'uri2', label: 'label2' }
63
+ ]
64
+ };
65
+ var setUp = function (props) {
66
+ if (props === void 0) { props = {}; }
67
+ var user = user_event_1.default.setup();
68
+ return __assign({ user: user }, (0, react_2.render)(react_1.default.createElement(TransitiveMatchRule_1.TransitiveMatchRule, __assign({}, defaultProps, props))));
69
+ };
70
+ it('should render SimpleMatchRulesBuilder when expanded', function () { return __awaiter(void 0, void 0, void 0, function () {
71
+ var user, expandButton, matchRules;
72
+ return __generator(this, function (_a) {
73
+ switch (_a.label) {
74
+ case 0:
75
+ user = setUp().user;
76
+ expect(react_2.screen.getByText(defaultProps.label)).toBeInTheDocument();
77
+ expect(react_2.screen.queryByTestId('simple-match-rules')).not.toBeInTheDocument();
78
+ expandButton = react_2.screen.getByTestId('arrow-expand-button');
79
+ expect(expandButton.firstChild).not.toHaveClass('expanded');
80
+ return [4 /*yield*/, user.click(expandButton)];
81
+ case 1:
82
+ _a.sent();
83
+ expect(expandButton.firstChild).toHaveClass('expanded');
84
+ expect(react_2.screen.getByTestId('simple-match-rules')).toBeInTheDocument();
85
+ expect(react_2.screen.getByText('Match rules')).toBeInTheDocument();
86
+ matchRules = react_2.screen.getAllByTestId('match-rule-info');
87
+ expect(matchRules).toHaveLength(defaultProps.matchRules.length);
88
+ expect(matchRules[0]).toHaveTextContent('• label1');
89
+ expect(matchRules[1]).toHaveTextContent('• label2');
90
+ return [4 /*yield*/, user.click(react_2.screen.getByTestId('arrow-expand-button'))];
91
+ case 2:
92
+ _a.sent();
93
+ expect(expandButton.firstChild).not.toHaveClass('expanded');
94
+ expect(react_2.screen.queryByTestId('simple-match-rules')).not.toBeInTheDocument();
95
+ return [2 /*return*/];
96
+ }
54
97
  });
55
- component.update();
56
- expect(getArrowExpandButton(component).prop('expanded')).toBe(true);
57
- });
98
+ }); });
58
99
  });
@@ -12,7 +12,7 @@ var TransitiveMatchRulesTooltip = function (_a) {
12
12
  var styles = (0, styles_1.useStyles)();
13
13
  return (react_1.default.createElement(react_1.default.Fragment, null, transitiveMatchRules.map(function (_a, index) {
14
14
  var label = _a.label, matchRules = _a.matchRules;
15
- return (react_1.default.createElement("div", { key: index, className: styles.ruleWrapper },
15
+ return (react_1.default.createElement("div", { key: index, "data-reltio-id": "match-rule-wrapper", className: styles.ruleWrapper },
16
16
  react_1.default.createElement("div", { className: styles.label }, label),
17
17
  react_1.default.createElement(MatchRulesTooltip_1.MatchRulesTooltip, { matchRules: matchRules })));
18
18
  })));
@@ -4,28 +4,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  var react_1 = __importDefault(require("react"));
7
- var enzyme_1 = require("enzyme");
7
+ var react_2 = require("@testing-library/react");
8
8
  var TransitiveMatchRulesTooltip_1 = require("./TransitiveMatchRulesTooltip");
9
- var MatchRulesTooltip_1 = require("../MatchRulesTooltip");
10
9
  describe('TransitiveMatchRulesTooltip tests', function () {
11
10
  var rules = [
12
- { label: 'label1', matchRules: [{ uri: 'uri1', label: 'label1' }] },
13
- { label: 'label2', matchRules: [{ uri: 'uri2', label: 'label2' }] }
11
+ { label: 'label1', matchRules: [{ uri: 'uri1', label: 'label11' }] },
12
+ { label: 'label2', matchRules: [{ uri: 'uri2', label: 'label22' }] }
14
13
  ];
15
- var getLabel = function (component) { return component.find('.label'); };
16
- var getMatchRulesTooltip = function (component) { return component.find(MatchRulesTooltip_1.MatchRulesTooltip); };
17
14
  it('should render all rules', function () {
18
- var component = (0, enzyme_1.shallow)(react_1.default.createElement(TransitiveMatchRulesTooltip_1.TransitiveMatchRulesTooltip, { transitiveMatchRules: rules }));
19
- expect(component.find('.ruleWrapper')).toHaveLength(rules.length);
20
- });
21
- it('should render correct label for rule', function () {
22
- var component = (0, enzyme_1.shallow)(react_1.default.createElement(TransitiveMatchRulesTooltip_1.TransitiveMatchRulesTooltip, { transitiveMatchRules: rules }));
23
- expect(getLabel(component.find('.ruleWrapper').at(0)).text()).toBe(rules[0].label);
24
- expect(getLabel(component.find('.ruleWrapper').at(1)).text()).toBe(rules[1].label);
25
- });
26
- it('should provide correct props for MatchRulesTooltip', function () {
27
- var component = (0, enzyme_1.shallow)(react_1.default.createElement(TransitiveMatchRulesTooltip_1.TransitiveMatchRulesTooltip, { transitiveMatchRules: rules }));
28
- expect(getMatchRulesTooltip(component.find('.ruleWrapper').at(0)).prop('matchRules')).toBe(rules[0].matchRules);
29
- expect(getMatchRulesTooltip(component.find('.ruleWrapper').at(1)).prop('matchRules')).toBe(rules[1].matchRules);
15
+ (0, react_2.render)(react_1.default.createElement(TransitiveMatchRulesTooltip_1.TransitiveMatchRulesTooltip, { transitiveMatchRules: rules }));
16
+ var matchRules = react_2.screen.getAllByTestId('match-rule-wrapper');
17
+ expect(matchRules).toHaveLength(rules.length);
18
+ expect((0, react_2.within)(matchRules[0]).getByText('label1')).toBeInTheDocument();
19
+ expect((0, react_2.within)(matchRules[0]).getByText('Match rules')).toBeInTheDocument();
20
+ expect((0, react_2.within)(matchRules[0]).getByText('- label11')).toBeInTheDocument();
21
+ expect((0, react_2.within)(matchRules[1]).getByText('label2')).toBeInTheDocument();
22
+ expect((0, react_2.within)(matchRules[1]).getByText('Match rules')).toBeInTheDocument();
23
+ expect((0, react_2.within)(matchRules[1]).getByText('- label22')).toBeInTheDocument();
30
24
  });
31
25
  });
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  type Props = {
3
- link: string;
4
- filename: string;
3
+ link?: string;
4
+ filename?: string;
5
5
  onUpload: (result: File) => Promise<void>;
6
6
  onError?: (error: Error) => void;
7
7
  onCancel: () => void;