@truedat/dq 4.33.10 → 4.35.2

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 (96) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/package.json +5 -5
  3. package/src/api.js +7 -1
  4. package/src/components/ConditionSummary.js +23 -21
  5. package/src/components/ExecutionDetails.js +11 -14
  6. package/src/components/ExecutionGroup.js +24 -15
  7. package/src/components/ImplementationResultBar.js +80 -0
  8. package/src/components/ImplementationSummary.js +33 -72
  9. package/src/components/ImplementationsUploadButton.js +61 -0
  10. package/src/components/InformationSummary.js +68 -0
  11. package/src/components/NewRuleImplementation.js +12 -0
  12. package/src/components/RuleForm.js +0 -178
  13. package/src/components/RuleImplementation.js +10 -6
  14. package/src/components/RuleImplementationProperties.js +31 -64
  15. package/src/components/RuleImplementationResults.js +87 -53
  16. package/src/components/RuleImplementationsActions.js +3 -59
  17. package/src/components/RuleImplementationsDownload.js +86 -0
  18. package/src/components/RuleImplementationsOptions.js +28 -0
  19. package/src/components/RuleProperties.js +1 -10
  20. package/src/components/RuleResultDecorator.js +43 -26
  21. package/src/components/RuleResultRow.js +4 -1
  22. package/src/components/RuleResultsUpload.js +47 -0
  23. package/src/components/RuleRoutes.js +0 -13
  24. package/src/components/RuleSummary.js +15 -2
  25. package/src/components/RulesActions.js +17 -10
  26. package/src/components/RulesUploadButton.js +58 -0
  27. package/src/components/__tests__/ExecutionGroup.spec.js +11 -7
  28. package/src/components/__tests__/ImplementationResultBar.spec.js +98 -0
  29. package/src/components/__tests__/ImplementationSummary.spec.js +9 -26
  30. package/src/components/__tests__/InformationSummary.spec.js +35 -0
  31. package/src/components/__tests__/NewRuleImplementation.spec.js +1 -1
  32. package/src/components/__tests__/RuleForm.spec.js +0 -191
  33. package/src/components/__tests__/RuleImplementation.spec.js +1 -0
  34. package/src/components/__tests__/RuleImplementationProperties.spec.js +23 -33
  35. package/src/components/__tests__/RuleImplementationsActions.spec.js +0 -9
  36. package/src/components/__tests__/RuleImplementationsOptions.spec.js +18 -0
  37. package/src/components/__tests__/RuleProperties.spec.js +7 -9
  38. package/src/components/__tests__/RuleResultDecorator.spec.js +17 -11
  39. package/src/components/__tests__/RuleResultRow.spec.js +25 -46
  40. package/src/components/__tests__/RuleResultsUpload.spec.js +18 -0
  41. package/src/components/__tests__/RuleRow.spec.js +0 -4
  42. package/src/components/__tests__/RuleSummary.spec.js +6 -6
  43. package/src/components/__tests__/Rules.spec.js +15 -39
  44. package/src/components/__tests__/__snapshots__/ConditionSummary.spec.js.snap +55 -51
  45. package/src/components/__tests__/__snapshots__/ExecutionGroup.spec.js.snap +5 -4
  46. package/src/components/__tests__/__snapshots__/ImplementationResultBar.spec.js.snap +141 -0
  47. package/src/components/__tests__/__snapshots__/ImplementationSummary.spec.js.snap +194 -457
  48. package/src/components/__tests__/__snapshots__/InformationSummary.spec.js.snap +185 -0
  49. package/src/components/__tests__/__snapshots__/NewRuleImplementation.spec.js.snap +6 -0
  50. package/src/components/__tests__/__snapshots__/RuleForm.spec.js.snap +0 -148
  51. package/src/components/__tests__/__snapshots__/RuleImplementation.spec.js.snap +20 -0
  52. package/src/components/__tests__/__snapshots__/RuleImplementationProperties.spec.js.snap +43 -49
  53. package/src/components/__tests__/__snapshots__/RuleImplementationResults.spec.js.snap +63 -61
  54. package/src/components/__tests__/__snapshots__/RuleImplementationsActions.spec.js.snap +1 -7
  55. package/src/components/__tests__/__snapshots__/RuleImplementationsOptions.spec.js.snap +58 -0
  56. package/src/components/__tests__/__snapshots__/RuleProperties.spec.js.snap +0 -1
  57. package/src/components/__tests__/__snapshots__/RuleResultsUpload.spec.js.snap +18 -0
  58. package/src/components/__tests__/__snapshots__/RuleRow.spec.js.snap +0 -28
  59. package/src/components/__tests__/__snapshots__/Rules.spec.js.snap +0 -101
  60. package/src/components/ruleImplementationForm/FiltersGroup.js +1 -0
  61. package/src/components/ruleImplementationForm/InformationForm.js +5 -5
  62. package/src/components/ruleImplementationForm/LimitsForm.js +142 -0
  63. package/src/components/ruleImplementationForm/RuleImplementationForm.js +14 -4
  64. package/src/components/ruleImplementationForm/RuleImplementationRawForm.js +16 -6
  65. package/src/components/ruleImplementationForm/ValueConditions.js +11 -0
  66. package/src/components/ruleImplementationForm/__tests__/LimitsForm.spec.js +186 -0
  67. package/src/components/ruleImplementationForm/__tests__/RuleImplementationRawForm.spec.js +42 -35
  68. package/src/components/ruleImplementationForm/__tests__/__snapshots__/LimitsForm.spec.js.snap +1104 -0
  69. package/src/components/ruleImplementationForm/__tests__/__snapshots__/RuleImplementationForm.spec.js.snap +4 -1
  70. package/src/components/ruleImplementationForm/__tests__/__snapshots__/RuleImplementationRawForm.spec.js.snap +12 -1
  71. package/src/components/ruleImplementationForm/limitsValidation.js +72 -0
  72. package/src/messages/en.js +167 -76
  73. package/src/messages/es.js +292 -185
  74. package/src/reducers/__tests__/rule.spec.js +2 -4
  75. package/src/reducers/__tests__/ruleImplementation.spec.js +2 -0
  76. package/src/reducers/__tests__/ruleImplementations.spec.js +12 -8
  77. package/src/reducers/__tests__/uploadingResults.spec.js +28 -0
  78. package/src/reducers/dqMessage.js +121 -1
  79. package/src/reducers/index.js +6 -0
  80. package/src/reducers/rule.js +0 -3
  81. package/src/reducers/ruleImplementation.js +3 -0
  82. package/src/reducers/ruleImplementationRedirect.js +6 -1
  83. package/src/reducers/ruleImplementations.js +3 -0
  84. package/src/reducers/ruleRedirect.js +5 -0
  85. package/src/reducers/uploadImplementationsFile.js +28 -0
  86. package/src/reducers/uploadRulesFile.js +25 -0
  87. package/src/reducers/uploadingResults.js +16 -0
  88. package/src/routines.js +3 -0
  89. package/src/sagas/__tests__/uploadResults.spec.js +65 -0
  90. package/src/sagas/index.js +9 -0
  91. package/src/sagas/uploadImplementations.js +28 -0
  92. package/src/sagas/uploadResults.js +32 -0
  93. package/src/sagas/uploadRules.js +28 -0
  94. package/src/selectors/getRuleImplementationColumns.js +38 -3
  95. package/src/selectors/ruleColumnsSelector.js +0 -31
  96. package/src/styles/ruleSummary.less +17 -10
@@ -0,0 +1,1104 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`<LimitsForm /> shows invalid number label 1`] = `
4
+ <div>
5
+ <div
6
+ class="ui segment"
7
+ >
8
+ <div
9
+ class="field"
10
+ >
11
+ <label
12
+ class="rule-form-label"
13
+ >
14
+ Result Type
15
+ <span>
16
+ *
17
+ </span>
18
+ <i
19
+ aria-hidden="true"
20
+ class="question circle outline icon rule-form-popup"
21
+ />
22
+ </label>
23
+ <div
24
+ class="inline fields"
25
+ >
26
+ <div
27
+ class="field"
28
+ >
29
+ <div
30
+ class="ui checked radio checkbox"
31
+ >
32
+ <input
33
+ checked=""
34
+ class="hidden"
35
+ name="result_type"
36
+ readonly=""
37
+ tabindex="0"
38
+ type="radio"
39
+ value="percentage"
40
+ />
41
+ <label>
42
+ Percentage
43
+ </label>
44
+ </div>
45
+ </div>
46
+ <div
47
+ class="field"
48
+ >
49
+ <div
50
+ class="ui radio checkbox"
51
+ >
52
+ <input
53
+ class="hidden"
54
+ name="result_type"
55
+ readonly=""
56
+ tabindex="0"
57
+ type="radio"
58
+ value="deviation"
59
+ />
60
+ <label>
61
+ Deviation
62
+ </label>
63
+ </div>
64
+ </div>
65
+ <div
66
+ class="field"
67
+ >
68
+ <div
69
+ class="ui radio checkbox"
70
+ >
71
+ <input
72
+ class="hidden"
73
+ name="result_type"
74
+ readonly=""
75
+ tabindex="0"
76
+ type="radio"
77
+ value="errors_number"
78
+ />
79
+ <label>
80
+ Error count
81
+ </label>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </div>
86
+ <div
87
+ class="field"
88
+ >
89
+ <label
90
+ class="rule-form-label"
91
+ >
92
+ Threshold
93
+ <span>
94
+ *
95
+ </span>
96
+ <i
97
+ aria-hidden="true"
98
+ class="question circle outline icon rule-form-popup"
99
+ />
100
+ <div
101
+ class="ui left pointing label"
102
+ >
103
+ Invalid number format
104
+ </div>
105
+ </label>
106
+ <div
107
+ class="field"
108
+ >
109
+ <div
110
+ class="ui input"
111
+ >
112
+ <input
113
+ autocomplete="off"
114
+ name="minimum"
115
+ placeholder="Threshold value"
116
+ type="text"
117
+ value="text"
118
+ />
119
+ </div>
120
+ </div>
121
+ </div>
122
+ <div
123
+ class="field"
124
+ >
125
+ <label
126
+ class="rule-form-label"
127
+ >
128
+ Goal
129
+ <span>
130
+ *
131
+ </span>
132
+ <i
133
+ aria-hidden="true"
134
+ class="question circle outline icon rule-form-popup"
135
+ />
136
+ <div
137
+ class="ui left pointing label"
138
+ >
139
+ Invalid number format
140
+ </div>
141
+ </label>
142
+ <div
143
+ class="field"
144
+ >
145
+ <div
146
+ class="ui input"
147
+ >
148
+ <input
149
+ autocomplete="off"
150
+ name="goal"
151
+ placeholder="Goal value"
152
+ type="text"
153
+ value="text"
154
+ />
155
+ </div>
156
+ </div>
157
+ </div>
158
+ </div>
159
+ </div>
160
+ `;
161
+
162
+ exports[`<LimitsForm /> shows label for deviation minimum greater than 100 1`] = `
163
+ <div>
164
+ <div
165
+ class="ui segment"
166
+ >
167
+ <div
168
+ class="field"
169
+ >
170
+ <label
171
+ class="rule-form-label"
172
+ >
173
+ Result Type
174
+ <span>
175
+ *
176
+ </span>
177
+ <i
178
+ aria-hidden="true"
179
+ class="question circle outline icon rule-form-popup"
180
+ />
181
+ </label>
182
+ <div
183
+ class="inline fields"
184
+ >
185
+ <div
186
+ class="field"
187
+ >
188
+ <div
189
+ class="ui radio checkbox"
190
+ >
191
+ <input
192
+ class="hidden"
193
+ name="result_type"
194
+ readonly=""
195
+ tabindex="0"
196
+ type="radio"
197
+ value="percentage"
198
+ />
199
+ <label>
200
+ Percentage
201
+ </label>
202
+ </div>
203
+ </div>
204
+ <div
205
+ class="field"
206
+ >
207
+ <div
208
+ class="ui checked radio checkbox"
209
+ >
210
+ <input
211
+ checked=""
212
+ class="hidden"
213
+ name="result_type"
214
+ readonly=""
215
+ tabindex="0"
216
+ type="radio"
217
+ value="deviation"
218
+ />
219
+ <label>
220
+ Deviation
221
+ </label>
222
+ </div>
223
+ </div>
224
+ <div
225
+ class="field"
226
+ >
227
+ <div
228
+ class="ui radio checkbox"
229
+ >
230
+ <input
231
+ class="hidden"
232
+ name="result_type"
233
+ readonly=""
234
+ tabindex="0"
235
+ type="radio"
236
+ value="errors_number"
237
+ />
238
+ <label>
239
+ Error count
240
+ </label>
241
+ </div>
242
+ </div>
243
+ </div>
244
+ </div>
245
+ <div
246
+ class="field"
247
+ >
248
+ <label
249
+ class="rule-form-label"
250
+ >
251
+ Threshold
252
+ <span>
253
+ *
254
+ </span>
255
+ <i
256
+ aria-hidden="true"
257
+ class="question circle outline icon rule-form-popup"
258
+ />
259
+ <div
260
+ class="ui left pointing label"
261
+ >
262
+ Threshold percentage cannot be greater than 100
263
+ </div>
264
+ </label>
265
+ <div
266
+ class="field"
267
+ >
268
+ <div
269
+ class="ui input"
270
+ >
271
+ <input
272
+ autocomplete="off"
273
+ name="minimum"
274
+ placeholder="Threshold value"
275
+ type="text"
276
+ value="200"
277
+ />
278
+ </div>
279
+ </div>
280
+ </div>
281
+ <div
282
+ class="field"
283
+ >
284
+ <label
285
+ class="rule-form-label"
286
+ >
287
+ Goal
288
+ <span>
289
+ *
290
+ </span>
291
+ <i
292
+ aria-hidden="true"
293
+ class="question circle outline icon rule-form-popup"
294
+ />
295
+ </label>
296
+ <div
297
+ class="field"
298
+ >
299
+ <div
300
+ class="ui input"
301
+ >
302
+ <input
303
+ autocomplete="off"
304
+ name="goal"
305
+ placeholder="Goal value"
306
+ type="text"
307
+ value="1"
308
+ />
309
+ </div>
310
+ </div>
311
+ </div>
312
+ </div>
313
+ </div>
314
+ `;
315
+
316
+ exports[`<LimitsForm /> shows label for deviation minimum greater than goal 1`] = `
317
+ <div>
318
+ <div
319
+ class="ui segment"
320
+ >
321
+ <div
322
+ class="field"
323
+ >
324
+ <label
325
+ class="rule-form-label"
326
+ >
327
+ Result Type
328
+ <span>
329
+ *
330
+ </span>
331
+ <i
332
+ aria-hidden="true"
333
+ class="question circle outline icon rule-form-popup"
334
+ />
335
+ </label>
336
+ <div
337
+ class="inline fields"
338
+ >
339
+ <div
340
+ class="field"
341
+ >
342
+ <div
343
+ class="ui radio checkbox"
344
+ >
345
+ <input
346
+ class="hidden"
347
+ name="result_type"
348
+ readonly=""
349
+ tabindex="0"
350
+ type="radio"
351
+ value="percentage"
352
+ />
353
+ <label>
354
+ Percentage
355
+ </label>
356
+ </div>
357
+ </div>
358
+ <div
359
+ class="field"
360
+ >
361
+ <div
362
+ class="ui checked radio checkbox"
363
+ >
364
+ <input
365
+ checked=""
366
+ class="hidden"
367
+ name="result_type"
368
+ readonly=""
369
+ tabindex="0"
370
+ type="radio"
371
+ value="deviation"
372
+ />
373
+ <label>
374
+ Deviation
375
+ </label>
376
+ </div>
377
+ </div>
378
+ <div
379
+ class="field"
380
+ >
381
+ <div
382
+ class="ui radio checkbox"
383
+ >
384
+ <input
385
+ class="hidden"
386
+ name="result_type"
387
+ readonly=""
388
+ tabindex="0"
389
+ type="radio"
390
+ value="errors_number"
391
+ />
392
+ <label>
393
+ Error count
394
+ </label>
395
+ </div>
396
+ </div>
397
+ </div>
398
+ </div>
399
+ <div
400
+ class="field"
401
+ >
402
+ <label
403
+ class="rule-form-label"
404
+ >
405
+ Threshold
406
+ <span>
407
+ *
408
+ </span>
409
+ <i
410
+ aria-hidden="true"
411
+ class="question circle outline icon rule-form-popup"
412
+ />
413
+ <div
414
+ class="ui left pointing label"
415
+ >
416
+ Threshold must greater than (or equal to) the goal
417
+ </div>
418
+ </label>
419
+ <div
420
+ class="field"
421
+ >
422
+ <div
423
+ class="ui input"
424
+ >
425
+ <input
426
+ autocomplete="off"
427
+ name="minimum"
428
+ placeholder="Threshold value"
429
+ type="text"
430
+ value="10"
431
+ />
432
+ </div>
433
+ </div>
434
+ </div>
435
+ <div
436
+ class="field"
437
+ >
438
+ <label
439
+ class="rule-form-label"
440
+ >
441
+ Goal
442
+ <span>
443
+ *
444
+ </span>
445
+ <i
446
+ aria-hidden="true"
447
+ class="question circle outline icon rule-form-popup"
448
+ />
449
+ <div
450
+ class="ui left pointing label"
451
+ >
452
+ Goal must be less than (or equal to) the threshold (lower goal is better)
453
+ </div>
454
+ </label>
455
+ <div
456
+ class="field"
457
+ >
458
+ <div
459
+ class="ui input"
460
+ >
461
+ <input
462
+ autocomplete="off"
463
+ name="goal"
464
+ placeholder="Goal value"
465
+ type="text"
466
+ value="50"
467
+ />
468
+ </div>
469
+ </div>
470
+ </div>
471
+ </div>
472
+ </div>
473
+ `;
474
+
475
+ exports[`<LimitsForm /> shows label for errors_number minimum greater than goal 1`] = `
476
+ <div>
477
+ <div
478
+ class="ui segment"
479
+ >
480
+ <div
481
+ class="field"
482
+ >
483
+ <label
484
+ class="rule-form-label"
485
+ >
486
+ Result Type
487
+ <span>
488
+ *
489
+ </span>
490
+ <i
491
+ aria-hidden="true"
492
+ class="question circle outline icon rule-form-popup"
493
+ />
494
+ </label>
495
+ <div
496
+ class="inline fields"
497
+ >
498
+ <div
499
+ class="field"
500
+ >
501
+ <div
502
+ class="ui radio checkbox"
503
+ >
504
+ <input
505
+ class="hidden"
506
+ name="result_type"
507
+ readonly=""
508
+ tabindex="0"
509
+ type="radio"
510
+ value="percentage"
511
+ />
512
+ <label>
513
+ Percentage
514
+ </label>
515
+ </div>
516
+ </div>
517
+ <div
518
+ class="field"
519
+ >
520
+ <div
521
+ class="ui radio checkbox"
522
+ >
523
+ <input
524
+ class="hidden"
525
+ name="result_type"
526
+ readonly=""
527
+ tabindex="0"
528
+ type="radio"
529
+ value="deviation"
530
+ />
531
+ <label>
532
+ Deviation
533
+ </label>
534
+ </div>
535
+ </div>
536
+ <div
537
+ class="field"
538
+ >
539
+ <div
540
+ class="ui checked radio checkbox"
541
+ >
542
+ <input
543
+ checked=""
544
+ class="hidden"
545
+ name="result_type"
546
+ readonly=""
547
+ tabindex="0"
548
+ type="radio"
549
+ value="errors_number"
550
+ />
551
+ <label>
552
+ Error count
553
+ </label>
554
+ </div>
555
+ </div>
556
+ </div>
557
+ </div>
558
+ <div
559
+ class="field"
560
+ >
561
+ <label
562
+ class="rule-form-label"
563
+ >
564
+ Threshold
565
+ <span>
566
+ *
567
+ </span>
568
+ <i
569
+ aria-hidden="true"
570
+ class="question circle outline icon rule-form-popup"
571
+ />
572
+ <div
573
+ class="ui left pointing label"
574
+ >
575
+ Threshold must greater than (or equal to) the goal
576
+ </div>
577
+ </label>
578
+ <div
579
+ class="field"
580
+ >
581
+ <div
582
+ class="ui input"
583
+ >
584
+ <input
585
+ autocomplete="off"
586
+ name="minimum"
587
+ placeholder="Threshold value"
588
+ type="text"
589
+ value="100"
590
+ />
591
+ </div>
592
+ </div>
593
+ </div>
594
+ <div
595
+ class="field"
596
+ >
597
+ <label
598
+ class="rule-form-label"
599
+ >
600
+ Goal
601
+ <span>
602
+ *
603
+ </span>
604
+ <i
605
+ aria-hidden="true"
606
+ class="question circle outline icon rule-form-popup"
607
+ />
608
+ <div
609
+ class="ui left pointing label"
610
+ >
611
+ Goal must be less than (or equal to) the threshold (lower goal is better)
612
+ </div>
613
+ </label>
614
+ <div
615
+ class="field"
616
+ >
617
+ <div
618
+ class="ui input"
619
+ >
620
+ <input
621
+ autocomplete="off"
622
+ name="goal"
623
+ placeholder="Goal value"
624
+ type="text"
625
+ value="200"
626
+ />
627
+ </div>
628
+ </div>
629
+ </div>
630
+ </div>
631
+ </div>
632
+ `;
633
+
634
+ exports[`<LimitsForm /> shows label for percentage goal greater than minimum 1`] = `
635
+ <div>
636
+ <div
637
+ class="ui segment"
638
+ >
639
+ <div
640
+ class="field"
641
+ >
642
+ <label
643
+ class="rule-form-label"
644
+ >
645
+ Result Type
646
+ <span>
647
+ *
648
+ </span>
649
+ <i
650
+ aria-hidden="true"
651
+ class="question circle outline icon rule-form-popup"
652
+ />
653
+ </label>
654
+ <div
655
+ class="inline fields"
656
+ >
657
+ <div
658
+ class="field"
659
+ >
660
+ <div
661
+ class="ui checked radio checkbox"
662
+ >
663
+ <input
664
+ checked=""
665
+ class="hidden"
666
+ name="result_type"
667
+ readonly=""
668
+ tabindex="0"
669
+ type="radio"
670
+ value="percentage"
671
+ />
672
+ <label>
673
+ Percentage
674
+ </label>
675
+ </div>
676
+ </div>
677
+ <div
678
+ class="field"
679
+ >
680
+ <div
681
+ class="ui radio checkbox"
682
+ >
683
+ <input
684
+ class="hidden"
685
+ name="result_type"
686
+ readonly=""
687
+ tabindex="0"
688
+ type="radio"
689
+ value="deviation"
690
+ />
691
+ <label>
692
+ Deviation
693
+ </label>
694
+ </div>
695
+ </div>
696
+ <div
697
+ class="field"
698
+ >
699
+ <div
700
+ class="ui radio checkbox"
701
+ >
702
+ <input
703
+ class="hidden"
704
+ name="result_type"
705
+ readonly=""
706
+ tabindex="0"
707
+ type="radio"
708
+ value="errors_number"
709
+ />
710
+ <label>
711
+ Error count
712
+ </label>
713
+ </div>
714
+ </div>
715
+ </div>
716
+ </div>
717
+ <div
718
+ class="field"
719
+ >
720
+ <label
721
+ class="rule-form-label"
722
+ >
723
+ Threshold
724
+ <span>
725
+ *
726
+ </span>
727
+ <i
728
+ aria-hidden="true"
729
+ class="question circle outline icon rule-form-popup"
730
+ />
731
+ <div
732
+ class="ui left pointing label"
733
+ >
734
+ Threshold must be lower than (or equal to) the goal
735
+ </div>
736
+ </label>
737
+ <div
738
+ class="field"
739
+ >
740
+ <div
741
+ class="ui input"
742
+ >
743
+ <input
744
+ autocomplete="off"
745
+ name="minimum"
746
+ placeholder="Threshold value"
747
+ type="text"
748
+ value="30"
749
+ />
750
+ </div>
751
+ </div>
752
+ </div>
753
+ <div
754
+ class="field"
755
+ >
756
+ <label
757
+ class="rule-form-label"
758
+ >
759
+ Goal
760
+ <span>
761
+ *
762
+ </span>
763
+ <i
764
+ aria-hidden="true"
765
+ class="question circle outline icon rule-form-popup"
766
+ />
767
+ <div
768
+ class="ui left pointing label"
769
+ >
770
+ Goal must be greater than (or equal to) the threshold (higher goal is better).
771
+ </div>
772
+ </label>
773
+ <div
774
+ class="field"
775
+ >
776
+ <div
777
+ class="ui input"
778
+ >
779
+ <input
780
+ autocomplete="off"
781
+ name="goal"
782
+ placeholder="Goal value"
783
+ type="text"
784
+ value="20"
785
+ />
786
+ </div>
787
+ </div>
788
+ </div>
789
+ </div>
790
+ </div>
791
+ `;
792
+
793
+ exports[`<LimitsForm /> shows label for percentage goal over 100 1`] = `
794
+ <div>
795
+ <div
796
+ class="ui segment"
797
+ >
798
+ <div
799
+ class="field"
800
+ >
801
+ <label
802
+ class="rule-form-label"
803
+ >
804
+ Result Type
805
+ <span>
806
+ *
807
+ </span>
808
+ <i
809
+ aria-hidden="true"
810
+ class="question circle outline icon rule-form-popup"
811
+ />
812
+ </label>
813
+ <div
814
+ class="inline fields"
815
+ >
816
+ <div
817
+ class="field"
818
+ >
819
+ <div
820
+ class="ui checked radio checkbox"
821
+ >
822
+ <input
823
+ checked=""
824
+ class="hidden"
825
+ name="result_type"
826
+ readonly=""
827
+ tabindex="0"
828
+ type="radio"
829
+ value="percentage"
830
+ />
831
+ <label>
832
+ Percentage
833
+ </label>
834
+ </div>
835
+ </div>
836
+ <div
837
+ class="field"
838
+ >
839
+ <div
840
+ class="ui radio checkbox"
841
+ >
842
+ <input
843
+ class="hidden"
844
+ name="result_type"
845
+ readonly=""
846
+ tabindex="0"
847
+ type="radio"
848
+ value="deviation"
849
+ />
850
+ <label>
851
+ Deviation
852
+ </label>
853
+ </div>
854
+ </div>
855
+ <div
856
+ class="field"
857
+ >
858
+ <div
859
+ class="ui radio checkbox"
860
+ >
861
+ <input
862
+ class="hidden"
863
+ name="result_type"
864
+ readonly=""
865
+ tabindex="0"
866
+ type="radio"
867
+ value="errors_number"
868
+ />
869
+ <label>
870
+ Error count
871
+ </label>
872
+ </div>
873
+ </div>
874
+ </div>
875
+ </div>
876
+ <div
877
+ class="field"
878
+ >
879
+ <label
880
+ class="rule-form-label"
881
+ >
882
+ Threshold
883
+ <span>
884
+ *
885
+ </span>
886
+ <i
887
+ aria-hidden="true"
888
+ class="question circle outline icon rule-form-popup"
889
+ />
890
+ </label>
891
+ <div
892
+ class="field"
893
+ >
894
+ <div
895
+ class="ui input"
896
+ >
897
+ <input
898
+ autocomplete="off"
899
+ name="minimum"
900
+ placeholder="Threshold value"
901
+ type="text"
902
+ value="1"
903
+ />
904
+ </div>
905
+ </div>
906
+ </div>
907
+ <div
908
+ class="field"
909
+ >
910
+ <label
911
+ class="rule-form-label"
912
+ >
913
+ Goal
914
+ <span>
915
+ *
916
+ </span>
917
+ <i
918
+ aria-hidden="true"
919
+ class="question circle outline icon rule-form-popup"
920
+ />
921
+ <div
922
+ class="ui left pointing label"
923
+ >
924
+ Goal percentage cannot be greater than 100
925
+ </div>
926
+ </label>
927
+ <div
928
+ class="field"
929
+ >
930
+ <div
931
+ class="ui input"
932
+ >
933
+ <input
934
+ autocomplete="off"
935
+ name="goal"
936
+ placeholder="Goal value"
937
+ type="text"
938
+ value="200"
939
+ />
940
+ </div>
941
+ </div>
942
+ </div>
943
+ </div>
944
+ </div>
945
+ `;
946
+
947
+ exports[`<LimitsForm /> shows required label 1`] = `
948
+ <div>
949
+ <div
950
+ class="ui segment"
951
+ >
952
+ <div
953
+ class="field"
954
+ >
955
+ <label
956
+ class="rule-form-label"
957
+ >
958
+ Result Type
959
+ <span>
960
+ *
961
+ </span>
962
+ <i
963
+ aria-hidden="true"
964
+ class="question circle outline icon rule-form-popup"
965
+ />
966
+ </label>
967
+ <div
968
+ class="inline fields"
969
+ >
970
+ <div
971
+ class="field"
972
+ >
973
+ <div
974
+ class="ui checked radio checkbox"
975
+ >
976
+ <input
977
+ checked=""
978
+ class="hidden"
979
+ name="result_type"
980
+ readonly=""
981
+ tabindex="0"
982
+ type="radio"
983
+ value="percentage"
984
+ />
985
+ <label>
986
+ Percentage
987
+ </label>
988
+ </div>
989
+ </div>
990
+ <div
991
+ class="field"
992
+ >
993
+ <div
994
+ class="ui radio checkbox"
995
+ >
996
+ <input
997
+ class="hidden"
998
+ name="result_type"
999
+ readonly=""
1000
+ tabindex="0"
1001
+ type="radio"
1002
+ value="deviation"
1003
+ />
1004
+ <label>
1005
+ Deviation
1006
+ </label>
1007
+ </div>
1008
+ </div>
1009
+ <div
1010
+ class="field"
1011
+ >
1012
+ <div
1013
+ class="ui radio checkbox"
1014
+ >
1015
+ <input
1016
+ class="hidden"
1017
+ name="result_type"
1018
+ readonly=""
1019
+ tabindex="0"
1020
+ type="radio"
1021
+ value="errors_number"
1022
+ />
1023
+ <label>
1024
+ Error count
1025
+ </label>
1026
+ </div>
1027
+ </div>
1028
+ </div>
1029
+ </div>
1030
+ <div
1031
+ class="field"
1032
+ >
1033
+ <label
1034
+ class="rule-form-label"
1035
+ >
1036
+ Threshold
1037
+ <span>
1038
+ *
1039
+ </span>
1040
+ <i
1041
+ aria-hidden="true"
1042
+ class="question circle outline icon rule-form-popup"
1043
+ />
1044
+ <div
1045
+ class="ui left pointing label"
1046
+ >
1047
+ Required field is empty
1048
+ </div>
1049
+ </label>
1050
+ <div
1051
+ class="field"
1052
+ >
1053
+ <div
1054
+ class="ui input"
1055
+ >
1056
+ <input
1057
+ autocomplete="off"
1058
+ name="minimum"
1059
+ placeholder="Threshold value"
1060
+ type="text"
1061
+ value=""
1062
+ />
1063
+ </div>
1064
+ </div>
1065
+ </div>
1066
+ <div
1067
+ class="field"
1068
+ >
1069
+ <label
1070
+ class="rule-form-label"
1071
+ >
1072
+ Goal
1073
+ <span>
1074
+ *
1075
+ </span>
1076
+ <i
1077
+ aria-hidden="true"
1078
+ class="question circle outline icon rule-form-popup"
1079
+ />
1080
+ <div
1081
+ class="ui left pointing label"
1082
+ >
1083
+ Required field is empty
1084
+ </div>
1085
+ </label>
1086
+ <div
1087
+ class="field"
1088
+ >
1089
+ <div
1090
+ class="ui input"
1091
+ >
1092
+ <input
1093
+ autocomplete="off"
1094
+ name="goal"
1095
+ placeholder="Goal value"
1096
+ type="text"
1097
+ value=""
1098
+ />
1099
+ </div>
1100
+ </div>
1101
+ </div>
1102
+ </div>
1103
+ </div>
1104
+ `;