@truedat/dq 7.5.7 → 7.5.10

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 +1 -2
  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 +2 -3
  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 +24 -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
@@ -1,10 +1,9 @@
1
- import React from "react";
2
- import { useParams } from "react-router-dom";
3
- import { shallow } from "enzyme";
1
+ import { useParams } from "react-router";
2
+ import { render, waitForLoad } from "@truedat/test/render";
4
3
  import { RuleCrumbs } from "../RuleCrumbs";
5
4
 
6
- jest.mock("react-router-dom", () => ({
7
- ...jest.requireActual("react-router-dom"),
5
+ jest.mock("react-router", () => ({
6
+ ...jest.requireActual("react-router"),
8
7
  useParams: jest.fn(),
9
8
  }));
10
9
 
@@ -13,18 +12,19 @@ afterEach(() => {
13
12
  });
14
13
 
15
14
  describe("<RuleCrumbs />", () => {
16
- it("matches the latest snapshot", () => {
15
+ it("matches the latest snapshot", async () => {
17
16
  const props = {
18
17
  rule: { id: 1, name: "foo" },
19
18
  ruleImplementation: { id: 2, implementation_key: "ri" },
20
19
  };
21
20
  useParams.mockImplementation(() => ({}));
22
21
 
23
- const wrapper = shallow(<RuleCrumbs {...props} />);
24
- expect(wrapper).toMatchSnapshot();
22
+ const rendered = render(<RuleCrumbs {...props} />);
23
+ await waitForLoad(rendered);
24
+ expect(rendered.container).toMatchSnapshot();
25
25
  });
26
26
 
27
- it("matches a snapshot with resultId", () => {
27
+ it("matches a snapshot with resultId", async () => {
28
28
  const props = {
29
29
  rule: { id: 1, name: "foo" },
30
30
  ruleImplementation: {
@@ -48,7 +48,8 @@ describe("<RuleCrumbs />", () => {
48
48
  rule_result_id: 1000,
49
49
  }));
50
50
 
51
- const wrapper = shallow(<RuleCrumbs {...props} />);
52
- expect(wrapper).toMatchSnapshot();
51
+ const rendered = render(<RuleCrumbs {...props} />);
52
+ await waitForLoad(rendered);
53
+ expect(rendered.container).toMatchSnapshot();
53
54
  });
54
55
  });
@@ -1,4 +1,3 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleEventDecorator } from "../RuleEventDecorator";
4
3
 
@@ -1,4 +1,3 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleEventRow } from "../RuleEventRow";
4
3
 
@@ -1,4 +1,3 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleEvents } from "../RuleEvents";
4
3
  import { getParsedEvents } from "../../selectors/getParsedEvents";
@@ -1,10 +1,7 @@
1
- import React from "react";
2
- import { waitFor } from "@testing-library/react";
3
- import { render } from "@truedat/test/render";
4
1
  import userEvent from "@testing-library/user-event";
2
+ import { render, waitForLoad } from "@truedat/test/render";
5
3
  import { domainsMock, multipleTemplatesMock } from "@truedat/test/mocks";
6
4
  import RuleForm from "../RuleForm";
7
- import en from "../../messages/en";
8
5
  import { globalState } from "./__fixtures__/RuleForm";
9
6
 
10
7
  const data = {
@@ -63,30 +60,6 @@ const rule = {
63
60
  current_business_concept_version: { name: "My Concept" },
64
61
  };
65
62
 
66
- const messages = {
67
- en: {
68
- ...en,
69
- "concepts.status.undefined": "undefined",
70
- "search.save_filters": "save filters",
71
- "search.clear_filters": "clear filters",
72
- "search.applied_filters": "apply filters",
73
- "search.placeholder": "Search concepts...",
74
- "actions.save": "Save",
75
- "actions.cancel": "Cancel",
76
- "actions.delete": "Delete",
77
- "template.selector.placeholder": "Select a template...",
78
- "domain.selector.placeholder": "Select a domain...",
79
- "domain.selector.label": "Domain",
80
- loading: "loading...",
81
- "concepts.props.status": "Status",
82
- "concepts.props.domain": "Domain",
83
- "concepts.props.name": "Term",
84
- "template.form.validation.empty_required": "Empty required field",
85
- "template.selector.label": "Template",
86
- "concepts.search.results.empty": "No concepts found",
87
- },
88
- };
89
-
90
63
  const state = {
91
64
  domains: [{ id: 1, name: "domain1" }],
92
65
  };
@@ -94,56 +67,44 @@ const state = {
94
67
  const renderOpts = {
95
68
  mocks: [
96
69
  domainsMock({ action: "manageQualityRule" }),
70
+ multipleTemplatesMock({ scope: "dq", domainIds: null }),
97
71
  multipleTemplatesMock({ scope: "dq", domainIds: [1] }),
72
+ multipleTemplatesMock({ scope: "dq", domainIds: [2] }),
98
73
  ],
99
74
  state,
100
- messages,
101
- fallback: "lazy",
102
75
  };
103
76
 
104
77
  describe("<RuleForm />", () => {
105
78
  it("matches the latest snapshot", async () => {
106
79
  const props = { onSubmit: jest.fn() };
107
- const { container, findByText, queryByText } = render(
108
- <RuleForm {...props} />,
109
- renderOpts
110
- );
111
- await waitFor(() => expect(queryByText(/lazy/i)).not.toBeInTheDocument());
112
- await findByText(/draft/i);
113
- expect(container).toMatchSnapshot();
80
+ const rendered = render(<RuleForm {...props} />, renderOpts);
81
+ await waitForLoad(rendered);
82
+ await rendered.findByText(/draft/i);
83
+ expect(rendered.container).toMatchSnapshot();
114
84
  });
115
85
 
116
86
  it("matches the latest snapshot (edit mode)", async () => {
117
87
  const props = { onSubmit: jest.fn(), editMode: true };
118
- const { container, queryByText } = render(<RuleForm {...props} />, {
88
+ const rendered = render(<RuleForm {...props} />, {
119
89
  ...renderOpts,
120
90
  state: { ...state, rule },
121
91
  });
122
- await waitFor(() => expect(queryByText(/lazy/i)).not.toBeInTheDocument());
123
- await waitFor(() =>
124
- expect(queryByText(/loading/i)).not.toBeInTheDocument()
125
- );
126
- await waitFor(() => {
127
- expect(container.querySelector(".loading")).toBeNull();
128
- });
129
-
130
- expect(container).toMatchSnapshot();
92
+ await waitForLoad(rendered);
93
+ expect(rendered.container).toMatchSnapshot();
131
94
  });
132
95
 
133
96
  it("enables save button after name and domain are specified", async () => {
134
97
  const props = { onSubmit: jest.fn() };
135
- const { getByRole, findByText } = render(
136
- <RuleForm {...props} />,
137
- renderOpts
98
+ const rendered = render(<RuleForm {...props} />, renderOpts);
99
+ await waitForLoad(rendered);
100
+ expect(rendered.getByRole("button", { name: /save/i })).toBeDisabled();
101
+ const user = userEvent.setup({ delay: null });
102
+ await user.click(await rendered.findByText(/bardomain/i));
103
+ await user.type(
104
+ rendered.getByRole("textbox", { name: /rule.props.name.placeholder/i }),
105
+ "rule1"
138
106
  );
139
- await waitFor(() =>
140
- expect(getByRole("button", { name: /save/i })).toBeDisabled()
141
- );
142
- userEvent.click(await findByText("barDomain"));
143
- userEvent.type(getByRole("textbox", { name: /rule name/i }), "rule1");
144
- await waitFor(() => {
145
- expect(getByRole("button", { name: /save/i })).not.toBeDisabled();
146
- });
107
+ expect(rendered.getByRole("button", { name: /save/i })).not.toBeDisabled();
147
108
  });
148
109
 
149
110
  it("submit rule data", async () => {
@@ -155,25 +116,21 @@ describe("<RuleForm />", () => {
155
116
  multipleTemplatesMock({ scope: "dq", domainIds: [1] }),
156
117
  ],
157
118
  state: globalState,
158
- fallback: "lazy",
159
119
  };
160
120
 
161
- const { getByRole, findByText } = render(
162
- <RuleForm onSubmit={onSubmit} />,
163
- renderOpts
164
- );
165
- await waitFor(() =>
166
- expect(getByRole("button", { name: /save/i })).toBeDisabled()
167
- );
168
- userEvent.click(await findByText("barDomain"));
169
- const ruleNameTextbox = getByRole("textbox", { name: /rule name/i });
170
- userEvent.paste(ruleNameTextbox, "rule1");
171
- expect(ruleNameTextbox).toHaveValue("rule1");
172
- await waitFor(() => {
173
- expect(getByRole("button", { name: /save/i })).not.toBeDisabled();
121
+ const rendered = render(<RuleForm onSubmit={onSubmit} />, renderOpts);
122
+ await waitForLoad(rendered);
123
+ expect(rendered.getByRole("button", { name: /save/i })).toBeDisabled();
124
+ const user = userEvent.setup({ delay: null });
125
+ await user.click(await rendered.findByText(/bardomain/i));
126
+ const ruleNameTextbox = rendered.getByRole("textbox", {
127
+ name: /rule.props.name.placeholder/i,
174
128
  });
129
+ await user.type(ruleNameTextbox, "rule1");
130
+ expect(ruleNameTextbox).toHaveValue("rule1");
131
+ expect(rendered.getByRole("button", { name: /save/i })).not.toBeDisabled();
175
132
 
176
- userEvent.click(await getByRole("button", { name: /save/i }));
133
+ await user.click(rendered.getByRole("button", { name: /save/i }));
177
134
 
178
135
  expect(onSubmit).toHaveBeenCalledWith({
179
136
  ids: {},
@@ -1,12 +1,6 @@
1
- import React from "react";
2
- import { shallow } from "enzyme";
3
- import { intl } from "@truedat/test/intl-stub";
1
+ import { render, waitForLoad } from "@truedat/test/render";
4
2
  import { RuleFormImplementations } from "../RuleFormImplementations";
5
3
 
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
4
  describe("<RuleFormImplementations />", () => {
11
5
  const rule = { id: 1, name: "rule name" };
12
6
  const updateDeletionQuery = jest.fn();
@@ -16,20 +10,25 @@ describe("<RuleFormImplementations />", () => {
16
10
  deletedRender: false,
17
11
  };
18
12
 
19
- it("matches the latest snapshot", () => {
20
- const wrapper = shallow(<RuleFormImplementations {...props} />);
21
- expect(wrapper).toMatchSnapshot();
13
+ it("matches the latest snapshot", async () => {
14
+ const rendered = render(<RuleFormImplementations {...props} />);
15
+ await waitForLoad(rendered);
16
+ expect(rendered.container).toMatchSnapshot();
22
17
  });
23
18
 
24
- it("renders null when rule is empty", () => {
25
- const wrapper = shallow(
19
+ it("renders null when rule is empty", async () => {
20
+ const rendered = render(
26
21
  <RuleFormImplementations {...{ ...props, rule: {} }} />
27
22
  );
28
- expect(wrapper.type()).toEqual(null);
23
+ await waitForLoad(rendered);
24
+ expect(rendered.container.firstChild).toBeNull();
29
25
  });
30
26
 
31
- it("renders RuleFormImplementations when rule is not empty", () => {
32
- const wrapper = shallow(<RuleFormImplementations {...props} />);
33
- expect(wrapper.find("Connect(RuleImplementationsTable)").length).toBe(1);
27
+ it("renders RuleFormImplementations when rule is not empty", async () => {
28
+ const rendered = render(<RuleFormImplementations {...props} />);
29
+ await waitForLoad(rendered);
30
+ expect(
31
+ rendered.container.querySelector(".implementation-actions")
32
+ ).toBeInTheDocument();
34
33
  });
35
34
  });
@@ -1,5 +1,4 @@
1
- import React from "react";
2
- import { render } from "@truedat/test/render";
1
+ import { render, waitForLoad } from "@truedat/test/render";
3
2
  import RuleImplementation from "../RuleImplementation";
4
3
 
5
4
  const state = {
@@ -37,38 +36,32 @@ const stateNoExecutePermission = {
37
36
  },
38
37
  };
39
38
 
40
- const renderOptsNoExecutePermission = {
41
- state: stateNoExecutePermission,
42
- };
43
-
44
- const renderOptsExecutePermission = {
45
- state: stateExecutePermission,
46
- };
47
-
48
39
  describe("<RuleImplementation />", () => {
49
- it("matches the latest snapshot", () => {
50
- const { container } = render(
51
- <RuleImplementation />,
52
- renderOptsExecutePermission
53
- );
54
- expect(container).toMatchSnapshot();
40
+ it("matches the latest snapshot", async () => {
41
+ const rendered = render(<RuleImplementation />, {
42
+ state: stateExecutePermission,
43
+ });
44
+ await waitForLoad(rendered);
45
+ expect(rendered.container).toMatchSnapshot();
55
46
  });
56
47
 
57
- it("presence of execute permissions enables the execute button", () => {
58
- const { queryByText } = render(
59
- <RuleImplementation />,
60
- renderOptsExecutePermission
61
- );
62
- const button = queryByText(/execute/i);
63
- expect(button).toBeInTheDocument();
48
+ it("presence of execute permissions enables the execute button", async () => {
49
+ const rendered = render(<RuleImplementation />, {
50
+ state: stateExecutePermission,
51
+ });
52
+ await waitForLoad(rendered);
53
+ expect(
54
+ rendered.getByText(/implementations.actions.do_execution/i)
55
+ ).toBeInTheDocument();
64
56
  });
65
57
 
66
- it("lack of execute permissions disables the execute button", () => {
67
- const { queryByText } = render(
68
- <RuleImplementation />,
69
- renderOptsNoExecutePermission
70
- );
71
- const button = queryByText(/execute/i);
72
- expect(button).not.toBeInTheDocument();
58
+ it("lack of execute permissions disables the execute button", async () => {
59
+ const rendered = render(<RuleImplementation />, {
60
+ state: stateNoExecutePermission,
61
+ });
62
+ await waitForLoad(rendered);
63
+ expect(
64
+ rendered.queryByText(/implementations.actions.do_execution/i)
65
+ ).not.toBeInTheDocument();
73
66
  });
74
67
  });
@@ -1,4 +1,3 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleImplementationEvents } from "../RuleImplementationEvents";
4
3
 
@@ -1,31 +1,30 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleImplementationHistory } from "../RuleImplementationHistory";
4
3
 
5
4
  describe("<RuleImplementationHistory", () => {
6
- const implementation_id = 23;
5
+ const implementation_id = "23";
7
6
  const props = {
8
7
  implementation: {
9
8
  id: implementation_id,
10
9
  versions: [
11
10
  {
12
- id: 34,
11
+ id: "34",
13
12
  implementation_key: "some implementation key 34",
14
- version: 3,
13
+ version: "3",
15
14
  status: "draft",
16
15
  updated_at: "2022-02-10T15:22:07Z",
17
16
  },
18
17
  {
19
18
  id: implementation_id,
20
19
  implementation_key: "some implementation key " + implementation_id,
21
- version: 2,
20
+ version: "2",
22
21
  status: "published",
23
22
  updated_at: "2022-02-10T15:22:07Z",
24
23
  },
25
24
  {
26
- id: 22,
25
+ id: "22",
27
26
  implementation_key: "some implementation key 22",
28
- version: 1,
27
+ version: "1",
29
28
  status: "versioned",
30
29
  updated_at: "2022-02-10T15:22:07Z",
31
30
  },
@@ -33,22 +32,8 @@ describe("<RuleImplementationHistory", () => {
33
32
  },
34
33
  };
35
34
 
36
- const renderOpts = {
37
- messages: {
38
- en: {
39
- "ruleImplementations.props.implementation_key": "key",
40
- "ruleImplementations.props.status": "status",
41
- "ruleImplementations.props.version": "version",
42
- "ruleImplementations.props.last_change_at": "change",
43
- },
44
- },
45
- };
46
-
47
35
  it("matches the latest snapshot", () => {
48
- const { container } = render(
49
- <RuleImplementationHistory {...props} />,
50
- renderOpts
51
- );
36
+ const { container } = render(<RuleImplementationHistory {...props} />);
52
37
  expect(container).toMatchSnapshot();
53
38
  });
54
39
  });
@@ -1,10 +1,9 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleImplementationLoader } from "../RuleImplementationLoader";
4
3
 
5
4
  const implementation_id = 234;
6
- jest.mock("react-router-dom", () => ({
7
- ...jest.requireActual("react-router-dom"),
5
+ jest.mock("react-router", () => ({
6
+ ...jest.requireActual("react-router"),
8
7
  useParams: () => ({ implementation_id: implementation_id }),
9
8
  }));
10
9
 
@@ -1,93 +1,67 @@
1
- import React from "react";
2
- import { shallowWithIntl } from "@truedat/test/intl-stub";
1
+ import { render, waitForLoad } from "@truedat/test/render";
3
2
  import { RuleImplementationProperties } from "../RuleImplementationProperties";
4
3
 
5
4
  describe("<RuleImplementationProperties />", () => {
6
- it("matches the latest snapshot", () => {
7
- const props = {
8
- rule: {
9
- business_concept_id: "2D2B3",
10
- description: "desc1",
11
- rule_type: { name: "type1" },
12
- },
13
- ruleImplementation: {
14
- id: 10,
15
- executable: true,
16
- name: "NameRule2",
17
- type: "integer_values_range",
18
- status: "published",
19
- system_params: {
20
- table: { name: "aaaxxx" },
21
- column: {
22
- id: 2876,
23
- name: "% Abandono de Clientes ac. año / Cartera Clientes",
24
- path: [
25
- "CRM",
26
- "Objetos Públicos",
27
- "Informes",
28
- "Validación",
29
- "ACGC - 01.00 Análisis General Compañía",
30
- ],
31
- },
5
+ const props = {
6
+ rule: {
7
+ business_concept_id: "2D2B3",
8
+ description: "desc1",
9
+ rule_type: { name: "type1" },
10
+ },
11
+ ruleImplementation: {
12
+ id: 10,
13
+ executable: true,
14
+ name: "NameRule2",
15
+ type: "integer_values_range",
16
+ status: "published",
17
+ system_params: {
18
+ table: { name: "aaaxxx" },
19
+ column: {
20
+ id: 2876,
21
+ name: "% Abandono de Clientes ac. año / Cartera Clientes",
22
+ path: [
23
+ "CRM",
24
+ "Objetos Públicos",
25
+ "Informes",
26
+ "Validación",
27
+ "ACGC - 01.00 Análisis General Compañía",
28
+ ],
32
29
  },
33
- goal: 10,
34
- minimum: 1,
35
- result_type: "percentage",
36
30
  },
37
- ruleImplementationResults: [
38
- { date: "2019-08-12T02:00:00Z", result: 34 },
39
- { date: "2019-08-12T01:00:00Z", result: 33 },
40
- ],
41
- };
42
- const wrapper = shallowWithIntl(
43
- <RuleImplementationProperties {...props} />
44
- );
45
- expect(wrapper).toMatchSnapshot();
31
+ goal: 10,
32
+ minimum: 1,
33
+ result_type: "percentage",
34
+ },
35
+ ruleImplementationResults: [
36
+ { date: "2019-08-12T02:00:00Z", result: 34 },
37
+ { date: "2019-08-12T01:00:00Z", result: 33 },
38
+ ],
39
+ };
40
+
41
+ it("matches the latest snapshot", async () => {
42
+ const rendered = render(<RuleImplementationProperties {...props} />);
43
+ await waitForLoad(rendered);
44
+ expect(rendered.container).toMatchSnapshot();
46
45
  });
47
46
 
48
- it("renders label for executable field", () => {
49
- const props = {
50
- rule: {
51
- business_concept_id: "2D2B3",
52
- description: "desc1",
53
- rule_type: { name: "type1" },
54
- },
55
- ruleImplementation: {
56
- id: 10,
57
- executable: true,
58
- name: "NameRule2",
59
- type: "integer_values_range",
60
- status: "published",
61
- system_params: {
62
- table: { name: "aaaxxx" },
63
- column: {
64
- id: 2876,
65
- name: "% Abandono de Clientes ac. año / Cartera Clientes",
66
- path: [
67
- "CRM",
68
- "Objetos Públicos",
69
- "Informes",
70
- "Validación",
71
- "ACGC - 01.00 Análisis General Compañía",
72
- ],
73
- },
74
- },
75
- goal: 10,
76
- minimum: 1,
77
- result_type: "percentage",
78
- },
79
- ruleImplementationResults: [
80
- { date: "2019-08-12T02:00:00Z", result: 34 },
81
- { date: "2019-08-12T01:00:00Z", result: 33 },
82
- ],
47
+ it("renders label for executable field", async () => {
48
+ const rendered = render(<RuleImplementationProperties {...props} />);
49
+ await waitForLoad(rendered);
50
+ expect(
51
+ rendered.container.querySelector(".olive.label")
52
+ ).toBeInTheDocument();
53
+
54
+ const nonExecutableProps = {
55
+ ...props,
56
+ ruleImplementation: { ...props.ruleImplementation, executable: false },
83
57
  };
84
- const wrapper = shallowWithIntl(
85
- <RuleImplementationProperties {...props} />
58
+
59
+ const renderedNonExecutable = render(
60
+ <RuleImplementationProperties {...nonExecutableProps} />
86
61
  );
87
- expect(wrapper.find("Label").at(1).prop("color")).toEqual("olive");
88
- wrapper.setProps({
89
- ruleImplementation: { ...props.ruleImplementation, executable: false },
90
- });
91
- expect(wrapper.find("Label").at(1).prop("color")).toEqual("teal");
62
+ await waitForLoad(renderedNonExecutable);
63
+ expect(
64
+ renderedNonExecutable.container.querySelector(".teal.label")
65
+ ).toBeInTheDocument();
92
66
  });
93
67
  });
@@ -1,17 +1,7 @@
1
- import React from "react";
2
- import { render } from "@truedat/test/render";
3
- import messages from "@truedat/dq/messages";
1
+ import { render, waitForLoad } from "@truedat/test/render";
4
2
  import { RuleImplementationResultTabs } from "../RuleImplementationResultTabs";
5
3
 
6
4
  describe("<RuleImplementationResultTabs />", () => {
7
- const renderOpts = {
8
- messages: {
9
- en: {
10
- ...messages.en,
11
- },
12
- },
13
- };
14
-
15
5
  const props = {
16
6
  rule: { id: 8 },
17
7
  ruleImplementation: { id: 1 },
@@ -20,11 +10,9 @@ describe("<RuleImplementationResultTabs />", () => {
20
10
  ruleResult: { id: 2 },
21
11
  authCreateRemediation: true,
22
12
  };
23
- it("matches the latest snapshot", () => {
24
- const { container } = render(
25
- <RuleImplementationResultTabs {...props} />,
26
- renderOpts
27
- );
28
- expect(container).toMatchSnapshot();
13
+ it("matches the latest snapshot", async () => {
14
+ const rendered = render(<RuleImplementationResultTabs {...props} />);
15
+ await waitForLoad(rendered);
16
+ expect(rendered.container).toMatchSnapshot();
29
17
  });
30
18
  });
@@ -1,5 +1,4 @@
1
1
  import _ from "lodash/fp";
2
- import React from "react";
3
2
  import { render } from "@truedat/test/render";
4
3
  import RuleImplementationResults, {
5
4
  getCustomColumnsWithData,
@@ -8,8 +7,8 @@ import RuleImplementationResults, {
8
7
 
9
8
  import { implementationResultsMock } from "./__fixtures__/implementationResultsMocks";
10
9
 
11
- jest.mock("react-router-dom", () => ({
12
- ...jest.requireActual("react-router-dom"),
10
+ jest.mock("react-router", () => ({
11
+ ...jest.requireActual("react-router"),
13
12
  useParams: () => ({ implementation_id: "2" }),
14
13
  }));
15
14
 
@@ -1,12 +1,12 @@
1
- import React from "react";
2
- import { shallow } from "enzyme";
1
+ import { render, waitForLoad } from "@truedat/test/render";
3
2
  import { RuleImplementationResultsLink } from "../RuleImplementationResultsLink";
4
3
 
5
4
  describe("<RuleImplementationResultsLink />", () => {
6
5
  const props = { id: 123, implementation_key: "foo", rule_id: 4 };
7
6
 
8
- it("matches the latest snapshot", () => {
9
- const wrapper = shallow(<RuleImplementationResultsLink {...props} />);
10
- expect(wrapper).toMatchSnapshot();
7
+ it("matches the latest snapshot", async () => {
8
+ const rendered = render(<RuleImplementationResultsLink {...props} />);
9
+ await waitForLoad(rendered);
10
+ expect(rendered.container).toMatchSnapshot();
11
11
  });
12
12
  });
@@ -1,4 +1,3 @@
1
- import React from "react";
2
1
  import { render } from "@truedat/test/render";
3
2
  import { RuleImplementationTabs } from "../RuleImplementationTabs";
4
3