@truedat/dq 7.5.9 → 7.5.11

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 (350) hide show
  1. package/package.json +41 -71
  2. package/src/components/ConceptRules.js +1 -2
  3. package/src/components/ConditionCell.js +17 -16
  4. package/src/components/ConditionSummary.js +1 -1
  5. package/src/components/EditRule.js +0 -1
  6. package/src/components/ExecutionForm.js +2 -4
  7. package/src/components/ExecutionGroup.js +0 -1
  8. package/src/components/ExecutionGroupBreadcrumbs.js +1 -2
  9. package/src/components/ExecutionGroupContent.js +3 -3
  10. package/src/components/ExecutionGroupLink.js +1 -2
  11. package/src/components/ExecutionGroupLoader.js +1 -1
  12. package/src/components/ExecutionGroupMessage.js +0 -1
  13. package/src/components/ExecutionGroups.js +1 -2
  14. package/src/components/ExecutionGroupsTable.js +0 -1
  15. package/src/components/ExecutionPopup.js +1 -1
  16. package/src/components/FieldSummary.js +1 -2
  17. package/src/components/ImplementationActions.js +11 -6
  18. package/src/components/ImplementationCrumbs.js +2 -3
  19. package/src/components/ImplementationExecutionFilters.js +2 -2
  20. package/src/components/ImplementationExecutions.js +2 -2
  21. package/src/components/ImplementationResultBar.js +14 -15
  22. package/src/components/ImplementationSearchResults.js +6 -4
  23. package/src/components/ImplementationStructureDelete.js +0 -1
  24. package/src/components/ImplementationStructureLink.js +1 -2
  25. package/src/components/ImplementationStructureLinksActions.js +1 -2
  26. package/src/components/ImplementationStructures.js +2 -2
  27. package/src/components/ImplementationStructuresNew.js +3 -4
  28. package/src/components/ImplementationSummary.js +3 -7
  29. package/src/components/Implementations.js +3 -3
  30. package/src/components/ImplementationsHeader.js +4 -5
  31. package/src/components/ImplementationsRoutes.js +379 -322
  32. package/src/components/ImplementationsUploadButton.js +0 -1
  33. package/src/components/InformationSummary.js +0 -1
  34. package/src/components/JoinTypeIcon.js +8 -9
  35. package/src/components/MoveImplementation.js +0 -1
  36. package/src/components/NewBasicRuleImplementation.js +4 -4
  37. package/src/components/NewRemediation.js +1 -1
  38. package/src/components/NewRule.js +1 -2
  39. package/src/components/NewRuleImplementation.js +4 -4
  40. package/src/components/QualityEventError.js +4 -9
  41. package/src/components/QualityRoutes.js +52 -26
  42. package/src/components/RawContent.js +0 -1
  43. package/src/components/RemediationCrumbs.js +2 -2
  44. package/src/components/RemediationForm.js +4 -4
  45. package/src/components/RemediationPlan.js +4 -5
  46. package/src/components/Rule.js +0 -1
  47. package/src/components/RuleActions.js +13 -7
  48. package/src/components/RuleCrumbs.js +2 -3
  49. package/src/components/RuleEventDecorator.js +0 -1
  50. package/src/components/RuleEventRow.js +0 -1
  51. package/src/components/RuleEvents.js +0 -1
  52. package/src/components/RuleForm.js +11 -21
  53. package/src/components/RuleFormImplementations.js +0 -1
  54. package/src/components/RuleImplementation.js +0 -1
  55. package/src/components/RuleImplementationActions.js +2 -2
  56. package/src/components/RuleImplementationEventRow.js +0 -1
  57. package/src/components/RuleImplementationEvents.js +0 -1
  58. package/src/components/RuleImplementationHistory.js +1 -2
  59. package/src/components/RuleImplementationHistoryRow.js +1 -2
  60. package/src/components/RuleImplementationLink.js +1 -2
  61. package/src/components/RuleImplementationLoader.js +2 -2
  62. package/src/components/RuleImplementationProperties.js +3 -4
  63. package/src/components/RuleImplementationResultTabs.js +7 -11
  64. package/src/components/RuleImplementationResults.js +2 -3
  65. package/src/components/RuleImplementationResultsLink.js +1 -2
  66. package/src/components/RuleImplementationRow.js +0 -1
  67. package/src/components/RuleImplementationTabs.js +31 -21
  68. package/src/components/RuleImplementationsActions.js +1 -2
  69. package/src/components/RuleImplementationsDownload.js +0 -1
  70. package/src/components/RuleImplementationsFromRuleLoader.js +2 -2
  71. package/src/components/RuleImplementationsLabelResults.js +5 -6
  72. package/src/components/RuleImplementationsOptions.js +1 -2
  73. package/src/components/RuleImplementationsSearch.js +0 -1
  74. package/src/components/RuleImplementationsTable.js +1 -1
  75. package/src/components/RuleLink.js +1 -2
  76. package/src/components/RuleLoader.js +2 -2
  77. package/src/components/RuleProperties.js +4 -6
  78. package/src/components/RuleResult.js +0 -1
  79. package/src/components/RuleResultDecorator.js +5 -6
  80. package/src/components/RuleResultDetails.js +0 -4
  81. package/src/components/RuleResultRemediationLoader.js +1 -1
  82. package/src/components/RuleResultRemediations.js +0 -1
  83. package/src/components/RuleResultRow.js +1 -2
  84. package/src/components/RuleResultSegmentRow.js +0 -1
  85. package/src/components/RuleResultSegments.js +0 -1
  86. package/src/components/RuleResultSegmentsLoader.js +1 -1
  87. package/src/components/RuleResultsRoutes.js +41 -41
  88. package/src/components/RuleResultsTable.js +0 -1
  89. package/src/components/RuleResultsUpload.js +0 -1
  90. package/src/components/RuleRoutes.js +72 -67
  91. package/src/components/RuleRow.js +1 -2
  92. package/src/components/RuleSelectionForm.js +0 -1
  93. package/src/components/RuleSelector.js +0 -1
  94. package/src/components/RuleSubscriptionLoader.js +1 -1
  95. package/src/components/RuleSummary.js +1 -1
  96. package/src/components/RuleTabs.js +8 -7
  97. package/src/components/Rules.js +2 -2
  98. package/src/components/RulesActions.js +1 -2
  99. package/src/components/RulesLabelResults.js +2 -3
  100. package/src/components/RulesRoutes.js +32 -21
  101. package/src/components/RulesSearch.js +0 -1
  102. package/src/components/RulesUploadButton.js +0 -1
  103. package/src/components/Subscription.js +3 -3
  104. package/src/components/TaxonomySummary.js +0 -1
  105. package/src/components/__tests__/ConceptRules.spec.js +0 -1
  106. package/src/components/__tests__/ConceptRulesLoader.spec.js +19 -22
  107. package/src/components/__tests__/ConditionSummary.spec.js +0 -1
  108. package/src/components/__tests__/EditRule.spec.js +10 -7
  109. package/src/components/__tests__/ExecutionForm.spec.js +5 -14
  110. package/src/components/__tests__/ExecutionGroup.spec.js +18 -11
  111. package/src/components/__tests__/ExecutionGroupBreadcrumbs.spec.js +0 -1
  112. package/src/components/__tests__/ExecutionGroupContent.spec.js +0 -2
  113. package/src/components/__tests__/ExecutionGroupLink.spec.js +0 -1
  114. package/src/components/__tests__/ExecutionGroupLoader.spec.js +18 -18
  115. package/src/components/__tests__/ExecutionGroupMessage.spec.js +9 -13
  116. package/src/components/__tests__/ExecutionGroups.spec.js +0 -1
  117. package/src/components/__tests__/ExecutionGroupsTable.spec.js +0 -1
  118. package/src/components/__tests__/ExecutionPopup.spec.js +0 -1
  119. package/src/components/__tests__/ImplementationActions.spec.js +0 -1
  120. package/src/components/__tests__/ImplementationExecutionFilters.spec.js +2 -3
  121. package/src/components/__tests__/ImplementationExecutions.spec.js +2 -3
  122. package/src/components/__tests__/ImplementationResultBar.spec.js +44 -27
  123. package/src/components/__tests__/ImplementationSearchResults.spec.js +13 -22
  124. package/src/components/__tests__/ImplementationStructureDelete.spec.js +0 -1
  125. package/src/components/__tests__/ImplementationStructureLink.spec.js +0 -1
  126. package/src/components/__tests__/ImplementationStructures.spec.js +1 -2
  127. package/src/components/__tests__/ImplementationStructuresNew.spec.js +43 -23
  128. package/src/components/__tests__/ImplementationSummary.spec.js +65 -37
  129. package/src/components/__tests__/Implementations.spec.js +4 -10
  130. package/src/components/__tests__/ImplementationsRoutes.spec.js +133 -0
  131. package/src/components/__tests__/ImplementationsUploadButton.spec.js +51 -32
  132. package/src/components/__tests__/InformationSummary.spec.js +0 -1
  133. package/src/components/__tests__/MoveImplementation.spec.js +0 -1
  134. package/src/components/__tests__/NewBasicRuleImplementation.spec.js +19 -23
  135. package/src/components/__tests__/NewRule.spec.js +23 -14
  136. package/src/components/__tests__/NewRuleImplementation.spec.js +101 -101
  137. package/src/components/__tests__/QualityEventError.spec.js +4 -4
  138. package/src/components/__tests__/QualityRoutes.spec.js +86 -0
  139. package/src/components/__tests__/RawContent.spec.js +0 -1
  140. package/src/components/__tests__/RemediationForm.spec.js +0 -2
  141. package/src/components/__tests__/RemediationPlan.spec.js +23 -29
  142. package/src/components/__tests__/Rule.spec.js +19 -5
  143. package/src/components/__tests__/RuleActions.spec.js +11 -8
  144. package/src/components/__tests__/RuleCrumbs.spec.js +12 -11
  145. package/src/components/__tests__/RuleEventDecorator.spec.js +0 -1
  146. package/src/components/__tests__/RuleEventRow.spec.js +0 -1
  147. package/src/components/__tests__/RuleEvents.spec.js +0 -1
  148. package/src/components/__tests__/RuleForm.spec.js +30 -73
  149. package/src/components/__tests__/RuleFormImplementations.spec.js +15 -16
  150. package/src/components/__tests__/RuleImplementation.spec.js +23 -30
  151. package/src/components/__tests__/RuleImplementationEvents.spec.js +0 -1
  152. package/src/components/__tests__/RuleImplementationHistory.spec.js +7 -22
  153. package/src/components/__tests__/RuleImplementationLoader.spec.js +2 -3
  154. package/src/components/__tests__/RuleImplementationProperties.spec.js +56 -82
  155. package/src/components/__tests__/RuleImplementationResultTabs.spec.js +5 -17
  156. package/src/components/__tests__/RuleImplementationResults.spec.js +2 -3
  157. package/src/components/__tests__/RuleImplementationResultsLink.spec.js +5 -5
  158. package/src/components/__tests__/RuleImplementationTabs.spec.js +0 -1
  159. package/src/components/__tests__/RuleImplementationsActions.spec.js +58 -35
  160. package/src/components/__tests__/RuleImplementationsFromRuleLoader.spec.js +34 -24
  161. package/src/components/__tests__/RuleImplementationsLoader.spec.js +22 -14
  162. package/src/components/__tests__/RuleImplementationsOptions.spec.js +0 -1
  163. package/src/components/__tests__/RuleImplementationsSearch.spec.js +14 -23
  164. package/src/components/__tests__/RuleImplementationsTable.spec.js +30 -56
  165. package/src/components/__tests__/RuleProperties.spec.js +4 -10
  166. package/src/components/__tests__/RuleResult.spec.js +10 -22
  167. package/src/components/__tests__/RuleResultDecorator.spec.js +36 -26
  168. package/src/components/__tests__/RuleResultDetails.spec.js +24 -57
  169. package/src/components/__tests__/RuleResultRemediationLoader.spec.js +15 -14
  170. package/src/components/__tests__/RuleResultRemediations.spec.js +2 -3
  171. package/src/components/__tests__/RuleResultRoutes.spec.js +83 -59
  172. package/src/components/__tests__/RuleResultRow.spec.js +0 -1
  173. package/src/components/__tests__/RuleResultSegmentRow.spec.js +46 -83
  174. package/src/components/__tests__/RuleResultSegments.spec.js +5 -10
  175. package/src/components/__tests__/RuleResultSegmentsLoader.spec.js +15 -14
  176. package/src/components/__tests__/RuleResultsUpload.spec.js +0 -1
  177. package/src/components/__tests__/RuleRoutes.spec.js +90 -14
  178. package/src/components/__tests__/RuleRow.spec.js +0 -2
  179. package/src/components/__tests__/RuleSearch.spec.js +10 -15
  180. package/src/components/__tests__/RuleSelectionForm.spec.js +0 -1
  181. package/src/components/__tests__/RuleSubscriptionLoader.spec.js +19 -18
  182. package/src/components/__tests__/RuleSummary.spec.js +0 -1
  183. package/src/components/__tests__/Rules.spec.js +58 -24
  184. package/src/components/__tests__/RulesActions.spec.js +17 -13
  185. package/src/components/__tests__/RulesLoader.spec.js +9 -9
  186. package/src/components/__tests__/RulesRoutes.spec.js +51 -0
  187. package/src/components/__tests__/RulesUploadButton.spec.js +0 -1
  188. package/src/components/__tests__/Subscription.spec.js +18 -19
  189. package/src/components/__tests__/TaxonomySummary.spec.js +0 -1
  190. package/src/components/__tests__/__snapshots__/ConceptRules.spec.js.snap +3 -0
  191. package/src/components/__tests__/__snapshots__/ConditionSummary.spec.js.snap +1 -0
  192. package/src/components/__tests__/__snapshots__/EditRule.spec.js.snap +120 -80
  193. package/src/components/__tests__/__snapshots__/ExecutionForm.spec.js.snap +6 -6
  194. package/src/components/__tests__/__snapshots__/ExecutionGroup.spec.js.snap +12 -10
  195. package/src/components/__tests__/__snapshots__/ExecutionGroupBreadcrumbs.spec.js.snap +2 -1
  196. package/src/components/__tests__/__snapshots__/ExecutionGroupLink.spec.js.snap +1 -0
  197. package/src/components/__tests__/__snapshots__/ExecutionGroupMessage.spec.js.snap +36 -9
  198. package/src/components/__tests__/__snapshots__/ExecutionGroups.spec.js.snap +9 -6
  199. package/src/components/__tests__/__snapshots__/ExecutionGroupsTable.spec.js.snap +6 -5
  200. package/src/components/__tests__/__snapshots__/ImplementationActions.spec.js.snap +6 -5
  201. package/src/components/__tests__/__snapshots__/ImplementationExecutionFilters.spec.js.snap +4 -0
  202. package/src/components/__tests__/__snapshots__/ImplementationExecutions.spec.js.snap +10 -5
  203. package/src/components/__tests__/__snapshots__/ImplementationResultBar.spec.js.snap +10 -20
  204. package/src/components/__tests__/__snapshots__/ImplementationSearchResults.spec.js.snap +249 -71
  205. package/src/components/__tests__/__snapshots__/ImplementationStructureLink.spec.js.snap +1 -0
  206. package/src/components/__tests__/__snapshots__/ImplementationStructures.spec.js.snap +3 -1
  207. package/src/components/__tests__/__snapshots__/ImplementationStructuresNew.spec.js.snap +220 -9
  208. package/src/components/__tests__/__snapshots__/ImplementationSummary.spec.js.snap +312 -166
  209. package/src/components/__tests__/__snapshots__/Implementations.spec.js.snap +9 -21
  210. package/src/components/__tests__/__snapshots__/ImplementationsRoutes.spec.js.snap +37 -0
  211. package/src/components/__tests__/__snapshots__/InformationSummary.spec.js.snap +10 -10
  212. package/src/components/__tests__/__snapshots__/MoveImplementation.spec.js.snap +1 -0
  213. package/src/components/__tests__/__snapshots__/NewBasicRuleImplementation.spec.js.snap +76 -20
  214. package/src/components/__tests__/__snapshots__/NewRule.spec.js.snap +125 -54
  215. package/src/components/__tests__/__snapshots__/NewRuleImplementation.spec.js.snap +157 -79
  216. package/src/components/__tests__/__snapshots__/QualityEventError.spec.js.snap +31 -10
  217. package/src/components/__tests__/__snapshots__/QualityRoutes.spec.js.snap +51 -0
  218. package/src/components/__tests__/__snapshots__/RawContent.spec.js.snap +26 -26
  219. package/src/components/__tests__/__snapshots__/RemediationForm.spec.js.snap +4 -5
  220. package/src/components/__tests__/__snapshots__/RemediationPlan.spec.js.snap +2 -4
  221. package/src/components/__tests__/__snapshots__/Rule.spec.js.snap +42 -41
  222. package/src/components/__tests__/__snapshots__/RuleActions.spec.js.snap +41 -43
  223. package/src/components/__tests__/__snapshots__/RuleCrumbs.spec.js.snap +40 -60
  224. package/src/components/__tests__/__snapshots__/RuleForm.spec.js.snap +194 -45
  225. package/src/components/__tests__/__snapshots__/RuleFormImplementations.spec.js.snap +20 -8
  226. package/src/components/__tests__/__snapshots__/RuleImplementation.spec.js.snap +23 -14
  227. package/src/components/__tests__/__snapshots__/RuleImplementationEvents.spec.js.snap +3 -3
  228. package/src/components/__tests__/__snapshots__/RuleImplementationHistory.spec.js.snap +7 -4
  229. package/src/components/__tests__/__snapshots__/RuleImplementationProperties.spec.js.snap +123 -98
  230. package/src/components/__tests__/__snapshots__/RuleImplementationResultTabs.spec.js.snap +2 -1
  231. package/src/components/__tests__/__snapshots__/RuleImplementationResults.spec.js.snap +12 -6
  232. package/src/components/__tests__/__snapshots__/RuleImplementationResultsLink.spec.js.snap +8 -5
  233. package/src/components/__tests__/__snapshots__/RuleImplementationTabs.spec.js.snap +14 -7
  234. package/src/components/__tests__/__snapshots__/RuleImplementationsActions.spec.js.snap +105 -68
  235. package/src/components/__tests__/__snapshots__/RuleImplementationsFromRuleLoader.spec.js.snap +1 -35
  236. package/src/components/__tests__/__snapshots__/RuleImplementationsLoader.spec.js.snap +1 -31
  237. package/src/components/__tests__/__snapshots__/RuleImplementationsOptions.spec.js.snap +4 -4
  238. package/src/components/__tests__/__snapshots__/RuleImplementationsSearch.spec.js.snap +46 -15
  239. package/src/components/__tests__/__snapshots__/RuleImplementationsTable.spec.js.snap +54 -107
  240. package/src/components/__tests__/__snapshots__/RuleProperties.spec.js.snap +3 -3
  241. package/src/components/__tests__/__snapshots__/RuleResult.spec.js.snap +17 -1
  242. package/src/components/__tests__/__snapshots__/RuleResultDecorator.spec.js.snap +4 -4
  243. package/src/components/__tests__/__snapshots__/RuleResultDetails.spec.js.snap +17 -17
  244. package/src/components/__tests__/__snapshots__/RuleResultRoutes.spec.js.snap +4 -321
  245. package/src/components/__tests__/__snapshots__/RuleResultSegments.spec.js.snap +1 -1
  246. package/src/components/__tests__/__snapshots__/RuleResultsUpload.spec.js.snap +1 -1
  247. package/src/components/__tests__/__snapshots__/RuleRoutes.spec.js.snap +32 -1
  248. package/src/components/__tests__/__snapshots__/RuleRow.spec.js.snap +4 -6
  249. package/src/components/__tests__/__snapshots__/RuleSearch.spec.js.snap +46 -15
  250. package/src/components/__tests__/__snapshots__/RuleSelectionForm.spec.js.snap +1 -0
  251. package/src/components/__tests__/__snapshots__/RuleSubscriptionLoader.spec.js.snap +1 -1
  252. package/src/components/__tests__/__snapshots__/Rules.spec.js.snap +128 -173
  253. package/src/components/__tests__/__snapshots__/RulesActions.spec.js.snap +5 -7
  254. package/src/components/__tests__/__snapshots__/RulesRoutes.spec.js.snap +60 -0
  255. package/src/components/__tests__/__snapshots__/Subscription.spec.js.snap +127 -184
  256. package/src/components/ruleImplementationForm/DatasetForm.js +8 -7
  257. package/src/components/ruleImplementationForm/DateField.js +0 -1
  258. package/src/components/ruleImplementationForm/DateTimeField.js +0 -1
  259. package/src/components/ruleImplementationForm/FieldModifier.js +3 -3
  260. package/src/components/ruleImplementationForm/FieldsGrid.js +1 -1
  261. package/src/components/ruleImplementationForm/FieldsGroup.js +3 -3
  262. package/src/components/ruleImplementationForm/FiltersField.js +5 -5
  263. package/src/components/ruleImplementationForm/FiltersFormGroup.js +5 -6
  264. package/src/components/ruleImplementationForm/FiltersGrid.js +1 -1
  265. package/src/components/ruleImplementationForm/FiltersGroup.js +6 -1
  266. package/src/components/ruleImplementationForm/FixedListField.js +6 -7
  267. package/src/components/ruleImplementationForm/InformationForm.js +3 -4
  268. package/src/components/ruleImplementationForm/LimitsForm.js +0 -1
  269. package/src/components/ruleImplementationForm/NumberField.js +0 -1
  270. package/src/components/ruleImplementationForm/PopulationForm.js +0 -1
  271. package/src/components/ruleImplementationForm/RuleImplementationBasicForm.js +6 -7
  272. package/src/components/ruleImplementationForm/RuleImplementationForm.js +8 -8
  273. package/src/components/ruleImplementationForm/RuleImplementationRawForm.js +10 -9
  274. package/src/components/ruleImplementationForm/SegmentsForm.js +0 -1
  275. package/src/components/ruleImplementationForm/StringField.js +2 -3
  276. package/src/components/ruleImplementationForm/StringListField.js +2 -3
  277. package/src/components/ruleImplementationForm/ValidationsForm.js +0 -1
  278. package/src/components/ruleImplementationForm/ValueConditions.js +3 -3
  279. package/src/components/ruleImplementationForm/__tests__/DataSetForm.spec.js +5 -18
  280. package/src/components/ruleImplementationForm/__tests__/FiltersField.spec.js +5 -10
  281. package/src/components/ruleImplementationForm/__tests__/FiltersFormGroup.spec.js +7 -21
  282. package/src/components/ruleImplementationForm/__tests__/FiltersGroup.spec.js +12 -21
  283. package/src/components/ruleImplementationForm/__tests__/InformationForm.spec.js +9 -3
  284. package/src/components/ruleImplementationForm/__tests__/LimitsForm.spec.js +74 -57
  285. package/src/components/ruleImplementationForm/__tests__/RuleImplementationBasicForm.spec.js +41 -27
  286. package/src/components/ruleImplementationForm/__tests__/RuleImplementationForm.spec.js +0 -2
  287. package/src/components/ruleImplementationForm/__tests__/RuleImplementationRawForm.spec.js +81 -52
  288. package/src/components/ruleImplementationForm/__tests__/ValueConditions.spec.js +11 -21
  289. package/src/components/ruleImplementationForm/__tests__/__snapshots__/DataSetForm.spec.js.snap +6 -6
  290. package/src/components/ruleImplementationForm/__tests__/__snapshots__/FiltersField.spec.js.snap +24 -48
  291. package/src/components/ruleImplementationForm/__tests__/__snapshots__/FiltersFormGroup.spec.js.snap +102 -6
  292. package/src/components/ruleImplementationForm/__tests__/__snapshots__/FiltersGroup.spec.js.snap +69 -6
  293. package/src/components/ruleImplementationForm/__tests__/__snapshots__/InformationForm.spec.js.snap +88 -18
  294. package/src/components/ruleImplementationForm/__tests__/__snapshots__/LimitsForm.spec.js.snap +68 -68
  295. package/src/components/ruleImplementationForm/__tests__/__snapshots__/RuleImplementationBasicForm.spec.js.snap +78 -17
  296. package/src/components/ruleImplementationForm/__tests__/__snapshots__/RuleImplementationForm.spec.js.snap +23 -24
  297. package/src/components/ruleImplementationForm/__tests__/__snapshots__/RuleImplementationRawForm.spec.js.snap +87 -30
  298. package/src/components/ruleImplementationForm/__tests__/__snapshots__/ValueConditions.spec.js.snap +69 -6
  299. package/src/components/ruleImplementationForm/limitsValidation.js +11 -10
  300. package/src/hooks/useConcept.js +4 -1
  301. package/src/sagas/__tests__/createImplementationStructure.spec.js +2 -2
  302. package/src/sagas/__tests__/createRemediation.spec.js +3 -3
  303. package/src/sagas/__tests__/deleteImplementation.spec.js +1 -1
  304. package/src/sagas/__tests__/deleteImplementationStructure.spec.js +2 -2
  305. package/src/sagas/__tests__/deleteRemediation.spec.js +3 -3
  306. package/src/sagas/__tests__/deleteRule.spec.js +1 -1
  307. package/src/sagas/__tests__/deleteRuleResult.spec.js +2 -2
  308. package/src/sagas/__tests__/fetchRemediation.spec.js +2 -2
  309. package/src/sagas/__tests__/fetchRule.spec.js +2 -2
  310. package/src/sagas/__tests__/fetchRuleImplementation.spec.js +3 -3
  311. package/src/sagas/__tests__/fetchRuleImplementations.spec.js +3 -3
  312. package/src/sagas/__tests__/fetchSegmentResults.spec.js +3 -3
  313. package/src/sagas/__tests__/updateRemediation.spec.js +3 -3
  314. package/src/sagas/__tests__/updateRule.spec.js +1 -1
  315. package/src/sagas/__tests__/updateRuleImplementation.spec.js +5 -5
  316. package/src/sagas/createImplementationStructure.js +3 -1
  317. package/src/sagas/createRemediation.js +3 -1
  318. package/src/sagas/deleteImplementation.js +1 -1
  319. package/src/sagas/deleteImplementationStructure.js +1 -1
  320. package/src/sagas/deleteRemediation.js +3 -1
  321. package/src/sagas/deleteRule.js +2 -2
  322. package/src/sagas/deleteRuleResult.js +1 -1
  323. package/src/sagas/fetchConceptRules.js +1 -1
  324. package/src/sagas/fetchExecutionGroup.js +1 -1
  325. package/src/sagas/fetchRemediation.js +1 -1
  326. package/src/sagas/fetchRuleImplementations.js +1 -1
  327. package/src/sagas/fetchSegmentResults.js +1 -1
  328. package/src/sagas/updateRemediation.js +3 -1
  329. package/src/sagas/updateRule.js +1 -1
  330. package/src/sagas/updateRuleImplementation.js +1 -1
  331. package/src/selectors/__tests__/getPreviousRuleImplementationQuery.spec.js +2 -2
  332. package/src/selectors/__tests__/getRuleImplementationColumns.spec.js +1 -1
  333. package/src/selectors/__tests__/getRuleImplementationForm.spec.js +16 -16
  334. package/src/selectors/__tests__/getRuleImplementationSelectedFilterActiveValues.spec.js +2 -2
  335. package/src/selectors/getImplementationStructureLinksColumns.js +0 -1
  336. package/src/selectors/getImplementationsExecution.js +2 -2
  337. package/src/selectors/getLinkedImplementationsToRulesColumns.js +0 -1
  338. package/src/selectors/getPreviousRuleImplementationQuery.js +1 -1
  339. package/src/selectors/getRuleImplementationColumns.js +0 -1
  340. package/src/selectors/getRuleImplementationForm.js +5 -5
  341. package/src/selectors/getRuleImplementationSelectedFilters.js +1 -1
  342. package/src/selectors/ruleColumnsSelector.js +0 -1
  343. package/src/styles/ruleSummary.less +21 -21
  344. package/src/components/RuleRangeNumber.js +0 -46
  345. package/src/components/RuleRangePercentage.js +0 -116
  346. package/src/components/__tests__/RuleRangeNumber.spec.js +0 -20
  347. package/src/components/__tests__/RuleRangePercentage.spec.js +0 -34
  348. package/src/components/__tests__/UploadModal.spec.js +0 -158
  349. package/src/components/__tests__/__snapshots__/RuleRangeNumber.spec.js.snap +0 -50
  350. package/src/components/__tests__/__snapshots__/RuleRangePercentage.spec.js.snap +0 -303
@@ -2,12 +2,12 @@ import {
2
2
  getSystemInRuleDetail,
3
3
  getGroupsInRuleDetail,
4
4
  getStructuresInRuleDetail,
5
- getFieldsInRuleDetail
5
+ getFieldsInRuleDetail,
6
6
  } from "..";
7
7
 
8
8
  const system = [
9
9
  { name: "SYS1", resource_type: "system", resource_id: "SYS1" },
10
- { name: "SYS2", resource_type: "system", resource_id: "SYS2" }
10
+ { name: "SYS2", resource_type: "system", resource_id: "SYS2" },
11
11
  ];
12
12
 
13
13
  const group = [
@@ -15,14 +15,14 @@ const group = [
15
15
  name: "group1",
16
16
  resource_type: "group",
17
17
  resource_id: "group1",
18
- parent_key: "SYS1"
18
+ parent_key: "SYS1",
19
19
  },
20
20
  {
21
21
  name: "group2",
22
22
  resource_type: "group",
23
23
  resource_id: "group2",
24
- parent_key: "SYS2"
25
- }
24
+ parent_key: "SYS2",
25
+ },
26
26
  ];
27
27
 
28
28
  const table = [
@@ -30,14 +30,14 @@ const table = [
30
30
  name: "table1",
31
31
  resource_type: "table",
32
32
  resource_id: "1",
33
- parent_key: "group1"
33
+ parent_key: "group1",
34
34
  },
35
35
  {
36
36
  name: "table2",
37
37
  resource_type: "table",
38
38
  resource_id: "2",
39
- parent_key: "group2"
40
- }
39
+ parent_key: "group2",
40
+ },
41
41
  ];
42
42
 
43
43
  const column = [
@@ -45,14 +45,14 @@ const column = [
45
45
  name: "column1",
46
46
  resource_type: "table",
47
47
  resource_id: "1",
48
- parent_key: "1"
48
+ parent_key: "1",
49
49
  },
50
50
  {
51
51
  name: "column2",
52
52
  resource_type: "column",
53
53
  resource_id: "2",
54
- parent_key: "2"
55
- }
54
+ parent_key: "2",
55
+ },
56
56
  ];
57
57
 
58
58
  const system_values = { system, group, table, column };
@@ -64,7 +64,7 @@ describe("selectors: getRuleImplementationForm", () => {
64
64
  expect(systems.length).toBe(2);
65
65
  expect(systems).toEqual([
66
66
  { text: "SYS1", value: "SYS1" },
67
- { text: "SYS2", value: "SYS2" }
67
+ { text: "SYS2", value: "SYS2" },
68
68
  ]);
69
69
  });
70
70
 
@@ -72,7 +72,7 @@ describe("selectors: getRuleImplementationForm", () => {
72
72
  const groups = getGroupsInRuleDetail({ rule });
73
73
  expect(groups).toEqual({
74
74
  SYS1: [{ text: "group1", value: "group1" }],
75
- SYS2: [{ text: "group2", value: "group2" }]
75
+ SYS2: [{ text: "group2", value: "group2" }],
76
76
  });
77
77
  });
78
78
 
@@ -80,15 +80,15 @@ describe("selectors: getRuleImplementationForm", () => {
80
80
  const tables = getStructuresInRuleDetail({ rule });
81
81
  expect(tables).toEqual({
82
82
  group1: [{ text: "table1", value: "1" }],
83
- group2: [{ text: "table2", value: "2" }]
83
+ group2: [{ text: "table2", value: "2" }],
84
84
  });
85
85
  });
86
86
 
87
87
  it("should return all fields on getFieldsInRuleDetail", () => {
88
88
  const fields = getFieldsInRuleDetail({ rule });
89
89
  expect(fields).toEqual({
90
- "1": [{ text: "column1", value: "1" }],
91
- "2": [{ text: "column2", value: "2" }]
90
+ 1: [{ text: "column1", value: "1" }],
91
+ 2: [{ text: "column2", value: "2" }],
92
92
  });
93
93
  });
94
94
  });
@@ -11,12 +11,12 @@ describe("selectors: getRuleImplementationSelectedFilterActiveValues", () => {
11
11
  const state = {
12
12
  ruleImplementationFilters,
13
13
  ruleImplementationActiveFilters,
14
- ruleImplementationSelectedFilter
14
+ ruleImplementationSelectedFilter,
15
15
  };
16
16
 
17
17
  it("should return the active values of the currently selected ruleImplementation filters", () => {
18
18
  expect(getRuleImplementationSelectedFilterActiveValues(state)).toEqual([
19
- "foo1"
19
+ "foo1",
20
20
  ]);
21
21
  });
22
22
  });
@@ -1,5 +1,4 @@
1
1
  import _ from "lodash/fp";
2
- import React from "react";
3
2
  import PropTypes from "prop-types";
4
3
  import { Icon, Label, List } from "semantic-ui-react";
5
4
  import { createSelector } from "reselect";
@@ -1,11 +1,11 @@
1
1
  import _ from "lodash/fp";
2
2
  import { createSelector } from "reselect";
3
3
 
4
- const getStateImplementationsExecution = state =>
4
+ const getStateImplementationsExecution = (state) =>
5
5
  state.implementationsExecution;
6
6
 
7
7
  export const getImplementationsExecution = createSelector(
8
8
  getStateImplementationsExecution,
9
- stateImplementationsExecution =>
9
+ (stateImplementationsExecution) =>
10
10
  _.defaultTo(true)(stateImplementationsExecution)
11
11
  );
@@ -1,5 +1,4 @@
1
1
  import _ from "lodash/fp";
2
- import React from "react";
3
2
  import { createSelector } from "reselect";
4
3
  import { FormattedMessage } from "react-intl";
5
4
  import DateTime from "@truedat/core/components/DateTime";
@@ -1,3 +1,3 @@
1
1
  export const getPreviousRuleImplementationQuery = ({
2
- previousRuleImplementationQuery: q = {}
2
+ previousRuleImplementationQuery: q = {},
3
3
  }) => q;
@@ -1,5 +1,4 @@
1
1
  import _ from "lodash/fp";
2
- import React from "react";
3
2
  import { createSelector } from "reselect";
4
3
  import { FormattedMessage } from "react-intl";
5
4
  import DateTime from "@truedat/core/components/DateTime";
@@ -3,18 +3,18 @@ import { createSelector } from "reselect";
3
3
 
4
4
  import { getRule } from "./getRule";
5
5
 
6
- export const getSystemInRuleDetail = createSelector([getRule], rule =>
6
+ export const getSystemInRuleDetail = createSelector([getRule], (rule) =>
7
7
  _.flow(
8
8
  _.propOr({}, "system_values"),
9
9
  _.propOr([], "system"),
10
10
  _.map(({ resource_id, name }) => ({
11
11
  value: resource_id,
12
- text: name
12
+ text: name,
13
13
  }))
14
14
  )(rule)
15
15
  );
16
16
 
17
- export const getGroupsInRuleDetail = createSelector([getRule], rule =>
17
+ export const getGroupsInRuleDetail = createSelector([getRule], (rule) =>
18
18
  _.flow(
19
19
  _.propOr({}, "system_values"),
20
20
  _.propOr([], "group"),
@@ -25,7 +25,7 @@ export const getGroupsInRuleDetail = createSelector([getRule], rule =>
25
25
  )(rule)
26
26
  );
27
27
 
28
- export const getStructuresInRuleDetail = createSelector([getRule], rule =>
28
+ export const getStructuresInRuleDetail = createSelector([getRule], (rule) =>
29
29
  _.flow(
30
30
  _.propOr({}, "system_values"),
31
31
  _.propOr([], "table"),
@@ -36,7 +36,7 @@ export const getStructuresInRuleDetail = createSelector([getRule], rule =>
36
36
  )(rule)
37
37
  );
38
38
 
39
- export const getFieldsInRuleDetail = createSelector([getRule], rule =>
39
+ export const getFieldsInRuleDetail = createSelector([getRule], (rule) =>
40
40
  _.flow(
41
41
  _.propOr({}, "system_values"),
42
42
  _.propOr([], "column"),
@@ -3,6 +3,6 @@ import { createSelector } from "reselect";
3
3
 
4
4
  export const getRuleImplementationSelectedFilters = createSelector(
5
5
  [_.prop("ruleImplementationActiveFilters")],
6
- ruleImplementationActiveFilters =>
6
+ (ruleImplementationActiveFilters) =>
7
7
  _.without(["executable"])(_.keys(ruleImplementationActiveFilters))
8
8
  );
@@ -1,5 +1,4 @@
1
1
  import _ from "lodash/fp";
2
- import React from "react";
3
2
  import { Label } from "semantic-ui-react";
4
3
  import { FormattedMessage } from "react-intl";
5
4
  import { createSelector } from "reselect";
@@ -40,27 +40,27 @@
40
40
  }
41
41
  }
42
42
 
43
- .rule-summary {
44
- @import "~semantic-ui-less/definitions/globals/site";
45
- .over-goal-color {
46
- background-color: @overGoalRuleColor;
47
- }
48
- .under-goal-color {
49
- background-color: @underGoalRuleColor;
50
- }
51
- .under-minimum-color {
52
- background-color: @underMinimumRuleColor;
53
- }
54
- .not-executed-color {
55
- background-color: @notExecutedRuleColor;
56
- }
57
- .failed-color {
58
- background-color: @failedRuleColor;
59
- }
60
- .empty-dataset-color {
61
- background-color: @emptyDataColor;
62
- }
63
- }
43
+ // .rule-summary {
44
+ // @import "~semantic-ui-less/definitions/globals/site";
45
+ // .over-goal-color {
46
+ // background-color: @overGoalRuleColor;
47
+ // }
48
+ // .under-goal-color {
49
+ // background-color: @underGoalRuleColor;
50
+ // }
51
+ // .under-minimum-color {
52
+ // background-color: @underMinimumRuleColor;
53
+ // }
54
+ // .not-executed-color {
55
+ // background-color: @notExecutedRuleColor;
56
+ // }
57
+ // .failed-color {
58
+ // background-color: @failedRuleColor;
59
+ // }
60
+ // .empty-dataset-color {
61
+ // background-color: @emptyDataColor;
62
+ // }
63
+ // }
64
64
 
65
65
  .pointer {
66
66
  span {
@@ -1,46 +0,0 @@
1
- import React from "react";
2
- import PropTypes from "prop-types";
3
- import { List, Icon } from "semantic-ui-react";
4
- import { connect } from "react-redux";
5
- import { FormattedMessage } from "react-intl";
6
- import "rc-slider/assets/index.css";
7
-
8
- export const RuleRangeNumber = ({ goal, minimum }) => (
9
- <List.Item>
10
- <List.Header>
11
- <FormattedMessage id="quality.range" /> (
12
- <FormattedMessage id="quality.range.errors_number" />)
13
- </List.Header>
14
- <List.Description>
15
- <List>
16
- <List.Item>
17
- <Icon name="circle" color="yellow" />
18
- <List.Content>
19
- <List.Description>
20
- <FormattedMessage id={`quality.threshold`} />
21
- {`: ${minimum}`}
22
- </List.Description>
23
- </List.Content>
24
- </List.Item>
25
- <List.Item>
26
- <Icon name="circle" color="green" />
27
- <List.Content>
28
- <List.Description>
29
- <FormattedMessage id={`quality.goal`} />
30
- {`: ${goal}`}
31
- </List.Description>
32
- </List.Content>
33
- </List.Item>
34
- </List>
35
- </List.Description>
36
- </List.Item>
37
- );
38
-
39
- RuleRangeNumber.propTypes = {
40
- goal: PropTypes.number,
41
- minimum: PropTypes.number,
42
- };
43
-
44
- const mapStateToProps = ({ rule }) => rule;
45
-
46
- export default connect(mapStateToProps)(RuleRangeNumber);
@@ -1,116 +0,0 @@
1
- import _ from "lodash/fp";
2
- import React from "react";
3
- import PropTypes from "prop-types";
4
- import { FormattedMessage, useIntl } from "react-intl";
5
- import { connect } from "react-redux";
6
- import { Range } from "rc-slider";
7
- import { List, Icon } from "semantic-ui-react";
8
- import "rc-slider/assets/index.css";
9
-
10
- const RED = "#d95c5c";
11
- const YELLOW = "#feca03";
12
- const GREEN = "#78be20";
13
-
14
- const TRACK_STYLE = [
15
- { backgroundColor: RED },
16
- { backgroundColor: YELLOW },
17
- { backgroundColor: GREEN },
18
- ];
19
- const HANDLE_STYLE = [
20
- { borderColor: RED, backgroundColor: RED, cursor: "default" },
21
- { borderColor: YELLOW, backgroundColor: YELLOW, cursor: "default" },
22
- { borderColor: GREEN, backgroundColor: GREEN, cursor: "default" },
23
- { borderColor: GREEN, backgroundColor: GREEN, cursor: "default" },
24
- ];
25
- const DEVIATION_TRACK_STYLE = _.reverse(TRACK_STYLE);
26
- const DEVIATION_HANDLE_STYLE = _.reverse(HANDLE_STYLE);
27
-
28
- export const RuleRangePercentage = ({ goal, minimum, result_type }) => {
29
- const { formatMessage } = useIntl();
30
-
31
- const trackStyle =
32
- result_type === "deviation" ? DEVIATION_TRACK_STYLE : TRACK_STYLE;
33
-
34
- const handleStyle =
35
- result_type === "deviation" ? DEVIATION_HANDLE_STYLE : HANDLE_STYLE;
36
-
37
- const defaultValue =
38
- result_type === "deviation"
39
- ? [0, goal, minimum, 100]
40
- : [0, minimum, goal, 100];
41
-
42
- const marks = {
43
- [minimum]: `${formatMessage({ id: "quality.threshold" })}`,
44
- [goal]: {
45
- label:
46
- minimum != goal
47
- ? `${formatMessage({ id: "quality.goal" })}`
48
- : `${formatMessage({ id: "quality.threshold" })} - ${formatMessage({
49
- id: "quality.goal",
50
- })}`,
51
- style: { paddingTop: Math.abs(goal - minimum) < 10 ? "15px" : "0px" },
52
- },
53
- 0: {
54
- label: "0%",
55
- style: { bottom: minimum < 10 ? "22px" : "" },
56
- },
57
- 100: {
58
- label: "100%",
59
- style: { bottom: goal > 90 ? "22px" : "" },
60
- },
61
- };
62
-
63
- return (
64
- <List.Item>
65
- <List.Header>
66
- <FormattedMessage id="quality.range" /> (
67
- <FormattedMessage id={`quality.range.${result_type}`} />)
68
- </List.Header>
69
- <List.Description>
70
- <Range
71
- defaultValue={defaultValue}
72
- disabled
73
- handleStyle={handleStyle}
74
- marks={marks}
75
- railStyle={{ boxShadow: "0px 1px 3px lightgrey" }}
76
- style={{
77
- maxWidth: "600px",
78
- margin: "25px",
79
- backgroundColor: "white",
80
- }}
81
- trackStyle={trackStyle}
82
- />
83
- <List>
84
- <List.Item>
85
- <Icon name="circle" color="yellow" />
86
- <List.Content>
87
- <List.Description>
88
- <FormattedMessage id="quality.threshold" />
89
- {`: ${minimum} %`}
90
- </List.Description>
91
- </List.Content>
92
- </List.Item>
93
- <List.Item>
94
- <Icon name="circle" color="green" />
95
- <List.Content>
96
- <List.Description>
97
- <FormattedMessage id="quality.goal" />
98
- {`: ${goal} %`}
99
- </List.Description>
100
- </List.Content>
101
- </List.Item>
102
- </List>
103
- </List.Description>
104
- </List.Item>
105
- );
106
- };
107
-
108
- RuleRangePercentage.propTypes = {
109
- goal: PropTypes.number,
110
- minimum: PropTypes.number,
111
- result_type: PropTypes.string,
112
- };
113
-
114
- const mapStateToProps = ({ rule }) => rule;
115
-
116
- export default connect(mapStateToProps)(RuleRangePercentage);
@@ -1,20 +0,0 @@
1
- import React from "react";
2
- import { shallow } from "enzyme";
3
- import { intl } from "@truedat/test/intl-stub";
4
- import { RuleRangeNumber } from "../RuleRangeNumber";
5
-
6
- // workaround for enzyme issue with React.useContext
7
- // see https://github.com/airbnb/enzyme/issues/2176#issuecomment-532361526
8
- jest.spyOn(React, "useContext").mockImplementation(() => intl);
9
-
10
- describe("<RuleRangeNumber />", () => {
11
- it("matches the latest snapshot", () => {
12
- const props = {
13
- goal: 10,
14
- minimum: 1,
15
- result_type: "errors_number",
16
- };
17
- const wrapper = shallow(<RuleRangeNumber {...props} />);
18
- expect(wrapper).toMatchSnapshot();
19
- });
20
- });
@@ -1,34 +0,0 @@
1
- import React from "react";
2
- import { shallow } from "enzyme";
3
- import { intl } from "@truedat/test/intl-stub";
4
- import { RuleRangePercentage } from "../RuleRangePercentage";
5
-
6
- // workaround for enzyme issue with React.useContext
7
- // see https://github.com/airbnb/enzyme/issues/2176#issuecomment-532361526
8
- jest.spyOn(React, "useContext").mockImplementation(() => intl);
9
-
10
- describe("<RuleRangePercentage />", () => {
11
- const props = {
12
- result_type: "percentage",
13
- minimum: 80,
14
- goal: 90,
15
- };
16
-
17
- it("matches the latest snapshot", () => {
18
- const wrapper = shallow(<RuleRangePercentage {...props} />);
19
- expect(wrapper).toMatchSnapshot();
20
- });
21
- });
22
-
23
- describe("<RuleRangePercentage />", () => {
24
- const props = {
25
- result_type: "deviation",
26
- minimum: 90,
27
- goal: 80,
28
- };
29
-
30
- it("matches the latest snapshot", () => {
31
- const wrapper = shallow(<RuleRangePercentage {...props} />);
32
- expect(wrapper).toMatchSnapshot();
33
- });
34
- });
@@ -1,158 +0,0 @@
1
- import React from "react";
2
- import { Dropdown } from "semantic-ui-react";
3
- import { render } from "@truedat/test/render";
4
- import { waitFor, fireEvent } from "@testing-library/react";
5
- import userEvent from "@testing-library/user-event";
6
- import { UploadModal } from "@truedat/core/components";
7
-
8
- describe("<ImplementationsUploadButton />", () => {
9
- const trigger = <Dropdown.Item icon="upload" text="Trigger element" />;
10
- const onClickExtraAction = jest.fn();
11
- const onClickYesAction = jest.fn();
12
-
13
- // See https://react-dropzone.js.org/ "Testing" section
14
- const mockData = (files) => {
15
- return {
16
- dataTransfer: {
17
- files,
18
- items: files.map((file) => ({
19
- kind: "file",
20
- type: file.type,
21
- getAsFile: () => file,
22
- })),
23
- types: ["Files"],
24
- },
25
- };
26
- };
27
-
28
- const extraAction = {
29
- key: "yesWithAutoPublish",
30
- primary: true,
31
- content: "Extra action button",
32
- onClick: onClickExtraAction,
33
- };
34
-
35
- it("shows the modal", async () => {
36
- const { getByRole, getByText } = render(
37
- <UploadModal
38
- {...{
39
- trigger,
40
- extraAction,
41
- header: "header",
42
- content: "content",
43
- param: "implementations",
44
- handleSubmit: onClickYesAction,
45
- }}
46
- />
47
- );
48
-
49
- await waitFor(() => {
50
- userEvent.click(getByRole("option", { name: "Trigger element" }));
51
- });
52
-
53
- const yesActionButton = getByRole("button", { name: "Upload and update" });
54
- expect(yesActionButton).toBeDisabled();
55
-
56
- const extraActionButton = getByRole("button", {
57
- name: "Extra action button",
58
- });
59
- expect(extraActionButton).toBeDisabled();
60
-
61
- expect(getByText("Trigger element")).toBeInTheDocument();
62
- expect(
63
- getByText("Drag an drop file or click to select file")
64
- ).toBeInTheDocument();
65
- });
66
-
67
- it("clicks yes action button", async () => {
68
- const { getByRole, getByText, queryByRole } = render(
69
- <UploadModal
70
- {...{
71
- trigger,
72
- header: "header",
73
- content: "content",
74
- param: "implementations",
75
- handleSubmit: onClickYesAction,
76
- }}
77
- />
78
- );
79
-
80
- await waitFor(() => {
81
- userEvent.click(getByRole("option", { name: "Trigger element" }));
82
- });
83
-
84
- const yesActionButton = getByRole("button", { name: "Upload and update" });
85
- expect(yesActionButton).toBeDisabled();
86
-
87
- const extraActionButton = queryByRole("button", {
88
- name: "Extra action button",
89
- });
90
- expect(extraActionButton).not.toBeInTheDocument();
91
-
92
- const fakeFile = new File(["implementations"], "implementations.csv", {
93
- type: "text/csv",
94
- });
95
-
96
- const dropZone = getByText("Drag an drop file or click to select file");
97
- const data = mockData([fakeFile]);
98
-
99
- await waitFor(() => {
100
- fireEvent.drop(dropZone, data);
101
- });
102
-
103
- expect(yesActionButton).toBeEnabled();
104
-
105
- await waitFor(() => {
106
- userEvent.click(yesActionButton);
107
- });
108
-
109
- expect(onClickYesAction).toHaveBeenCalled();
110
- });
111
-
112
- it("clicks extra action button", async () => {
113
- const { getByRole, getByText } = render(
114
- <UploadModal
115
- {...{
116
- trigger,
117
- extraAction,
118
- header: "header",
119
- content: "content",
120
- param: "implementations",
121
- handleSubmit: onClickYesAction,
122
- }}
123
- />
124
- );
125
-
126
- await waitFor(() => {
127
- userEvent.click(getByRole("option", { name: "Trigger element" }));
128
- });
129
-
130
- const yesActionButton = getByRole("button", { name: "Upload and update" });
131
- expect(yesActionButton).toBeDisabled();
132
-
133
- const extraActionButton = getByRole("button", {
134
- name: "Extra action button",
135
- });
136
- expect(extraActionButton).toBeDisabled();
137
-
138
- const fakeFile = new File(["implementations"], "implementations.csv", {
139
- type: "text/csv",
140
- });
141
-
142
- const dropZone = getByText("Drag an drop file or click to select file");
143
- const data = mockData([fakeFile]);
144
-
145
- await waitFor(() => {
146
- fireEvent.drop(dropZone, data);
147
- });
148
-
149
- expect(yesActionButton).toBeEnabled();
150
- expect(extraActionButton).toBeEnabled();
151
-
152
- await waitFor(() => {
153
- userEvent.click(extraActionButton);
154
- });
155
-
156
- expect(onClickExtraAction).toHaveBeenCalled();
157
- });
158
- });