ondc-code-generator 0.8.9 → 0.9.0

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 (86) hide show
  1. package/alpha/table/page/index.html +11487 -0
  2. package/alpha/table/page/style.css +449 -0
  3. package/alpha/table/rag-table-docs/confirm.md +60 -0
  4. package/alpha/table/rag-table-docs/init.md +78 -0
  5. package/alpha/table/rag-table-docs/on_confirm.md +161 -0
  6. package/alpha/table/rag-table-docs/on_init.md +143 -0
  7. package/alpha/table/rag-table-docs/on_search.md +160 -0
  8. package/alpha/table/rag-table-docs/on_select.md +96 -0
  9. package/alpha/table/rag-table-docs/on_status.md +150 -0
  10. package/alpha/table/rag-table-docs/on_update.md +161 -0
  11. package/alpha/table/rag-table-docs/raw_table.json +11198 -0
  12. package/alpha/table/rag-table-docs/search.md +125 -0
  13. package/alpha/table/rag-table-docs/select.md +67 -0
  14. package/alpha/table/rag-table-docs/status.md +41 -0
  15. package/alpha/table/rag-table-docs/update.md +48 -0
  16. package/alpha/table/readme.md +1312 -0
  17. package/alpha/table/validPaths.json +34134 -0
  18. package/alpha/table.zip +0 -0
  19. package/dist/bin/cli.js +4 -0
  20. package/dist/generator/config-compiler.js +12 -0
  21. package/dist/generator/generators/documentation/md-generator.d.ts +11 -5
  22. package/dist/generator/generators/documentation/md-generator.js +22 -28
  23. package/dist/generator/generators/documentation/templates/index.mustache +162 -26
  24. package/dist/generator/generators/documentation/templates/style.css +387 -142
  25. package/dist/generator/generators/rag/rag-generator.d.ts +48 -0
  26. package/dist/generator/generators/rag/rag-generator.js +185 -0
  27. package/dist/generator/generators/rag/rag-table-generator.d.ts +55 -0
  28. package/dist/generator/generators/rag/rag-table-generator.js +263 -0
  29. package/dist/types/compiler-types.d.ts +3 -1
  30. package/dist/types/compiler-types.js +2 -0
  31. package/package.json +1 -1
  32. package/alpha/docs/page/index.html +0 -6137
  33. package/alpha/docs/page/style.css +0 -204
  34. package/alpha/docs/readme.md +0 -5939
  35. package/alpha/docs/validPaths.json +0 -14351
  36. package/alpha/page/index.html +0 -6137
  37. package/alpha/page/style.css +0 -204
  38. package/alpha/readme.md +0 -5939
  39. package/alpha/validationpkg/examples/search.json +0 -143
  40. package/alpha/validationpkg/examples_output/search/case-001/output.json +0 -12
  41. package/alpha/validationpkg/go.mod +0 -8
  42. package/alpha/validationpkg/go.sum +0 -4
  43. package/alpha/validationpkg/jsonvalidations/cancel.go +0 -1289
  44. package/alpha/validationpkg/jsonvalidations/confirm.go +0 -9121
  45. package/alpha/validationpkg/jsonvalidations/init.go +0 -4864
  46. package/alpha/validationpkg/jsonvalidations/issue.go +0 -4868
  47. package/alpha/validationpkg/jsonvalidations/on_cancel.go +0 -7111
  48. package/alpha/validationpkg/jsonvalidations/on_confirm.go +0 -8903
  49. package/alpha/validationpkg/jsonvalidations/on_init.go +0 -4445
  50. package/alpha/validationpkg/jsonvalidations/on_issue.go +0 -2828
  51. package/alpha/validationpkg/jsonvalidations/on_issue_status.go +0 -1938
  52. package/alpha/validationpkg/jsonvalidations/on_search.go +0 -3356
  53. package/alpha/validationpkg/jsonvalidations/on_status.go +0 -8129
  54. package/alpha/validationpkg/jsonvalidations/on_track.go +0 -1415
  55. package/alpha/validationpkg/jsonvalidations/on_update.go +0 -8700
  56. package/alpha/validationpkg/jsonvalidations/search.go +0 -3585
  57. package/alpha/validationpkg/jsonvalidations/status.go +0 -1073
  58. package/alpha/validationpkg/jsonvalidations/track.go +0 -1073
  59. package/alpha/validationpkg/jsonvalidations/update.go +0 -3012
  60. package/alpha/validationpkg/main-validator.go +0 -196
  61. package/alpha/validationpkg/main-validator_test.go +0 -165
  62. package/alpha/validationpkg/storageutils/api_save_utils.go +0 -83
  63. package/alpha/validationpkg/storageutils/cancel.go +0 -30
  64. package/alpha/validationpkg/storageutils/confirm.go +0 -30
  65. package/alpha/validationpkg/storageutils/index.go +0 -132
  66. package/alpha/validationpkg/storageutils/init.go +0 -30
  67. package/alpha/validationpkg/storageutils/issue.go +0 -30
  68. package/alpha/validationpkg/storageutils/on_cancel.go +0 -30
  69. package/alpha/validationpkg/storageutils/on_confirm.go +0 -30
  70. package/alpha/validationpkg/storageutils/on_init.go +0 -30
  71. package/alpha/validationpkg/storageutils/on_issue.go +0 -30
  72. package/alpha/validationpkg/storageutils/on_issue_status.go +0 -30
  73. package/alpha/validationpkg/storageutils/on_search.go +0 -30
  74. package/alpha/validationpkg/storageutils/on_status.go +0 -30
  75. package/alpha/validationpkg/storageutils/on_track.go +0 -30
  76. package/alpha/validationpkg/storageutils/on_update.go +0 -30
  77. package/alpha/validationpkg/storageutils/save_utils.go +0 -75
  78. package/alpha/validationpkg/storageutils/search.go +0 -30
  79. package/alpha/validationpkg/storageutils/status.go +0 -30
  80. package/alpha/validationpkg/storageutils/track.go +0 -30
  81. package/alpha/validationpkg/storageutils/update.go +0 -30
  82. package/alpha/validationpkg/validationutils/json_normalizer.go +0 -152
  83. package/alpha/validationpkg/validationutils/json_path_utils.go +0 -173
  84. package/alpha/validationpkg/validationutils/storage-interface.go +0 -107
  85. package/alpha/validationpkg/validationutils/test-config.go +0 -69
  86. package/alpha/validationpkg/validationutils/validation_utils.go +0 -429
@@ -1,4868 +0,0 @@
1
- // Code generated by github.com/ONDC-Official/automation-validation-compiler, DO NOT EDIT.
2
-
3
- package jsonvalidations
4
-
5
- import (
6
- "validationpkg/validationutils"
7
- )
8
-
9
- func Issue_Tests(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
10
- totalResults, err := IssueValidations(input)
11
- if err != nil {
12
- return nil, err
13
- }
14
-
15
- if !input.Config.Debug {
16
- for i := range totalResults {
17
- totalResults[i].DebugInfo = nil
18
- }
19
- }
20
-
21
- if input.Config.HideParentErrors {
22
- // Delete results with valid false and no description
23
- filtered := make([]validationutils.ValidationOutput, 0)
24
- for _, r := range totalResults {
25
- if !r.Valid && r.Description == "" {
26
- continue
27
- }
28
- filtered = append(filtered, r)
29
- }
30
- totalResults = filtered
31
- }
32
-
33
- if input.Config.OnlyInvalid {
34
- res := make([]validationutils.ValidationOutput, 0)
35
- for _, r := range totalResults {
36
- if !r.Valid {
37
- res = append(res, r)
38
- }
39
- }
40
-
41
- if len(res) == 0 {
42
- // Find the overall test result
43
- var targetSuccess *validationutils.ValidationOutput
44
- for i := range totalResults {
45
- if totalResults[i].TestName == "IssueValidations" {
46
- targetSuccess = &totalResults[i]
47
- break
48
- }
49
- }
50
-
51
- if targetSuccess == nil {
52
- panic("Critical: Overall test result not found")
53
- }
54
-
55
- return []validationutils.ValidationOutput{*targetSuccess}, nil
56
- }
57
-
58
- return res, nil
59
- }
60
-
61
- return totalResults, nil
62
- }
63
-
64
- var IssueValidations = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
65
-
66
- if input.Config.SkipTestsDict != nil {
67
- if _, skip := input.Config.SkipTestsDict["IssueValidations"]; skip {
68
- return []validationutils.ValidationOutput{}, nil
69
- }
70
- }
71
-
72
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
73
-
74
- subResults := make([]validationutils.ValidationOutput, 0)
75
- valid := true
76
- configureDebugInfo := ""
77
- for _, testObjMap := range scope {
78
- validationutils.UnusedFunction(testObjMap)
79
-
80
- var REQUIRED_CONTEXT_FIELDS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
81
-
82
- if input.Config.SkipTestsDict != nil {
83
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_FIELDS"]; skip {
84
- return []validationutils.ValidationOutput{}, nil
85
- }
86
- }
87
-
88
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
89
-
90
- subResults := make([]validationutils.ValidationOutput, 0)
91
- valid := true
92
- configureDebugInfo := ""
93
- for _, testObjMap := range scope {
94
- validationutils.UnusedFunction(testObjMap)
95
-
96
- var REQUIRED_CONTEXT_DOMAIN = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
97
-
98
- if input.Config.SkipTestsDict != nil {
99
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_DOMAIN"]; skip {
100
- return []validationutils.ValidationOutput{}, nil
101
- }
102
- }
103
-
104
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
105
-
106
- subResults := make([]validationutils.ValidationOutput, 0)
107
- valid := true
108
- configureDebugInfo := ""
109
- for _, testObjMap := range scope {
110
- validationutils.UnusedFunction(testObjMap)
111
-
112
- attr := validationutils.GetJsonPath(testObjMap, "$.context.domain", true)
113
- validationutils.UnusedFunction(attr)
114
-
115
- validate := validationutils.ArePresent(attr)
116
-
117
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_DOMAIN","attr":"$.context.domain","_RETURN_":"attr are present"}`
118
-
119
- if !validate {
120
- result := validationutils.ValidationOutput{
121
- TestName: "REQUIRED_CONTEXT_DOMAIN",
122
- Valid: false,
123
- Code: 30000,
124
- Description: `#### **REQUIRED_CONTEXT_DOMAIN**
125
-
126
- - $.context.domain must be present in the payload`,
127
- DebugInfo: &validationutils.DebugInfo{
128
- FedConfig: configureDebugInfo,
129
- },
130
- }
131
- return []validationutils.ValidationOutput{result}, nil
132
- }
133
-
134
- }
135
-
136
- result := validationutils.ValidationOutput{
137
- TestName: "REQUIRED_CONTEXT_DOMAIN",
138
- Valid: valid,
139
- Code: 0,
140
- DebugInfo: &validationutils.DebugInfo{
141
- FedConfig: configureDebugInfo,
142
- },
143
- }
144
-
145
- if valid {
146
- result.Code = 200
147
- } else {
148
- result.Code = 30000
149
- }
150
-
151
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
152
- results = append(results, result)
153
- results = append(results, subResults...)
154
-
155
- return results, nil
156
- }
157
- var REQUIRED_CONTEXT_COUNTRY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
158
-
159
- if input.Config.SkipTestsDict != nil {
160
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_COUNTRY"]; skip {
161
- return []validationutils.ValidationOutput{}, nil
162
- }
163
- }
164
-
165
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
166
-
167
- subResults := make([]validationutils.ValidationOutput, 0)
168
- valid := true
169
- configureDebugInfo := ""
170
- for _, testObjMap := range scope {
171
- validationutils.UnusedFunction(testObjMap)
172
-
173
- attr := validationutils.StringSliceToInterface([]string{`$.context.location.country.code`})
174
- validationutils.UnusedFunction(attr)
175
-
176
- validate := validationutils.ArePresent(attr)
177
-
178
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_COUNTRY","attr":["$.context.location.country.code"],"_RETURN_":"attr are present"}`
179
-
180
- if !validate {
181
- result := validationutils.ValidationOutput{
182
- TestName: "REQUIRED_CONTEXT_COUNTRY",
183
- Valid: false,
184
- Code: 30000,
185
- Description: `#### **REQUIRED_CONTEXT_COUNTRY**
186
-
187
- - ["$.context.location.country.code"] must be present in the payload`,
188
- DebugInfo: &validationutils.DebugInfo{
189
- FedConfig: configureDebugInfo,
190
- },
191
- }
192
- return []validationutils.ValidationOutput{result}, nil
193
- }
194
-
195
- }
196
-
197
- result := validationutils.ValidationOutput{
198
- TestName: "REQUIRED_CONTEXT_COUNTRY",
199
- Valid: valid,
200
- Code: 0,
201
- DebugInfo: &validationutils.DebugInfo{
202
- FedConfig: configureDebugInfo,
203
- },
204
- }
205
-
206
- if valid {
207
- result.Code = 200
208
- } else {
209
- result.Code = 30000
210
- }
211
-
212
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
213
- results = append(results, result)
214
- results = append(results, subResults...)
215
-
216
- return results, nil
217
- }
218
- var REQUIRED_CONTEXT_CITY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
219
-
220
- if input.Config.SkipTestsDict != nil {
221
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_CITY"]; skip {
222
- return []validationutils.ValidationOutput{}, nil
223
- }
224
- }
225
-
226
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
227
-
228
- subResults := make([]validationutils.ValidationOutput, 0)
229
- valid := true
230
- configureDebugInfo := ""
231
- for _, testObjMap := range scope {
232
- validationutils.UnusedFunction(testObjMap)
233
-
234
- attr := validationutils.StringSliceToInterface([]string{`$.context.location.city.code`})
235
- validationutils.UnusedFunction(attr)
236
-
237
- validate := validationutils.ArePresent(attr)
238
-
239
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_CITY","attr":["$.context.location.city.code"],"_RETURN_":"attr are present"}`
240
-
241
- if !validate {
242
- result := validationutils.ValidationOutput{
243
- TestName: "REQUIRED_CONTEXT_CITY",
244
- Valid: false,
245
- Code: 30000,
246
- Description: `#### **REQUIRED_CONTEXT_CITY**
247
-
248
- - ["$.context.location.city.code"] must be present in the payload`,
249
- DebugInfo: &validationutils.DebugInfo{
250
- FedConfig: configureDebugInfo,
251
- },
252
- }
253
- return []validationutils.ValidationOutput{result}, nil
254
- }
255
-
256
- }
257
-
258
- result := validationutils.ValidationOutput{
259
- TestName: "REQUIRED_CONTEXT_CITY",
260
- Valid: valid,
261
- Code: 0,
262
- DebugInfo: &validationutils.DebugInfo{
263
- FedConfig: configureDebugInfo,
264
- },
265
- }
266
-
267
- if valid {
268
- result.Code = 200
269
- } else {
270
- result.Code = 30000
271
- }
272
-
273
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
274
- results = append(results, result)
275
- results = append(results, subResults...)
276
-
277
- return results, nil
278
- }
279
- var REQUIRED_CONTEXT_TRANSACTION_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
280
-
281
- if input.Config.SkipTestsDict != nil {
282
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_TRANSACTION_ID"]; skip {
283
- return []validationutils.ValidationOutput{}, nil
284
- }
285
- }
286
-
287
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
288
-
289
- subResults := make([]validationutils.ValidationOutput, 0)
290
- valid := true
291
- configureDebugInfo := ""
292
- for _, testObjMap := range scope {
293
- validationutils.UnusedFunction(testObjMap)
294
-
295
- attr := validationutils.GetJsonPath(testObjMap, "$.context.transaction_id", true)
296
- validationutils.UnusedFunction(attr)
297
-
298
- validate := validationutils.ArePresent(attr)
299
-
300
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_TRANSACTION_ID","attr":"$.context.transaction_id","_RETURN_":"attr are present"}`
301
-
302
- if !validate {
303
- result := validationutils.ValidationOutput{
304
- TestName: "REQUIRED_CONTEXT_TRANSACTION_ID",
305
- Valid: false,
306
- Code: 30000,
307
- Description: `#### **REQUIRED_CONTEXT_TRANSACTION_ID**
308
-
309
- - $.context.transaction_id must be present in the payload`,
310
- DebugInfo: &validationutils.DebugInfo{
311
- FedConfig: configureDebugInfo,
312
- },
313
- }
314
- return []validationutils.ValidationOutput{result}, nil
315
- }
316
-
317
- }
318
-
319
- result := validationutils.ValidationOutput{
320
- TestName: "REQUIRED_CONTEXT_TRANSACTION_ID",
321
- Valid: valid,
322
- Code: 0,
323
- DebugInfo: &validationutils.DebugInfo{
324
- FedConfig: configureDebugInfo,
325
- },
326
- }
327
-
328
- if valid {
329
- result.Code = 200
330
- } else {
331
- result.Code = 30000
332
- }
333
-
334
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
335
- results = append(results, result)
336
- results = append(results, subResults...)
337
-
338
- return results, nil
339
- }
340
- var REQUIRED_CONTEXT_MESSAGE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
341
-
342
- if input.Config.SkipTestsDict != nil {
343
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_MESSAGE_ID"]; skip {
344
- return []validationutils.ValidationOutput{}, nil
345
- }
346
- }
347
-
348
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
349
-
350
- subResults := make([]validationutils.ValidationOutput, 0)
351
- valid := true
352
- configureDebugInfo := ""
353
- for _, testObjMap := range scope {
354
- validationutils.UnusedFunction(testObjMap)
355
-
356
- attr := validationutils.GetJsonPath(testObjMap, "$.context.message_id", true)
357
- validationutils.UnusedFunction(attr)
358
-
359
- validate := validationutils.ArePresent(attr)
360
-
361
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_MESSAGE_ID","attr":"$.context.message_id","_RETURN_":"attr are present"}`
362
-
363
- if !validate {
364
- result := validationutils.ValidationOutput{
365
- TestName: "REQUIRED_CONTEXT_MESSAGE_ID",
366
- Valid: false,
367
- Code: 30000,
368
- Description: `#### **REQUIRED_CONTEXT_MESSAGE_ID**
369
-
370
- - $.context.message_id must be present in the payload`,
371
- DebugInfo: &validationutils.DebugInfo{
372
- FedConfig: configureDebugInfo,
373
- },
374
- }
375
- return []validationutils.ValidationOutput{result}, nil
376
- }
377
-
378
- }
379
-
380
- result := validationutils.ValidationOutput{
381
- TestName: "REQUIRED_CONTEXT_MESSAGE_ID",
382
- Valid: valid,
383
- Code: 0,
384
- DebugInfo: &validationutils.DebugInfo{
385
- FedConfig: configureDebugInfo,
386
- },
387
- }
388
-
389
- if valid {
390
- result.Code = 200
391
- } else {
392
- result.Code = 30000
393
- }
394
-
395
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
396
- results = append(results, result)
397
- results = append(results, subResults...)
398
-
399
- return results, nil
400
- }
401
- var REQUIRED_CONTEXT_ACTION = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
402
-
403
- if input.Config.SkipTestsDict != nil {
404
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_ACTION"]; skip {
405
- return []validationutils.ValidationOutput{}, nil
406
- }
407
- }
408
-
409
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
410
-
411
- subResults := make([]validationutils.ValidationOutput, 0)
412
- valid := true
413
- configureDebugInfo := ""
414
- for _, testObjMap := range scope {
415
- validationutils.UnusedFunction(testObjMap)
416
-
417
- attr := validationutils.GetJsonPath(testObjMap, "$.context.action", true)
418
- validationutils.UnusedFunction(attr)
419
-
420
- validate := validationutils.ArePresent(attr)
421
-
422
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_ACTION","attr":"$.context.action","_RETURN_":"attr are present"}`
423
-
424
- if !validate {
425
- result := validationutils.ValidationOutput{
426
- TestName: "REQUIRED_CONTEXT_ACTION",
427
- Valid: false,
428
- Code: 30000,
429
- Description: `#### **REQUIRED_CONTEXT_ACTION**
430
-
431
- - $.context.action must be present in the payload`,
432
- DebugInfo: &validationutils.DebugInfo{
433
- FedConfig: configureDebugInfo,
434
- },
435
- }
436
- return []validationutils.ValidationOutput{result}, nil
437
- }
438
-
439
- }
440
-
441
- result := validationutils.ValidationOutput{
442
- TestName: "REQUIRED_CONTEXT_ACTION",
443
- Valid: valid,
444
- Code: 0,
445
- DebugInfo: &validationutils.DebugInfo{
446
- FedConfig: configureDebugInfo,
447
- },
448
- }
449
-
450
- if valid {
451
- result.Code = 200
452
- } else {
453
- result.Code = 30000
454
- }
455
-
456
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
457
- results = append(results, result)
458
- results = append(results, subResults...)
459
-
460
- return results, nil
461
- }
462
- var REQUIRED_CONTEXT_TIMESTAMP = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
463
-
464
- if input.Config.SkipTestsDict != nil {
465
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_TIMESTAMP"]; skip {
466
- return []validationutils.ValidationOutput{}, nil
467
- }
468
- }
469
-
470
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
471
-
472
- subResults := make([]validationutils.ValidationOutput, 0)
473
- valid := true
474
- configureDebugInfo := ""
475
- for _, testObjMap := range scope {
476
- validationutils.UnusedFunction(testObjMap)
477
-
478
- attr := validationutils.GetJsonPath(testObjMap, "$.context.timestamp", true)
479
- validationutils.UnusedFunction(attr)
480
-
481
- validate := validationutils.ArePresent(attr)
482
-
483
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_TIMESTAMP","attr":"$.context.timestamp","_RETURN_":"attr are present"}`
484
-
485
- if !validate {
486
- result := validationutils.ValidationOutput{
487
- TestName: "REQUIRED_CONTEXT_TIMESTAMP",
488
- Valid: false,
489
- Code: 30000,
490
- Description: `#### **REQUIRED_CONTEXT_TIMESTAMP**
491
-
492
- - $.context.timestamp must be present in the payload`,
493
- DebugInfo: &validationutils.DebugInfo{
494
- FedConfig: configureDebugInfo,
495
- },
496
- }
497
- return []validationutils.ValidationOutput{result}, nil
498
- }
499
-
500
- }
501
-
502
- result := validationutils.ValidationOutput{
503
- TestName: "REQUIRED_CONTEXT_TIMESTAMP",
504
- Valid: valid,
505
- Code: 0,
506
- DebugInfo: &validationutils.DebugInfo{
507
- FedConfig: configureDebugInfo,
508
- },
509
- }
510
-
511
- if valid {
512
- result.Code = 200
513
- } else {
514
- result.Code = 30000
515
- }
516
-
517
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
518
- results = append(results, result)
519
- results = append(results, subResults...)
520
-
521
- return results, nil
522
- }
523
- var REQUIRED_CONTEXT_VERSION = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
524
-
525
- if input.Config.SkipTestsDict != nil {
526
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_VERSION"]; skip {
527
- return []validationutils.ValidationOutput{}, nil
528
- }
529
- }
530
-
531
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
532
-
533
- subResults := make([]validationutils.ValidationOutput, 0)
534
- valid := true
535
- configureDebugInfo := ""
536
- for _, testObjMap := range scope {
537
- validationutils.UnusedFunction(testObjMap)
538
-
539
- attr := validationutils.StringSliceToInterface([]string{`$.context.version`})
540
- validationutils.UnusedFunction(attr)
541
-
542
- validate := validationutils.ArePresent(attr)
543
-
544
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_VERSION","attr":["$.context.version"],"_RETURN_":"attr are present"}`
545
-
546
- if !validate {
547
- result := validationutils.ValidationOutput{
548
- TestName: "REQUIRED_CONTEXT_VERSION",
549
- Valid: false,
550
- Code: 30000,
551
- Description: `#### **REQUIRED_CONTEXT_VERSION**
552
-
553
- - ["$.context.version"] must be present in the payload`,
554
- DebugInfo: &validationutils.DebugInfo{
555
- FedConfig: configureDebugInfo,
556
- },
557
- }
558
- return []validationutils.ValidationOutput{result}, nil
559
- }
560
-
561
- }
562
-
563
- result := validationutils.ValidationOutput{
564
- TestName: "REQUIRED_CONTEXT_VERSION",
565
- Valid: valid,
566
- Code: 0,
567
- DebugInfo: &validationutils.DebugInfo{
568
- FedConfig: configureDebugInfo,
569
- },
570
- }
571
-
572
- if valid {
573
- result.Code = 200
574
- } else {
575
- result.Code = 30000
576
- }
577
-
578
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
579
- results = append(results, result)
580
- results = append(results, subResults...)
581
-
582
- return results, nil
583
- }
584
- var REQUIRED_CONTEXT_BAP_URI = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
585
-
586
- if input.Config.SkipTestsDict != nil {
587
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BAP_URI"]; skip {
588
- return []validationutils.ValidationOutput{}, nil
589
- }
590
- }
591
-
592
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
593
-
594
- subResults := make([]validationutils.ValidationOutput, 0)
595
- valid := true
596
- configureDebugInfo := ""
597
- for _, testObjMap := range scope {
598
- validationutils.UnusedFunction(testObjMap)
599
-
600
- attr := validationutils.GetJsonPath(testObjMap, "$.context.bap_uri", true)
601
- validationutils.UnusedFunction(attr)
602
-
603
- validate := validationutils.ArePresent(attr)
604
-
605
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BAP_URI","attr":"$.context.bap_uri","_RETURN_":"attr are present"}`
606
-
607
- if !validate {
608
- result := validationutils.ValidationOutput{
609
- TestName: "REQUIRED_CONTEXT_BAP_URI",
610
- Valid: false,
611
- Code: 30000,
612
- Description: `#### **REQUIRED_CONTEXT_BAP_URI**
613
-
614
- - $.context.bap_uri must be present in the payload`,
615
- DebugInfo: &validationutils.DebugInfo{
616
- FedConfig: configureDebugInfo,
617
- },
618
- }
619
- return []validationutils.ValidationOutput{result}, nil
620
- }
621
-
622
- }
623
-
624
- result := validationutils.ValidationOutput{
625
- TestName: "REQUIRED_CONTEXT_BAP_URI",
626
- Valid: valid,
627
- Code: 0,
628
- DebugInfo: &validationutils.DebugInfo{
629
- FedConfig: configureDebugInfo,
630
- },
631
- }
632
-
633
- if valid {
634
- result.Code = 200
635
- } else {
636
- result.Code = 30000
637
- }
638
-
639
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
640
- results = append(results, result)
641
- results = append(results, subResults...)
642
-
643
- return results, nil
644
- }
645
- var REQUIRED_CONTEXT_BAP_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
646
-
647
- if input.Config.SkipTestsDict != nil {
648
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BAP_ID"]; skip {
649
- return []validationutils.ValidationOutput{}, nil
650
- }
651
- }
652
-
653
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
654
-
655
- subResults := make([]validationutils.ValidationOutput, 0)
656
- valid := true
657
- configureDebugInfo := ""
658
- for _, testObjMap := range scope {
659
- validationutils.UnusedFunction(testObjMap)
660
-
661
- attr := validationutils.GetJsonPath(testObjMap, "$.context.bap_id", true)
662
- validationutils.UnusedFunction(attr)
663
-
664
- validate := validationutils.ArePresent(attr)
665
-
666
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BAP_ID","attr":"$.context.bap_id","_RETURN_":"attr are present"}`
667
-
668
- if !validate {
669
- result := validationutils.ValidationOutput{
670
- TestName: "REQUIRED_CONTEXT_BAP_ID",
671
- Valid: false,
672
- Code: 30000,
673
- Description: `#### **REQUIRED_CONTEXT_BAP_ID**
674
-
675
- - $.context.bap_id must be present in the payload`,
676
- DebugInfo: &validationutils.DebugInfo{
677
- FedConfig: configureDebugInfo,
678
- },
679
- }
680
- return []validationutils.ValidationOutput{result}, nil
681
- }
682
-
683
- }
684
-
685
- result := validationutils.ValidationOutput{
686
- TestName: "REQUIRED_CONTEXT_BAP_ID",
687
- Valid: valid,
688
- Code: 0,
689
- DebugInfo: &validationutils.DebugInfo{
690
- FedConfig: configureDebugInfo,
691
- },
692
- }
693
-
694
- if valid {
695
- result.Code = 200
696
- } else {
697
- result.Code = 30000
698
- }
699
-
700
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
701
- results = append(results, result)
702
- results = append(results, subResults...)
703
-
704
- return results, nil
705
- }
706
- var REQUIRED_CONTEXT_BPP_URI = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
707
-
708
- if input.Config.SkipTestsDict != nil {
709
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BPP_URI"]; skip {
710
- return []validationutils.ValidationOutput{}, nil
711
- }
712
- }
713
-
714
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
715
-
716
- subResults := make([]validationutils.ValidationOutput, 0)
717
- valid := true
718
- configureDebugInfo := ""
719
- for _, testObjMap := range scope {
720
- validationutils.UnusedFunction(testObjMap)
721
-
722
- attr := validationutils.GetJsonPath(testObjMap, "$.context.bpp_uri", true)
723
- validationutils.UnusedFunction(attr)
724
-
725
- validate := validationutils.ArePresent(attr)
726
-
727
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BPP_URI","attr":"$.context.bpp_uri","_RETURN_":"attr are present"}`
728
-
729
- if !validate {
730
- result := validationutils.ValidationOutput{
731
- TestName: "REQUIRED_CONTEXT_BPP_URI",
732
- Valid: false,
733
- Code: 30000,
734
- Description: `#### **REQUIRED_CONTEXT_BPP_URI**
735
-
736
- - $.context.bpp_uri must be present in the payload`,
737
- DebugInfo: &validationutils.DebugInfo{
738
- FedConfig: configureDebugInfo,
739
- },
740
- }
741
- return []validationutils.ValidationOutput{result}, nil
742
- }
743
-
744
- }
745
-
746
- result := validationutils.ValidationOutput{
747
- TestName: "REQUIRED_CONTEXT_BPP_URI",
748
- Valid: valid,
749
- Code: 0,
750
- DebugInfo: &validationutils.DebugInfo{
751
- FedConfig: configureDebugInfo,
752
- },
753
- }
754
-
755
- if valid {
756
- result.Code = 200
757
- } else {
758
- result.Code = 30000
759
- }
760
-
761
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
762
- results = append(results, result)
763
- results = append(results, subResults...)
764
-
765
- return results, nil
766
- }
767
- var REQUIRED_CONTEXT_BPP_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
768
-
769
- if input.Config.SkipTestsDict != nil {
770
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BPP_ID"]; skip {
771
- return []validationutils.ValidationOutput{}, nil
772
- }
773
- }
774
-
775
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
776
-
777
- subResults := make([]validationutils.ValidationOutput, 0)
778
- valid := true
779
- configureDebugInfo := ""
780
- for _, testObjMap := range scope {
781
- validationutils.UnusedFunction(testObjMap)
782
-
783
- attr := validationutils.GetJsonPath(testObjMap, "$.context.bpp_id", true)
784
- validationutils.UnusedFunction(attr)
785
-
786
- validate := validationutils.ArePresent(attr)
787
-
788
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BPP_ID","attr":"$.context.bpp_id","_RETURN_":"attr are present"}`
789
-
790
- if !validate {
791
- result := validationutils.ValidationOutput{
792
- TestName: "REQUIRED_CONTEXT_BPP_ID",
793
- Valid: false,
794
- Code: 30000,
795
- Description: `#### **REQUIRED_CONTEXT_BPP_ID**
796
-
797
- - $.context.bpp_id must be present in the payload`,
798
- DebugInfo: &validationutils.DebugInfo{
799
- FedConfig: configureDebugInfo,
800
- },
801
- }
802
- return []validationutils.ValidationOutput{result}, nil
803
- }
804
-
805
- }
806
-
807
- result := validationutils.ValidationOutput{
808
- TestName: "REQUIRED_CONTEXT_BPP_ID",
809
- Valid: valid,
810
- Code: 0,
811
- DebugInfo: &validationutils.DebugInfo{
812
- FedConfig: configureDebugInfo,
813
- },
814
- }
815
-
816
- if valid {
817
- result.Code = 200
818
- } else {
819
- result.Code = 30000
820
- }
821
-
822
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
823
- results = append(results, result)
824
- results = append(results, subResults...)
825
-
826
- return results, nil
827
- }
828
- var REQUIRED_CONTEXT_TTL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
829
-
830
- if input.Config.SkipTestsDict != nil {
831
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_TTL"]; skip {
832
- return []validationutils.ValidationOutput{}, nil
833
- }
834
- }
835
-
836
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
837
-
838
- subResults := make([]validationutils.ValidationOutput, 0)
839
- valid := true
840
- configureDebugInfo := ""
841
- for _, testObjMap := range scope {
842
- validationutils.UnusedFunction(testObjMap)
843
-
844
- attr := validationutils.GetJsonPath(testObjMap, "$.context.ttl", true)
845
- validationutils.UnusedFunction(attr)
846
-
847
- validate := validationutils.ArePresent(attr)
848
-
849
- configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_TTL","attr":"$.context.ttl","_RETURN_":"attr are present"}`
850
-
851
- if !validate {
852
- result := validationutils.ValidationOutput{
853
- TestName: "REQUIRED_CONTEXT_TTL",
854
- Valid: false,
855
- Code: 30000,
856
- Description: `#### **REQUIRED_CONTEXT_TTL**
857
-
858
- - $.context.ttl must be present in the payload`,
859
- DebugInfo: &validationutils.DebugInfo{
860
- FedConfig: configureDebugInfo,
861
- },
862
- }
863
- return []validationutils.ValidationOutput{result}, nil
864
- }
865
-
866
- }
867
-
868
- result := validationutils.ValidationOutput{
869
- TestName: "REQUIRED_CONTEXT_TTL",
870
- Valid: valid,
871
- Code: 0,
872
- DebugInfo: &validationutils.DebugInfo{
873
- FedConfig: configureDebugInfo,
874
- },
875
- }
876
-
877
- if valid {
878
- result.Code = 200
879
- } else {
880
- result.Code = 30000
881
- }
882
-
883
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
884
- results = append(results, result)
885
- results = append(results, subResults...)
886
-
887
- return results, nil
888
- }
889
- var VALID_CONTEXT_COUNTRY_CODE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
890
-
891
- if input.Config.SkipTestsDict != nil {
892
- if _, skip := input.Config.SkipTestsDict["VALID_CONTEXT_COUNTRY_CODE"]; skip {
893
- return []validationutils.ValidationOutput{}, nil
894
- }
895
- }
896
-
897
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
898
-
899
- subResults := make([]validationutils.ValidationOutput, 0)
900
- valid := true
901
- configureDebugInfo := ""
902
- for _, testObjMap := range scope {
903
- validationutils.UnusedFunction(testObjMap)
904
-
905
- attr := validationutils.GetJsonPath(testObjMap, "$.context.country", true)
906
- validationutils.UnusedFunction(attr)
907
-
908
- validate := validationutils.ArePresent(attr)
909
-
910
- configureDebugInfo = `{"_NAME_":"VALID_CONTEXT_COUNTRY_CODE","attr":"$.context.country","_RETURN_":"attr are present"}`
911
-
912
- if !validate {
913
- result := validationutils.ValidationOutput{
914
- TestName: "VALID_CONTEXT_COUNTRY_CODE",
915
- Valid: false,
916
- Code: 30000,
917
- Description: `#### **VALID_CONTEXT_COUNTRY_CODE**
918
-
919
- - $.context.country must be present in the payload`,
920
- DebugInfo: &validationutils.DebugInfo{
921
- FedConfig: configureDebugInfo,
922
- },
923
- }
924
- return []validationutils.ValidationOutput{result}, nil
925
- }
926
-
927
- }
928
-
929
- result := validationutils.ValidationOutput{
930
- TestName: "VALID_CONTEXT_COUNTRY_CODE",
931
- Valid: valid,
932
- Code: 0,
933
- DebugInfo: &validationutils.DebugInfo{
934
- FedConfig: configureDebugInfo,
935
- },
936
- }
937
-
938
- if valid {
939
- result.Code = 200
940
- } else {
941
- result.Code = 30000
942
- }
943
-
944
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
945
- results = append(results, result)
946
- results = append(results, subResults...)
947
-
948
- return results, nil
949
- }
950
-
951
- var testFunctions = validationutils.TestFunctionArray{
952
- REQUIRED_CONTEXT_DOMAIN,
953
- REQUIRED_CONTEXT_COUNTRY,
954
- REQUIRED_CONTEXT_CITY,
955
- REQUIRED_CONTEXT_TRANSACTION_ID,
956
- REQUIRED_CONTEXT_MESSAGE_ID,
957
- REQUIRED_CONTEXT_ACTION,
958
- REQUIRED_CONTEXT_TIMESTAMP,
959
- REQUIRED_CONTEXT_VERSION,
960
- REQUIRED_CONTEXT_BAP_URI,
961
- REQUIRED_CONTEXT_BAP_ID,
962
- REQUIRED_CONTEXT_BPP_URI,
963
- REQUIRED_CONTEXT_BPP_ID,
964
- REQUIRED_CONTEXT_TTL,
965
- VALID_CONTEXT_COUNTRY_CODE,
966
- }
967
-
968
- allResults := make([]validationutils.ValidationOutput, 0)
969
-
970
- for _, testFunc := range testFunctions {
971
- results, err := testFunc(input)
972
- if err != nil {
973
- return nil, err
974
- }
975
- allResults = append(allResults, results...)
976
- }
977
-
978
- subResults = allResults
979
- // if all subResults are valid, then valid is true
980
- valid = true
981
- for _, res := range subResults {
982
- if !res.Valid {
983
- valid = false
984
- break
985
- }
986
- }
987
-
988
- configureDebugInfo = `NESTED_TEST_OBJECT`
989
-
990
- }
991
-
992
- result := validationutils.ValidationOutput{
993
- TestName: "REQUIRED_CONTEXT_FIELDS",
994
- Valid: valid,
995
- Code: 0,
996
- DebugInfo: &validationutils.DebugInfo{
997
- FedConfig: configureDebugInfo,
998
- },
999
- }
1000
-
1001
- if valid {
1002
- result.Code = 200
1003
- } else {
1004
- result.Code = 30000
1005
- }
1006
-
1007
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1008
- results = append(results, result)
1009
- results = append(results, subResults...)
1010
-
1011
- return results, nil
1012
- }
1013
- var ISSUE_VALIDATION_VERSION_200 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1014
-
1015
- if input.Config.SkipTestsDict != nil {
1016
- if _, skip := input.Config.SkipTestsDict["ISSUE_VALIDATION_VERSION_200"]; skip {
1017
- return []validationutils.ValidationOutput{}, nil
1018
- }
1019
- }
1020
-
1021
- scope := validationutils.GetJsonPath(input.Payload, "$.message.issue.actions", true)
1022
-
1023
- subResults := make([]validationutils.ValidationOutput, 0)
1024
- valid := true
1025
- configureDebugInfo := ""
1026
- for _, testObjMap := range scope {
1027
- validationutils.UnusedFunction(testObjMap)
1028
-
1029
- var REQUIRED_MESSAGE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1030
-
1031
- if input.Config.SkipTestsDict != nil {
1032
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ID"]; skip {
1033
- return []validationutils.ValidationOutput{}, nil
1034
- }
1035
- }
1036
-
1037
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1038
-
1039
- subResults := make([]validationutils.ValidationOutput, 0)
1040
- valid := true
1041
- configureDebugInfo := ""
1042
- for _, testObjMap := range scope {
1043
- validationutils.UnusedFunction(testObjMap)
1044
-
1045
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.id", true)
1046
- validationutils.UnusedFunction(attr)
1047
-
1048
- validate := validationutils.ArePresent(attr)
1049
-
1050
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ID","attr":"$.message.issue.id","_RETURN_":"attr are present","action":["issue"]}`
1051
-
1052
- if !validate {
1053
- result := validationutils.ValidationOutput{
1054
- TestName: "REQUIRED_MESSAGE_ID",
1055
- Valid: false,
1056
- Code: 30000,
1057
- Description: `#### **REQUIRED_MESSAGE_ID**
1058
-
1059
- - $.message.issue.id must be present in the payload`,
1060
- DebugInfo: &validationutils.DebugInfo{
1061
- FedConfig: configureDebugInfo,
1062
- },
1063
- }
1064
- return []validationutils.ValidationOutput{result}, nil
1065
- }
1066
-
1067
- }
1068
-
1069
- result := validationutils.ValidationOutput{
1070
- TestName: "REQUIRED_MESSAGE_ID",
1071
- Valid: valid,
1072
- Code: 0,
1073
- DebugInfo: &validationutils.DebugInfo{
1074
- FedConfig: configureDebugInfo,
1075
- },
1076
- }
1077
-
1078
- if valid {
1079
- result.Code = 200
1080
- } else {
1081
- result.Code = 30000
1082
- }
1083
-
1084
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1085
- results = append(results, result)
1086
- results = append(results, subResults...)
1087
-
1088
- return results, nil
1089
- }
1090
- var REQUIRED_MESSAGE_STATUS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1091
-
1092
- if input.Config.SkipTestsDict != nil {
1093
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_STATUS"]; skip {
1094
- return []validationutils.ValidationOutput{}, nil
1095
- }
1096
- }
1097
-
1098
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1099
-
1100
- subResults := make([]validationutils.ValidationOutput, 0)
1101
- valid := true
1102
- configureDebugInfo := ""
1103
- for _, testObjMap := range scope {
1104
- validationutils.UnusedFunction(testObjMap)
1105
-
1106
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.status", true)
1107
- validationutils.UnusedFunction(attr)
1108
- enumList := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSED`, `PROCESSING`, `RESOLVED`, `NEED_MORE_INFO`, `INFO_PROVIDED`})
1109
- validationutils.UnusedFunction(enumList)
1110
-
1111
- validate := ((validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))) && (validationutils.AreUnique(attr))
1112
-
1113
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_STATUS","attr":"$.message.issue.status","_RETURN_":"attr are present && attr all in enumList && attr are unique","enumList":["OPEN","CLOSED","PROCESSING","RESOLVED","NEED_MORE_INFO","INFO_PROVIDED"],"action":["issue"]}`
1114
-
1115
- if !validate {
1116
- result := validationutils.ValidationOutput{
1117
- TestName: "REQUIRED_MESSAGE_STATUS",
1118
- Valid: false,
1119
- Code: 30000,
1120
- Description: `#### **REQUIRED_MESSAGE_STATUS**
1121
-
1122
- **All of the following must be true:**
1123
- - **All of the following must be true:**
1124
- - $.message.issue.status must be present in the payload
1125
- - All elements of $.message.issue.status must be in ["OPEN", "CLOSED", "PROCESSING", "RESOLVED", "NEED_MORE_INFO", "INFO_PROVIDED"]
1126
- - All values of $.message.issue.status are unique`,
1127
- DebugInfo: &validationutils.DebugInfo{
1128
- FedConfig: configureDebugInfo,
1129
- },
1130
- }
1131
- return []validationutils.ValidationOutput{result}, nil
1132
- }
1133
-
1134
- }
1135
-
1136
- result := validationutils.ValidationOutput{
1137
- TestName: "REQUIRED_MESSAGE_STATUS",
1138
- Valid: valid,
1139
- Code: 0,
1140
- DebugInfo: &validationutils.DebugInfo{
1141
- FedConfig: configureDebugInfo,
1142
- },
1143
- }
1144
-
1145
- if valid {
1146
- result.Code = 200
1147
- } else {
1148
- result.Code = 30000
1149
- }
1150
-
1151
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1152
- results = append(results, result)
1153
- results = append(results, subResults...)
1154
-
1155
- return results, nil
1156
- }
1157
- var REQUIRED_MESSAGE_LEVEL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1158
-
1159
- if input.Config.SkipTestsDict != nil {
1160
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_LEVEL"]; skip {
1161
- return []validationutils.ValidationOutput{}, nil
1162
- }
1163
- }
1164
-
1165
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1166
-
1167
- subResults := make([]validationutils.ValidationOutput, 0)
1168
- valid := true
1169
- configureDebugInfo := ""
1170
- for _, testObjMap := range scope {
1171
- validationutils.UnusedFunction(testObjMap)
1172
-
1173
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.level", true)
1174
- validationutils.UnusedFunction(attr)
1175
- enumList := validationutils.StringSliceToInterface([]string{`ISSUE`, `GREVIENCE`, `DISPUTE`})
1176
- validationutils.UnusedFunction(enumList)
1177
-
1178
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
1179
-
1180
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_LEVEL","attr":"$.message.issue.level","_RETURN_":"attr are present && attr all in enumList","enumList":["ISSUE","GREVIENCE","DISPUTE"],"action":["issue"]}`
1181
-
1182
- if !validate {
1183
- result := validationutils.ValidationOutput{
1184
- TestName: "REQUIRED_MESSAGE_LEVEL",
1185
- Valid: false,
1186
- Code: 30000,
1187
- Description: `#### **REQUIRED_MESSAGE_LEVEL**
1188
-
1189
- **All of the following must be true:**
1190
- - $.message.issue.level must be present in the payload
1191
- - All elements of $.message.issue.level must be in ["ISSUE", "GREVIENCE", "DISPUTE"]`,
1192
- DebugInfo: &validationutils.DebugInfo{
1193
- FedConfig: configureDebugInfo,
1194
- },
1195
- }
1196
- return []validationutils.ValidationOutput{result}, nil
1197
- }
1198
-
1199
- }
1200
-
1201
- result := validationutils.ValidationOutput{
1202
- TestName: "REQUIRED_MESSAGE_LEVEL",
1203
- Valid: valid,
1204
- Code: 0,
1205
- DebugInfo: &validationutils.DebugInfo{
1206
- FedConfig: configureDebugInfo,
1207
- },
1208
- }
1209
-
1210
- if valid {
1211
- result.Code = 200
1212
- } else {
1213
- result.Code = 30000
1214
- }
1215
-
1216
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1217
- results = append(results, result)
1218
- results = append(results, subResults...)
1219
-
1220
- return results, nil
1221
- }
1222
- var REQUIRED_MESSAGE_CREATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1223
-
1224
- if input.Config.SkipTestsDict != nil {
1225
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CREATED_AT"]; skip {
1226
- return []validationutils.ValidationOutput{}, nil
1227
- }
1228
- }
1229
-
1230
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1231
-
1232
- subResults := make([]validationutils.ValidationOutput, 0)
1233
- valid := true
1234
- configureDebugInfo := ""
1235
- for _, testObjMap := range scope {
1236
- validationutils.UnusedFunction(testObjMap)
1237
-
1238
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.created_at", true)
1239
- validationutils.UnusedFunction(attr)
1240
-
1241
- validate := validationutils.ArePresent(attr)
1242
-
1243
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CREATED_AT","attr":"$.message.issue.created_at","_RETURN_":"attr are present","action":["issue"]}`
1244
-
1245
- if !validate {
1246
- result := validationutils.ValidationOutput{
1247
- TestName: "REQUIRED_MESSAGE_CREATED_AT",
1248
- Valid: false,
1249
- Code: 30000,
1250
- Description: `#### **REQUIRED_MESSAGE_CREATED_AT**
1251
-
1252
- - $.message.issue.created_at must be present in the payload`,
1253
- DebugInfo: &validationutils.DebugInfo{
1254
- FedConfig: configureDebugInfo,
1255
- },
1256
- }
1257
- return []validationutils.ValidationOutput{result}, nil
1258
- }
1259
-
1260
- }
1261
-
1262
- result := validationutils.ValidationOutput{
1263
- TestName: "REQUIRED_MESSAGE_CREATED_AT",
1264
- Valid: valid,
1265
- Code: 0,
1266
- DebugInfo: &validationutils.DebugInfo{
1267
- FedConfig: configureDebugInfo,
1268
- },
1269
- }
1270
-
1271
- if valid {
1272
- result.Code = 200
1273
- } else {
1274
- result.Code = 30000
1275
- }
1276
-
1277
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1278
- results = append(results, result)
1279
- results = append(results, subResults...)
1280
-
1281
- return results, nil
1282
- }
1283
- var REQUIRED_MESSAGE_UPDATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1284
-
1285
- if input.Config.SkipTestsDict != nil {
1286
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_UPDATED_AT"]; skip {
1287
- return []validationutils.ValidationOutput{}, nil
1288
- }
1289
- }
1290
-
1291
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1292
-
1293
- subResults := make([]validationutils.ValidationOutput, 0)
1294
- valid := true
1295
- configureDebugInfo := ""
1296
- for _, testObjMap := range scope {
1297
- validationutils.UnusedFunction(testObjMap)
1298
-
1299
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.updated_at", true)
1300
- validationutils.UnusedFunction(attr)
1301
-
1302
- validate := validationutils.ArePresent(attr)
1303
-
1304
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_UPDATED_AT","attr":"$.message.issue.updated_at","_RETURN_":"attr are present","action":["issue"]}`
1305
-
1306
- if !validate {
1307
- result := validationutils.ValidationOutput{
1308
- TestName: "REQUIRED_MESSAGE_UPDATED_AT",
1309
- Valid: false,
1310
- Code: 30000,
1311
- Description: `#### **REQUIRED_MESSAGE_UPDATED_AT**
1312
-
1313
- - $.message.issue.updated_at must be present in the payload`,
1314
- DebugInfo: &validationutils.DebugInfo{
1315
- FedConfig: configureDebugInfo,
1316
- },
1317
- }
1318
- return []validationutils.ValidationOutput{result}, nil
1319
- }
1320
-
1321
- }
1322
-
1323
- result := validationutils.ValidationOutput{
1324
- TestName: "REQUIRED_MESSAGE_UPDATED_AT",
1325
- Valid: valid,
1326
- Code: 0,
1327
- DebugInfo: &validationutils.DebugInfo{
1328
- FedConfig: configureDebugInfo,
1329
- },
1330
- }
1331
-
1332
- if valid {
1333
- result.Code = 200
1334
- } else {
1335
- result.Code = 30000
1336
- }
1337
-
1338
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1339
- results = append(results, result)
1340
- results = append(results, subResults...)
1341
-
1342
- return results, nil
1343
- }
1344
- var REQUIRED_MESSAGE_REF_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1345
-
1346
- if input.Config.SkipTestsDict != nil {
1347
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_REF_ID"]; skip {
1348
- return []validationutils.ValidationOutput{}, nil
1349
- }
1350
- }
1351
-
1352
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1353
-
1354
- subResults := make([]validationutils.ValidationOutput, 0)
1355
- valid := true
1356
- configureDebugInfo := ""
1357
- for _, testObjMap := range scope {
1358
- validationutils.UnusedFunction(testObjMap)
1359
-
1360
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.refs[*].ref_id", true)
1361
- validationutils.UnusedFunction(attr)
1362
-
1363
- validate := validationutils.ArePresent(attr)
1364
-
1365
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_REF_ID","attr":"$.message.issue.refs[*].ref_id","_RETURN_":"attr are present","action":["issue"]}`
1366
-
1367
- if !validate {
1368
- result := validationutils.ValidationOutput{
1369
- TestName: "REQUIRED_MESSAGE_REF_ID",
1370
- Valid: false,
1371
- Code: 30000,
1372
- Description: `#### **REQUIRED_MESSAGE_REF_ID**
1373
-
1374
- - $.message.issue.refs[*].ref_id must be present in the payload`,
1375
- DebugInfo: &validationutils.DebugInfo{
1376
- FedConfig: configureDebugInfo,
1377
- },
1378
- }
1379
- return []validationutils.ValidationOutput{result}, nil
1380
- }
1381
-
1382
- }
1383
-
1384
- result := validationutils.ValidationOutput{
1385
- TestName: "REQUIRED_MESSAGE_REF_ID",
1386
- Valid: valid,
1387
- Code: 0,
1388
- DebugInfo: &validationutils.DebugInfo{
1389
- FedConfig: configureDebugInfo,
1390
- },
1391
- }
1392
-
1393
- if valid {
1394
- result.Code = 200
1395
- } else {
1396
- result.Code = 30000
1397
- }
1398
-
1399
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1400
- results = append(results, result)
1401
- results = append(results, subResults...)
1402
-
1403
- return results, nil
1404
- }
1405
- var REQUIRED_MESSAGE_REF_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1406
-
1407
- if input.Config.SkipTestsDict != nil {
1408
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_REF_TYPE"]; skip {
1409
- return []validationutils.ValidationOutput{}, nil
1410
- }
1411
- }
1412
-
1413
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1414
-
1415
- subResults := make([]validationutils.ValidationOutput, 0)
1416
- valid := true
1417
- configureDebugInfo := ""
1418
- for _, testObjMap := range scope {
1419
- validationutils.UnusedFunction(testObjMap)
1420
-
1421
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.refs[*].ref_type", true)
1422
- validationutils.UnusedFunction(attr)
1423
- enumList := validationutils.StringSliceToInterface([]string{`ORDER`, `ITEM`, `FULFILLMENT`, `TRANSACTION_ID`, `MESSAGE_ID`, `PROVIDER`, `COMPLAINT`, `ACTION`, `PAYMENT`, `CUSTOMER`, `AGENT`})
1424
- validationutils.UnusedFunction(enumList)
1425
-
1426
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
1427
-
1428
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_REF_TYPE","attr":"$.message.issue.refs[*].ref_type","_RETURN_":"attr are present && attr all in enumList","enumList":["ORDER","ITEM","FULFILLMENT","TRANSACTION_ID","MESSAGE_ID","PROVIDER","COMPLAINT","ACTION","PAYMENT","CUSTOMER","AGENT"],"action":["issue"]}`
1429
-
1430
- if !validate {
1431
- result := validationutils.ValidationOutput{
1432
- TestName: "REQUIRED_MESSAGE_REF_TYPE",
1433
- Valid: false,
1434
- Code: 30000,
1435
- Description: `#### **REQUIRED_MESSAGE_REF_TYPE**
1436
-
1437
- **All of the following must be true:**
1438
- - $.message.issue.refs[*].ref_type must be present in the payload
1439
- - All elements of $.message.issue.refs[*].ref_type must be in ["ORDER", "ITEM", "FULFILLMENT", "TRANSACTION_ID", "MESSAGE_ID", "PROVIDER", "COMPLAINT", "ACTION", "PAYMENT", "CUSTOMER", "AGENT"]`,
1440
- DebugInfo: &validationutils.DebugInfo{
1441
- FedConfig: configureDebugInfo,
1442
- },
1443
- }
1444
- return []validationutils.ValidationOutput{result}, nil
1445
- }
1446
-
1447
- }
1448
-
1449
- result := validationutils.ValidationOutput{
1450
- TestName: "REQUIRED_MESSAGE_REF_TYPE",
1451
- Valid: valid,
1452
- Code: 0,
1453
- DebugInfo: &validationutils.DebugInfo{
1454
- FedConfig: configureDebugInfo,
1455
- },
1456
- }
1457
-
1458
- if valid {
1459
- result.Code = 200
1460
- } else {
1461
- result.Code = 30000
1462
- }
1463
-
1464
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1465
- results = append(results, result)
1466
- results = append(results, subResults...)
1467
-
1468
- return results, nil
1469
- }
1470
- var REQUIRED_MESSAGE_ID_10 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1471
-
1472
- if input.Config.SkipTestsDict != nil {
1473
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ID_10"]; skip {
1474
- return []validationutils.ValidationOutput{}, nil
1475
- }
1476
- }
1477
-
1478
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1479
-
1480
- subResults := make([]validationutils.ValidationOutput, 0)
1481
- valid := true
1482
- configureDebugInfo := ""
1483
- for _, testObjMap := range scope {
1484
- validationutils.UnusedFunction(testObjMap)
1485
-
1486
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].id", true)
1487
- validationutils.UnusedFunction(attr)
1488
-
1489
- validate := validationutils.ArePresent(attr)
1490
-
1491
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ID_10","attr":"$.message.issue.actors[*].id","_RETURN_":"attr are present","action":["issue"]}`
1492
-
1493
- if !validate {
1494
- result := validationutils.ValidationOutput{
1495
- TestName: "REQUIRED_MESSAGE_ID_10",
1496
- Valid: false,
1497
- Code: 30000,
1498
- Description: `#### **REQUIRED_MESSAGE_ID_10**
1499
-
1500
- - $.message.issue.actors[*].id must be present in the payload`,
1501
- DebugInfo: &validationutils.DebugInfo{
1502
- FedConfig: configureDebugInfo,
1503
- },
1504
- }
1505
- return []validationutils.ValidationOutput{result}, nil
1506
- }
1507
-
1508
- }
1509
-
1510
- result := validationutils.ValidationOutput{
1511
- TestName: "REQUIRED_MESSAGE_ID_10",
1512
- Valid: valid,
1513
- Code: 0,
1514
- DebugInfo: &validationutils.DebugInfo{
1515
- FedConfig: configureDebugInfo,
1516
- },
1517
- }
1518
-
1519
- if valid {
1520
- result.Code = 200
1521
- } else {
1522
- result.Code = 30000
1523
- }
1524
-
1525
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1526
- results = append(results, result)
1527
- results = append(results, subResults...)
1528
-
1529
- return results, nil
1530
- }
1531
- var REQUIRED_MESSAGE_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1532
-
1533
- if input.Config.SkipTestsDict != nil {
1534
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_TYPE"]; skip {
1535
- return []validationutils.ValidationOutput{}, nil
1536
- }
1537
- }
1538
-
1539
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1540
-
1541
- subResults := make([]validationutils.ValidationOutput, 0)
1542
- valid := true
1543
- configureDebugInfo := ""
1544
- for _, testObjMap := range scope {
1545
- validationutils.UnusedFunction(testObjMap)
1546
-
1547
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].type", true)
1548
- validationutils.UnusedFunction(attr)
1549
- enumList := validationutils.StringSliceToInterface([]string{`INTERFACING_NP`, `COUNTERPARTY_NP`, `CASCADED_NP`, `PROVIDER`, `AGENT`, `CUSTOMER`, `INTERFACING_NP_GRO`, `COUNTERPARTY_NP_GRO`, `CASCADED_NP_GRO`, `CONSUMER`})
1550
- validationutils.UnusedFunction(enumList)
1551
-
1552
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
1553
-
1554
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_TYPE","attr":"$.message.issue.actors[*].type","_RETURN_":"attr are present && attr all in enumList","enumList":["INTERFACING_NP","COUNTERPARTY_NP","CASCADED_NP","PROVIDER","AGENT","CUSTOMER","INTERFACING_NP_GRO","COUNTERPARTY_NP_GRO","CASCADED_NP_GRO","CONSUMER"],"action":["issue"]}`
1555
-
1556
- if !validate {
1557
- result := validationutils.ValidationOutput{
1558
- TestName: "REQUIRED_MESSAGE_TYPE",
1559
- Valid: false,
1560
- Code: 30000,
1561
- Description: `#### **REQUIRED_MESSAGE_TYPE**
1562
-
1563
- **All of the following must be true:**
1564
- - $.message.issue.actors[*].type must be present in the payload
1565
- - All elements of $.message.issue.actors[*].type must be in ["INTERFACING_NP", "COUNTERPARTY_NP", "CASCADED_NP", "PROVIDER", "AGENT", "CUSTOMER", "INTERFACING_NP_GRO", "COUNTERPARTY_NP_GRO", "CASCADED_NP_GRO", "CONSUMER"]`,
1566
- DebugInfo: &validationutils.DebugInfo{
1567
- FedConfig: configureDebugInfo,
1568
- },
1569
- }
1570
- return []validationutils.ValidationOutput{result}, nil
1571
- }
1572
-
1573
- }
1574
-
1575
- result := validationutils.ValidationOutput{
1576
- TestName: "REQUIRED_MESSAGE_TYPE",
1577
- Valid: valid,
1578
- Code: 0,
1579
- DebugInfo: &validationutils.DebugInfo{
1580
- FedConfig: configureDebugInfo,
1581
- },
1582
- }
1583
-
1584
- if valid {
1585
- result.Code = 200
1586
- } else {
1587
- result.Code = 30000
1588
- }
1589
-
1590
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1591
- results = append(results, result)
1592
- results = append(results, subResults...)
1593
-
1594
- return results, nil
1595
- }
1596
- var REQUIRED_MESSAGE_NAME = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1597
-
1598
- if input.Config.SkipTestsDict != nil {
1599
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_NAME"]; skip {
1600
- return []validationutils.ValidationOutput{}, nil
1601
- }
1602
- }
1603
-
1604
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1605
-
1606
- subResults := make([]validationutils.ValidationOutput, 0)
1607
- valid := true
1608
- configureDebugInfo := ""
1609
- for _, testObjMap := range scope {
1610
- validationutils.UnusedFunction(testObjMap)
1611
-
1612
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.person.name", true)
1613
- validationutils.UnusedFunction(attr)
1614
-
1615
- validate := validationutils.ArePresent(attr)
1616
-
1617
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_NAME","attr":"$.message.issue.actors[*].info.person.name","_RETURN_":"attr are present","action":["issue"]}`
1618
-
1619
- if !validate {
1620
- result := validationutils.ValidationOutput{
1621
- TestName: "REQUIRED_MESSAGE_NAME",
1622
- Valid: false,
1623
- Code: 30000,
1624
- Description: `#### **REQUIRED_MESSAGE_NAME**
1625
-
1626
- - $.message.issue.actors[*].info.person.name must be present in the payload`,
1627
- DebugInfo: &validationutils.DebugInfo{
1628
- FedConfig: configureDebugInfo,
1629
- },
1630
- }
1631
- return []validationutils.ValidationOutput{result}, nil
1632
- }
1633
-
1634
- }
1635
-
1636
- result := validationutils.ValidationOutput{
1637
- TestName: "REQUIRED_MESSAGE_NAME",
1638
- Valid: valid,
1639
- Code: 0,
1640
- DebugInfo: &validationutils.DebugInfo{
1641
- FedConfig: configureDebugInfo,
1642
- },
1643
- }
1644
-
1645
- if valid {
1646
- result.Code = 200
1647
- } else {
1648
- result.Code = 30000
1649
- }
1650
-
1651
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1652
- results = append(results, result)
1653
- results = append(results, subResults...)
1654
-
1655
- return results, nil
1656
- }
1657
- var REQUIRED_MESSAGE_NAME_13 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1658
-
1659
- if input.Config.SkipTestsDict != nil {
1660
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_NAME_13"]; skip {
1661
- return []validationutils.ValidationOutput{}, nil
1662
- }
1663
- }
1664
-
1665
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1666
-
1667
- subResults := make([]validationutils.ValidationOutput, 0)
1668
- valid := true
1669
- configureDebugInfo := ""
1670
- for _, testObjMap := range scope {
1671
- validationutils.UnusedFunction(testObjMap)
1672
-
1673
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.person.name", true)
1674
- validationutils.UnusedFunction(attr)
1675
-
1676
- validate := validationutils.ArePresent(attr)
1677
-
1678
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_NAME_13","attr":"$.message.issue.actors[*].info.person.name","_RETURN_":"attr are present","action":["issue"]}`
1679
-
1680
- if !validate {
1681
- result := validationutils.ValidationOutput{
1682
- TestName: "REQUIRED_MESSAGE_NAME_13",
1683
- Valid: false,
1684
- Code: 30000,
1685
- Description: `#### **REQUIRED_MESSAGE_NAME_13**
1686
-
1687
- - $.message.issue.actors[*].info.person.name must be present in the payload`,
1688
- DebugInfo: &validationutils.DebugInfo{
1689
- FedConfig: configureDebugInfo,
1690
- },
1691
- }
1692
- return []validationutils.ValidationOutput{result}, nil
1693
- }
1694
-
1695
- }
1696
-
1697
- result := validationutils.ValidationOutput{
1698
- TestName: "REQUIRED_MESSAGE_NAME_13",
1699
- Valid: valid,
1700
- Code: 0,
1701
- DebugInfo: &validationutils.DebugInfo{
1702
- FedConfig: configureDebugInfo,
1703
- },
1704
- }
1705
-
1706
- if valid {
1707
- result.Code = 200
1708
- } else {
1709
- result.Code = 30000
1710
- }
1711
-
1712
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1713
- results = append(results, result)
1714
- results = append(results, subResults...)
1715
-
1716
- return results, nil
1717
- }
1718
- var REQUIRED_MESSAGE_PHONE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1719
-
1720
- if input.Config.SkipTestsDict != nil {
1721
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_PHONE"]; skip {
1722
- return []validationutils.ValidationOutput{}, nil
1723
- }
1724
- }
1725
-
1726
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1727
-
1728
- subResults := make([]validationutils.ValidationOutput, 0)
1729
- valid := true
1730
- configureDebugInfo := ""
1731
- for _, testObjMap := range scope {
1732
- validationutils.UnusedFunction(testObjMap)
1733
-
1734
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.contact.phone", true)
1735
- validationutils.UnusedFunction(attr)
1736
-
1737
- validate := validationutils.ArePresent(attr)
1738
-
1739
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_PHONE","attr":"$.message.issue.actors[*].info.contact.phone","_RETURN_":"attr are present","action":["issue"]}`
1740
-
1741
- if !validate {
1742
- result := validationutils.ValidationOutput{
1743
- TestName: "REQUIRED_MESSAGE_PHONE",
1744
- Valid: false,
1745
- Code: 30000,
1746
- Description: `#### **REQUIRED_MESSAGE_PHONE**
1747
-
1748
- - $.message.issue.actors[*].info.contact.phone must be present in the payload`,
1749
- DebugInfo: &validationutils.DebugInfo{
1750
- FedConfig: configureDebugInfo,
1751
- },
1752
- }
1753
- return []validationutils.ValidationOutput{result}, nil
1754
- }
1755
-
1756
- }
1757
-
1758
- result := validationutils.ValidationOutput{
1759
- TestName: "REQUIRED_MESSAGE_PHONE",
1760
- Valid: valid,
1761
- Code: 0,
1762
- DebugInfo: &validationutils.DebugInfo{
1763
- FedConfig: configureDebugInfo,
1764
- },
1765
- }
1766
-
1767
- if valid {
1768
- result.Code = 200
1769
- } else {
1770
- result.Code = 30000
1771
- }
1772
-
1773
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1774
- results = append(results, result)
1775
- results = append(results, subResults...)
1776
-
1777
- return results, nil
1778
- }
1779
- var REQUIRED_MESSAGE_EMAIL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1780
-
1781
- if input.Config.SkipTestsDict != nil {
1782
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_EMAIL"]; skip {
1783
- return []validationutils.ValidationOutput{}, nil
1784
- }
1785
- }
1786
-
1787
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1788
-
1789
- subResults := make([]validationutils.ValidationOutput, 0)
1790
- valid := true
1791
- configureDebugInfo := ""
1792
- for _, testObjMap := range scope {
1793
- validationutils.UnusedFunction(testObjMap)
1794
-
1795
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.contact.email", true)
1796
- validationutils.UnusedFunction(attr)
1797
-
1798
- validate := validationutils.ArePresent(attr)
1799
-
1800
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_EMAIL","attr":"$.message.issue.actors[*].info.contact.email","_RETURN_":"attr are present","action":["issue"]}`
1801
-
1802
- if !validate {
1803
- result := validationutils.ValidationOutput{
1804
- TestName: "REQUIRED_MESSAGE_EMAIL",
1805
- Valid: false,
1806
- Code: 30000,
1807
- Description: `#### **REQUIRED_MESSAGE_EMAIL**
1808
-
1809
- - $.message.issue.actors[*].info.contact.email must be present in the payload`,
1810
- DebugInfo: &validationutils.DebugInfo{
1811
- FedConfig: configureDebugInfo,
1812
- },
1813
- }
1814
- return []validationutils.ValidationOutput{result}, nil
1815
- }
1816
-
1817
- }
1818
-
1819
- result := validationutils.ValidationOutput{
1820
- TestName: "REQUIRED_MESSAGE_EMAIL",
1821
- Valid: valid,
1822
- Code: 0,
1823
- DebugInfo: &validationutils.DebugInfo{
1824
- FedConfig: configureDebugInfo,
1825
- },
1826
- }
1827
-
1828
- if valid {
1829
- result.Code = 200
1830
- } else {
1831
- result.Code = 30000
1832
- }
1833
-
1834
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1835
- results = append(results, result)
1836
- results = append(results, subResults...)
1837
-
1838
- return results, nil
1839
- }
1840
- var REQUIRED_MESSAGE_SOURCE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1841
-
1842
- if input.Config.SkipTestsDict != nil {
1843
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_SOURCE_ID"]; skip {
1844
- return []validationutils.ValidationOutput{}, nil
1845
- }
1846
- }
1847
-
1848
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1849
-
1850
- subResults := make([]validationutils.ValidationOutput, 0)
1851
- valid := true
1852
- configureDebugInfo := ""
1853
- for _, testObjMap := range scope {
1854
- validationutils.UnusedFunction(testObjMap)
1855
-
1856
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.source_id", true)
1857
- validationutils.UnusedFunction(attr)
1858
-
1859
- validate := validationutils.ArePresent(attr)
1860
-
1861
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_SOURCE_ID","attr":"$.message.issue.source_id","_RETURN_":"attr are present","action":["issue"]}`
1862
-
1863
- if !validate {
1864
- result := validationutils.ValidationOutput{
1865
- TestName: "REQUIRED_MESSAGE_SOURCE_ID",
1866
- Valid: false,
1867
- Code: 30000,
1868
- Description: `#### **REQUIRED_MESSAGE_SOURCE_ID**
1869
-
1870
- - $.message.issue.source_id must be present in the payload`,
1871
- DebugInfo: &validationutils.DebugInfo{
1872
- FedConfig: configureDebugInfo,
1873
- },
1874
- }
1875
- return []validationutils.ValidationOutput{result}, nil
1876
- }
1877
-
1878
- }
1879
-
1880
- result := validationutils.ValidationOutput{
1881
- TestName: "REQUIRED_MESSAGE_SOURCE_ID",
1882
- Valid: valid,
1883
- Code: 0,
1884
- DebugInfo: &validationutils.DebugInfo{
1885
- FedConfig: configureDebugInfo,
1886
- },
1887
- }
1888
-
1889
- if valid {
1890
- result.Code = 200
1891
- } else {
1892
- result.Code = 30000
1893
- }
1894
-
1895
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1896
- results = append(results, result)
1897
- results = append(results, subResults...)
1898
-
1899
- return results, nil
1900
- }
1901
- var REQUIRED_MESSAGE_CODE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1902
-
1903
- if input.Config.SkipTestsDict != nil {
1904
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CODE"]; skip {
1905
- return []validationutils.ValidationOutput{}, nil
1906
- }
1907
- }
1908
-
1909
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1910
-
1911
- subResults := make([]validationutils.ValidationOutput, 0)
1912
- valid := true
1913
- configureDebugInfo := ""
1914
- for _, testObjMap := range scope {
1915
- validationutils.UnusedFunction(testObjMap)
1916
-
1917
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.descriptor.code", true)
1918
- validationutils.UnusedFunction(attr)
1919
-
1920
- validate := validationutils.ArePresent(attr)
1921
-
1922
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CODE","attr":"$.message.issue.descriptor.code","_RETURN_":"attr are present","action":["issue"]}`
1923
-
1924
- if !validate {
1925
- result := validationutils.ValidationOutput{
1926
- TestName: "REQUIRED_MESSAGE_CODE",
1927
- Valid: false,
1928
- Code: 30000,
1929
- Description: `#### **REQUIRED_MESSAGE_CODE**
1930
-
1931
- - $.message.issue.descriptor.code must be present in the payload`,
1932
- DebugInfo: &validationutils.DebugInfo{
1933
- FedConfig: configureDebugInfo,
1934
- },
1935
- }
1936
- return []validationutils.ValidationOutput{result}, nil
1937
- }
1938
-
1939
- }
1940
-
1941
- result := validationutils.ValidationOutput{
1942
- TestName: "REQUIRED_MESSAGE_CODE",
1943
- Valid: valid,
1944
- Code: 0,
1945
- DebugInfo: &validationutils.DebugInfo{
1946
- FedConfig: configureDebugInfo,
1947
- },
1948
- }
1949
-
1950
- if valid {
1951
- result.Code = 200
1952
- } else {
1953
- result.Code = 30000
1954
- }
1955
-
1956
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1957
- results = append(results, result)
1958
- results = append(results, subResults...)
1959
-
1960
- return results, nil
1961
- }
1962
- var REQUIRED_MESSAGE_SHORT_DESC = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1963
-
1964
- if input.Config.SkipTestsDict != nil {
1965
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_SHORT_DESC"]; skip {
1966
- return []validationutils.ValidationOutput{}, nil
1967
- }
1968
- }
1969
-
1970
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1971
-
1972
- subResults := make([]validationutils.ValidationOutput, 0)
1973
- valid := true
1974
- configureDebugInfo := ""
1975
- for _, testObjMap := range scope {
1976
- validationutils.UnusedFunction(testObjMap)
1977
-
1978
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.descriptor.short_desc", true)
1979
- validationutils.UnusedFunction(attr)
1980
-
1981
- validate := validationutils.ArePresent(attr)
1982
-
1983
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_SHORT_DESC","attr":"$.message.issue.descriptor.short_desc","_RETURN_":"attr are present","action":["issue"]}`
1984
-
1985
- if !validate {
1986
- result := validationutils.ValidationOutput{
1987
- TestName: "REQUIRED_MESSAGE_SHORT_DESC",
1988
- Valid: false,
1989
- Code: 30000,
1990
- Description: `#### **REQUIRED_MESSAGE_SHORT_DESC**
1991
-
1992
- - $.message.issue.descriptor.short_desc must be present in the payload`,
1993
- DebugInfo: &validationutils.DebugInfo{
1994
- FedConfig: configureDebugInfo,
1995
- },
1996
- }
1997
- return []validationutils.ValidationOutput{result}, nil
1998
- }
1999
-
2000
- }
2001
-
2002
- result := validationutils.ValidationOutput{
2003
- TestName: "REQUIRED_MESSAGE_SHORT_DESC",
2004
- Valid: valid,
2005
- Code: 0,
2006
- DebugInfo: &validationutils.DebugInfo{
2007
- FedConfig: configureDebugInfo,
2008
- },
2009
- }
2010
-
2011
- if valid {
2012
- result.Code = 200
2013
- } else {
2014
- result.Code = 30000
2015
- }
2016
-
2017
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2018
- results = append(results, result)
2019
- results = append(results, subResults...)
2020
-
2021
- return results, nil
2022
- }
2023
- var REQUIRED_MESSAGE_LONG_DESC = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2024
-
2025
- if input.Config.SkipTestsDict != nil {
2026
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_LONG_DESC"]; skip {
2027
- return []validationutils.ValidationOutput{}, nil
2028
- }
2029
- }
2030
-
2031
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2032
-
2033
- subResults := make([]validationutils.ValidationOutput, 0)
2034
- valid := true
2035
- configureDebugInfo := ""
2036
- for _, testObjMap := range scope {
2037
- validationutils.UnusedFunction(testObjMap)
2038
-
2039
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.descriptor.long_desc", true)
2040
- validationutils.UnusedFunction(attr)
2041
-
2042
- validate := validationutils.ArePresent(attr)
2043
-
2044
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_LONG_DESC","attr":"$.message.issue.descriptor.long_desc","_RETURN_":"attr are present","action":["issue"]}`
2045
-
2046
- if !validate {
2047
- result := validationutils.ValidationOutput{
2048
- TestName: "REQUIRED_MESSAGE_LONG_DESC",
2049
- Valid: false,
2050
- Code: 30000,
2051
- Description: `#### **REQUIRED_MESSAGE_LONG_DESC**
2052
-
2053
- - $.message.issue.descriptor.long_desc must be present in the payload`,
2054
- DebugInfo: &validationutils.DebugInfo{
2055
- FedConfig: configureDebugInfo,
2056
- },
2057
- }
2058
- return []validationutils.ValidationOutput{result}, nil
2059
- }
2060
-
2061
- }
2062
-
2063
- result := validationutils.ValidationOutput{
2064
- TestName: "REQUIRED_MESSAGE_LONG_DESC",
2065
- Valid: valid,
2066
- Code: 0,
2067
- DebugInfo: &validationutils.DebugInfo{
2068
- FedConfig: configureDebugInfo,
2069
- },
2070
- }
2071
-
2072
- if valid {
2073
- result.Code = 200
2074
- } else {
2075
- result.Code = 30000
2076
- }
2077
-
2078
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2079
- results = append(results, result)
2080
- results = append(results, subResults...)
2081
-
2082
- return results, nil
2083
- }
2084
- var REQUIRED_MESSAGE_URL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2085
-
2086
- if input.Config.SkipTestsDict != nil {
2087
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_URL"]; skip {
2088
- return []validationutils.ValidationOutput{}, nil
2089
- }
2090
- }
2091
-
2092
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2093
-
2094
- subResults := make([]validationutils.ValidationOutput, 0)
2095
- valid := true
2096
- configureDebugInfo := ""
2097
- for _, testObjMap := range scope {
2098
- validationutils.UnusedFunction(testObjMap)
2099
-
2100
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.descriptor.additional_desc.url", true)
2101
- validationutils.UnusedFunction(attr)
2102
-
2103
- validate := validationutils.ArePresent(attr)
2104
-
2105
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_URL","attr":"$.message.issue.descriptor.additional_desc.url","_RETURN_":"attr are present","action":["issue"]}`
2106
-
2107
- if !validate {
2108
- result := validationutils.ValidationOutput{
2109
- TestName: "REQUIRED_MESSAGE_URL",
2110
- Valid: false,
2111
- Code: 30000,
2112
- Description: `#### **REQUIRED_MESSAGE_URL**
2113
-
2114
- - $.message.issue.descriptor.additional_desc.url must be present in the payload`,
2115
- DebugInfo: &validationutils.DebugInfo{
2116
- FedConfig: configureDebugInfo,
2117
- },
2118
- }
2119
- return []validationutils.ValidationOutput{result}, nil
2120
- }
2121
-
2122
- }
2123
-
2124
- result := validationutils.ValidationOutput{
2125
- TestName: "REQUIRED_MESSAGE_URL",
2126
- Valid: valid,
2127
- Code: 0,
2128
- DebugInfo: &validationutils.DebugInfo{
2129
- FedConfig: configureDebugInfo,
2130
- },
2131
- }
2132
-
2133
- if valid {
2134
- result.Code = 200
2135
- } else {
2136
- result.Code = 30000
2137
- }
2138
-
2139
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2140
- results = append(results, result)
2141
- results = append(results, subResults...)
2142
-
2143
- return results, nil
2144
- }
2145
- var REQUIRED_MESSAGE_CONTENT_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2146
-
2147
- if input.Config.SkipTestsDict != nil {
2148
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CONTENT_TYPE"]; skip {
2149
- return []validationutils.ValidationOutput{}, nil
2150
- }
2151
- }
2152
-
2153
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2154
-
2155
- subResults := make([]validationutils.ValidationOutput, 0)
2156
- valid := true
2157
- configureDebugInfo := ""
2158
- for _, testObjMap := range scope {
2159
- validationutils.UnusedFunction(testObjMap)
2160
-
2161
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.descriptor.additional_desc.content_type", true)
2162
- validationutils.UnusedFunction(attr)
2163
-
2164
- validate := validationutils.ArePresent(attr)
2165
-
2166
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CONTENT_TYPE","attr":"$.message.issue.descriptor.additional_desc.content_type","_RETURN_":"attr are present","action":["issue"]}`
2167
-
2168
- if !validate {
2169
- result := validationutils.ValidationOutput{
2170
- TestName: "REQUIRED_MESSAGE_CONTENT_TYPE",
2171
- Valid: false,
2172
- Code: 30000,
2173
- Description: `#### **REQUIRED_MESSAGE_CONTENT_TYPE**
2174
-
2175
- - $.message.issue.descriptor.additional_desc.content_type must be present in the payload`,
2176
- DebugInfo: &validationutils.DebugInfo{
2177
- FedConfig: configureDebugInfo,
2178
- },
2179
- }
2180
- return []validationutils.ValidationOutput{result}, nil
2181
- }
2182
-
2183
- }
2184
-
2185
- result := validationutils.ValidationOutput{
2186
- TestName: "REQUIRED_MESSAGE_CONTENT_TYPE",
2187
- Valid: valid,
2188
- Code: 0,
2189
- DebugInfo: &validationutils.DebugInfo{
2190
- FedConfig: configureDebugInfo,
2191
- },
2192
- }
2193
-
2194
- if valid {
2195
- result.Code = 200
2196
- } else {
2197
- result.Code = 30000
2198
- }
2199
-
2200
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2201
- results = append(results, result)
2202
- results = append(results, subResults...)
2203
-
2204
- return results, nil
2205
- }
2206
- var REQUIRED_MESSAGE_LAST_ACTION_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2207
-
2208
- if input.Config.SkipTestsDict != nil {
2209
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_LAST_ACTION_ID"]; skip {
2210
- return []validationutils.ValidationOutput{}, nil
2211
- }
2212
- }
2213
-
2214
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2215
-
2216
- subResults := make([]validationutils.ValidationOutput, 0)
2217
- valid := true
2218
- configureDebugInfo := ""
2219
- for _, testObjMap := range scope {
2220
- validationutils.UnusedFunction(testObjMap)
2221
-
2222
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.last_action_id", true)
2223
- validationutils.UnusedFunction(attr)
2224
-
2225
- validate := validationutils.ArePresent(attr)
2226
-
2227
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_LAST_ACTION_ID","attr":"$.message.issue.last_action_id","_RETURN_":"attr are present","action":["issue"]}`
2228
-
2229
- if !validate {
2230
- result := validationutils.ValidationOutput{
2231
- TestName: "REQUIRED_MESSAGE_LAST_ACTION_ID",
2232
- Valid: false,
2233
- Code: 30000,
2234
- Description: `#### **REQUIRED_MESSAGE_LAST_ACTION_ID**
2235
-
2236
- - $.message.issue.last_action_id must be present in the payload`,
2237
- DebugInfo: &validationutils.DebugInfo{
2238
- FedConfig: configureDebugInfo,
2239
- },
2240
- }
2241
- return []validationutils.ValidationOutput{result}, nil
2242
- }
2243
-
2244
- }
2245
-
2246
- result := validationutils.ValidationOutput{
2247
- TestName: "REQUIRED_MESSAGE_LAST_ACTION_ID",
2248
- Valid: valid,
2249
- Code: 0,
2250
- DebugInfo: &validationutils.DebugInfo{
2251
- FedConfig: configureDebugInfo,
2252
- },
2253
- }
2254
-
2255
- if valid {
2256
- result.Code = 200
2257
- } else {
2258
- result.Code = 30000
2259
- }
2260
-
2261
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2262
- results = append(results, result)
2263
- results = append(results, subResults...)
2264
-
2265
- return results, nil
2266
- }
2267
- var REQUIRED_MESSAGE_ID_25 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2268
-
2269
- if input.Config.SkipTestsDict != nil {
2270
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ID_25"]; skip {
2271
- return []validationutils.ValidationOutput{}, nil
2272
- }
2273
- }
2274
-
2275
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2276
-
2277
- subResults := make([]validationutils.ValidationOutput, 0)
2278
- valid := true
2279
- configureDebugInfo := ""
2280
- for _, testObjMap := range scope {
2281
- validationutils.UnusedFunction(testObjMap)
2282
-
2283
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].id", true)
2284
- validationutils.UnusedFunction(attr)
2285
-
2286
- validate := validationutils.ArePresent(attr)
2287
-
2288
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ID_25","attr":"$.message.issue.actions[*].id","_RETURN_":"attr are present","action":["issue"]}`
2289
-
2290
- if !validate {
2291
- result := validationutils.ValidationOutput{
2292
- TestName: "REQUIRED_MESSAGE_ID_25",
2293
- Valid: false,
2294
- Code: 30000,
2295
- Description: `#### **REQUIRED_MESSAGE_ID_25**
2296
-
2297
- - $.message.issue.actions[*].id must be present in the payload`,
2298
- DebugInfo: &validationutils.DebugInfo{
2299
- FedConfig: configureDebugInfo,
2300
- },
2301
- }
2302
- return []validationutils.ValidationOutput{result}, nil
2303
- }
2304
-
2305
- }
2306
-
2307
- result := validationutils.ValidationOutput{
2308
- TestName: "REQUIRED_MESSAGE_ID_25",
2309
- Valid: valid,
2310
- Code: 0,
2311
- DebugInfo: &validationutils.DebugInfo{
2312
- FedConfig: configureDebugInfo,
2313
- },
2314
- }
2315
-
2316
- if valid {
2317
- result.Code = 200
2318
- } else {
2319
- result.Code = 30000
2320
- }
2321
-
2322
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2323
- results = append(results, result)
2324
- results = append(results, subResults...)
2325
-
2326
- return results, nil
2327
- }
2328
- var REQUIRED_MESSAGE_CODE_26 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2329
-
2330
- if input.Config.SkipTestsDict != nil {
2331
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CODE_26"]; skip {
2332
- return []validationutils.ValidationOutput{}, nil
2333
- }
2334
- }
2335
-
2336
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2337
-
2338
- subResults := make([]validationutils.ValidationOutput, 0)
2339
- valid := true
2340
- configureDebugInfo := ""
2341
- for _, testObjMap := range scope {
2342
- validationutils.UnusedFunction(testObjMap)
2343
-
2344
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].descriptor.code", true)
2345
- validationutils.UnusedFunction(attr)
2346
-
2347
- validate := validationutils.ArePresent(attr)
2348
-
2349
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CODE_26","attr":"$.message.issue.actions[*].descriptor.code","_RETURN_":"attr are present","action":["issue"]}`
2350
-
2351
- if !validate {
2352
- result := validationutils.ValidationOutput{
2353
- TestName: "REQUIRED_MESSAGE_CODE_26",
2354
- Valid: false,
2355
- Code: 30000,
2356
- Description: `#### **REQUIRED_MESSAGE_CODE_26**
2357
-
2358
- - $.message.issue.actions[*].descriptor.code must be present in the payload`,
2359
- DebugInfo: &validationutils.DebugInfo{
2360
- FedConfig: configureDebugInfo,
2361
- },
2362
- }
2363
- return []validationutils.ValidationOutput{result}, nil
2364
- }
2365
-
2366
- }
2367
-
2368
- result := validationutils.ValidationOutput{
2369
- TestName: "REQUIRED_MESSAGE_CODE_26",
2370
- Valid: valid,
2371
- Code: 0,
2372
- DebugInfo: &validationutils.DebugInfo{
2373
- FedConfig: configureDebugInfo,
2374
- },
2375
- }
2376
-
2377
- if valid {
2378
- result.Code = 200
2379
- } else {
2380
- result.Code = 30000
2381
- }
2382
-
2383
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2384
- results = append(results, result)
2385
- results = append(results, subResults...)
2386
-
2387
- return results, nil
2388
- }
2389
- var REQUIRED_MESSAGE_SHORT_DESC_27 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2390
-
2391
- if input.Config.SkipTestsDict != nil {
2392
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_SHORT_DESC_27"]; skip {
2393
- return []validationutils.ValidationOutput{}, nil
2394
- }
2395
- }
2396
-
2397
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2398
-
2399
- subResults := make([]validationutils.ValidationOutput, 0)
2400
- valid := true
2401
- configureDebugInfo := ""
2402
- for _, testObjMap := range scope {
2403
- validationutils.UnusedFunction(testObjMap)
2404
-
2405
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].descriptor.short_desc", true)
2406
- validationutils.UnusedFunction(attr)
2407
-
2408
- validate := validationutils.ArePresent(attr)
2409
-
2410
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_SHORT_DESC_27","attr":"$.message.issue.actions[*].descriptor.short_desc","_RETURN_":"attr are present","action":["issue"]}`
2411
-
2412
- if !validate {
2413
- result := validationutils.ValidationOutput{
2414
- TestName: "REQUIRED_MESSAGE_SHORT_DESC_27",
2415
- Valid: false,
2416
- Code: 30000,
2417
- Description: `#### **REQUIRED_MESSAGE_SHORT_DESC_27**
2418
-
2419
- - $.message.issue.actions[*].descriptor.short_desc must be present in the payload`,
2420
- DebugInfo: &validationutils.DebugInfo{
2421
- FedConfig: configureDebugInfo,
2422
- },
2423
- }
2424
- return []validationutils.ValidationOutput{result}, nil
2425
- }
2426
-
2427
- }
2428
-
2429
- result := validationutils.ValidationOutput{
2430
- TestName: "REQUIRED_MESSAGE_SHORT_DESC_27",
2431
- Valid: valid,
2432
- Code: 0,
2433
- DebugInfo: &validationutils.DebugInfo{
2434
- FedConfig: configureDebugInfo,
2435
- },
2436
- }
2437
-
2438
- if valid {
2439
- result.Code = 200
2440
- } else {
2441
- result.Code = 30000
2442
- }
2443
-
2444
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2445
- results = append(results, result)
2446
- results = append(results, subResults...)
2447
-
2448
- return results, nil
2449
- }
2450
- var REQUIRED_MESSAGE_UPDATED_AT_28 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2451
-
2452
- if input.Config.SkipTestsDict != nil {
2453
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_UPDATED_AT_28"]; skip {
2454
- return []validationutils.ValidationOutput{}, nil
2455
- }
2456
- }
2457
-
2458
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2459
-
2460
- subResults := make([]validationutils.ValidationOutput, 0)
2461
- valid := true
2462
- configureDebugInfo := ""
2463
- for _, testObjMap := range scope {
2464
- validationutils.UnusedFunction(testObjMap)
2465
-
2466
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].updated_at", true)
2467
- validationutils.UnusedFunction(attr)
2468
-
2469
- validate := validationutils.ArePresent(attr)
2470
-
2471
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_UPDATED_AT_28","attr":"$.message.issue.actions[*].updated_at","_RETURN_":"attr are present","action":["issue"]}`
2472
-
2473
- if !validate {
2474
- result := validationutils.ValidationOutput{
2475
- TestName: "REQUIRED_MESSAGE_UPDATED_AT_28",
2476
- Valid: false,
2477
- Code: 30000,
2478
- Description: `#### **REQUIRED_MESSAGE_UPDATED_AT_28**
2479
-
2480
- - $.message.issue.actions[*].updated_at must be present in the payload`,
2481
- DebugInfo: &validationutils.DebugInfo{
2482
- FedConfig: configureDebugInfo,
2483
- },
2484
- }
2485
- return []validationutils.ValidationOutput{result}, nil
2486
- }
2487
-
2488
- }
2489
-
2490
- result := validationutils.ValidationOutput{
2491
- TestName: "REQUIRED_MESSAGE_UPDATED_AT_28",
2492
- Valid: valid,
2493
- Code: 0,
2494
- DebugInfo: &validationutils.DebugInfo{
2495
- FedConfig: configureDebugInfo,
2496
- },
2497
- }
2498
-
2499
- if valid {
2500
- result.Code = 200
2501
- } else {
2502
- result.Code = 30000
2503
- }
2504
-
2505
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2506
- results = append(results, result)
2507
- results = append(results, subResults...)
2508
-
2509
- return results, nil
2510
- }
2511
- var REQUIRED_MESSAGE_ACTION_BY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2512
-
2513
- if input.Config.SkipTestsDict != nil {
2514
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ACTION_BY"]; skip {
2515
- return []validationutils.ValidationOutput{}, nil
2516
- }
2517
- }
2518
-
2519
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2520
-
2521
- subResults := make([]validationutils.ValidationOutput, 0)
2522
- valid := true
2523
- configureDebugInfo := ""
2524
- for _, testObjMap := range scope {
2525
- validationutils.UnusedFunction(testObjMap)
2526
-
2527
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].action_by", true)
2528
- validationutils.UnusedFunction(attr)
2529
-
2530
- validate := validationutils.ArePresent(attr)
2531
-
2532
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ACTION_BY","attr":"$.message.issue.actions[*].action_by","_RETURN_":"attr are present","action":["issue"]}`
2533
-
2534
- if !validate {
2535
- result := validationutils.ValidationOutput{
2536
- TestName: "REQUIRED_MESSAGE_ACTION_BY",
2537
- Valid: false,
2538
- Code: 30000,
2539
- Description: `#### **REQUIRED_MESSAGE_ACTION_BY**
2540
-
2541
- - $.message.issue.actions[*].action_by must be present in the payload`,
2542
- DebugInfo: &validationutils.DebugInfo{
2543
- FedConfig: configureDebugInfo,
2544
- },
2545
- }
2546
- return []validationutils.ValidationOutput{result}, nil
2547
- }
2548
-
2549
- }
2550
-
2551
- result := validationutils.ValidationOutput{
2552
- TestName: "REQUIRED_MESSAGE_ACTION_BY",
2553
- Valid: valid,
2554
- Code: 0,
2555
- DebugInfo: &validationutils.DebugInfo{
2556
- FedConfig: configureDebugInfo,
2557
- },
2558
- }
2559
-
2560
- if valid {
2561
- result.Code = 200
2562
- } else {
2563
- result.Code = 30000
2564
- }
2565
-
2566
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2567
- results = append(results, result)
2568
- results = append(results, subResults...)
2569
-
2570
- return results, nil
2571
- }
2572
- var VALID_ENUM_MESSAGE_STATUS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2573
-
2574
- if input.Config.SkipTestsDict != nil {
2575
- if _, skip := input.Config.SkipTestsDict["VALID_ENUM_MESSAGE_STATUS"]; skip {
2576
- return []validationutils.ValidationOutput{}, nil
2577
- }
2578
- }
2579
-
2580
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2581
-
2582
- subResults := make([]validationutils.ValidationOutput, 0)
2583
- valid := true
2584
- configureDebugInfo := ""
2585
- for _, testObjMap := range scope {
2586
- validationutils.UnusedFunction(testObjMap)
2587
-
2588
- enumList := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSED`, `PROCESSING`, `RESOLVED`, `INFO_PROVIDED`})
2589
- validationutils.UnusedFunction(enumList)
2590
- enumPath := validationutils.GetJsonPath(testObjMap, "$.message.issue.status", true)
2591
- validationutils.UnusedFunction(enumPath)
2592
-
2593
- skipCheck := !(validationutils.ArePresent(enumPath))
2594
- if skipCheck {
2595
- continue
2596
- }
2597
-
2598
- validate := validationutils.AllIn(enumPath, enumList)
2599
-
2600
- configureDebugInfo = `{"_NAME_":"VALID_ENUM_MESSAGE_STATUS","enumList":["OPEN","CLOSED","PROCESSING","RESOLVED","INFO_PROVIDED"],"enumPath":"$.message.issue.status","_CONTINUE_":"!(enumPath are present)","_RETURN_":"enumPath all in enumList","action":["issue"]}`
2601
-
2602
- if !validate {
2603
- result := validationutils.ValidationOutput{
2604
- TestName: "VALID_ENUM_MESSAGE_STATUS",
2605
- Valid: false,
2606
- Code: 30000,
2607
- Description: `#### **VALID_ENUM_MESSAGE_STATUS**
2608
-
2609
- - All elements of $.message.issue.status must be in ["OPEN", "CLOSED", "PROCESSING", "RESOLVED", "INFO_PROVIDED"]
2610
-
2611
- > **Skip if:**
2612
- >
2613
- > - $.message.issue.status is not in the payload`,
2614
- DebugInfo: &validationutils.DebugInfo{
2615
- FedConfig: configureDebugInfo,
2616
- },
2617
- }
2618
- return []validationutils.ValidationOutput{result}, nil
2619
- }
2620
-
2621
- }
2622
-
2623
- result := validationutils.ValidationOutput{
2624
- TestName: "VALID_ENUM_MESSAGE_STATUS",
2625
- Valid: valid,
2626
- Code: 0,
2627
- DebugInfo: &validationutils.DebugInfo{
2628
- FedConfig: configureDebugInfo,
2629
- },
2630
- }
2631
-
2632
- if valid {
2633
- result.Code = 200
2634
- } else {
2635
- result.Code = 30000
2636
- }
2637
-
2638
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2639
- results = append(results, result)
2640
- results = append(results, subResults...)
2641
-
2642
- return results, nil
2643
- }
2644
- var VALID_ENUM_MESSAGE_LEVEL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2645
-
2646
- if input.Config.SkipTestsDict != nil {
2647
- if _, skip := input.Config.SkipTestsDict["VALID_ENUM_MESSAGE_LEVEL"]; skip {
2648
- return []validationutils.ValidationOutput{}, nil
2649
- }
2650
- }
2651
-
2652
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2653
-
2654
- subResults := make([]validationutils.ValidationOutput, 0)
2655
- valid := true
2656
- configureDebugInfo := ""
2657
- for _, testObjMap := range scope {
2658
- validationutils.UnusedFunction(testObjMap)
2659
-
2660
- enumList := validationutils.StringSliceToInterface([]string{`ISSUE`, `GREVIENCE`, `DISPUTE`})
2661
- validationutils.UnusedFunction(enumList)
2662
- enumPath := validationutils.GetJsonPath(testObjMap, "$.message.issue.level", true)
2663
- validationutils.UnusedFunction(enumPath)
2664
-
2665
- skipCheck := !(validationutils.ArePresent(enumPath))
2666
- if skipCheck {
2667
- continue
2668
- }
2669
-
2670
- validate := validationutils.AllIn(enumPath, enumList)
2671
-
2672
- configureDebugInfo = `{"_NAME_":"VALID_ENUM_MESSAGE_LEVEL","enumList":["ISSUE","GREVIENCE","DISPUTE"],"enumPath":"$.message.issue.level","_CONTINUE_":"!(enumPath are present)","_RETURN_":"enumPath all in enumList","action":["issue"]}`
2673
-
2674
- if !validate {
2675
- result := validationutils.ValidationOutput{
2676
- TestName: "VALID_ENUM_MESSAGE_LEVEL",
2677
- Valid: false,
2678
- Code: 30000,
2679
- Description: `#### **VALID_ENUM_MESSAGE_LEVEL**
2680
-
2681
- - All elements of $.message.issue.level must be in ["ISSUE", "GREVIENCE", "DISPUTE"]
2682
-
2683
- > **Skip if:**
2684
- >
2685
- > - $.message.issue.level is not in the payload`,
2686
- DebugInfo: &validationutils.DebugInfo{
2687
- FedConfig: configureDebugInfo,
2688
- },
2689
- }
2690
- return []validationutils.ValidationOutput{result}, nil
2691
- }
2692
-
2693
- }
2694
-
2695
- result := validationutils.ValidationOutput{
2696
- TestName: "VALID_ENUM_MESSAGE_LEVEL",
2697
- Valid: valid,
2698
- Code: 0,
2699
- DebugInfo: &validationutils.DebugInfo{
2700
- FedConfig: configureDebugInfo,
2701
- },
2702
- }
2703
-
2704
- if valid {
2705
- result.Code = 200
2706
- } else {
2707
- result.Code = 30000
2708
- }
2709
-
2710
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2711
- results = append(results, result)
2712
- results = append(results, subResults...)
2713
-
2714
- return results, nil
2715
- }
2716
- var VALID_ENUM_MESSAGE_REF_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2717
-
2718
- if input.Config.SkipTestsDict != nil {
2719
- if _, skip := input.Config.SkipTestsDict["VALID_ENUM_MESSAGE_REF_TYPE"]; skip {
2720
- return []validationutils.ValidationOutput{}, nil
2721
- }
2722
- }
2723
-
2724
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2725
-
2726
- subResults := make([]validationutils.ValidationOutput, 0)
2727
- valid := true
2728
- configureDebugInfo := ""
2729
- for _, testObjMap := range scope {
2730
- validationutils.UnusedFunction(testObjMap)
2731
-
2732
- enumList := validationutils.StringSliceToInterface([]string{`ORDER`, `ITEM`, `FULFILLMENT`, `TRANSACTION_ID`, `MESSAGE_ID`, `PROVIDER`, `COMPLAINT`, `ACTION`, `PAYMENT`, `CUSTOMER`, `AGENT`})
2733
- validationutils.UnusedFunction(enumList)
2734
- enumPath := validationutils.GetJsonPath(testObjMap, "$.message.issue.refs[*].ref_type", true)
2735
- validationutils.UnusedFunction(enumPath)
2736
-
2737
- skipCheck := !(validationutils.ArePresent(enumPath))
2738
- if skipCheck {
2739
- continue
2740
- }
2741
-
2742
- validate := validationutils.AllIn(enumPath, enumList)
2743
-
2744
- configureDebugInfo = `{"_NAME_":"VALID_ENUM_MESSAGE_REF_TYPE","enumList":["ORDER","ITEM","FULFILLMENT","TRANSACTION_ID","MESSAGE_ID","PROVIDER","COMPLAINT","ACTION","PAYMENT","CUSTOMER","AGENT"],"enumPath":"$.message.issue.refs[*].ref_type","_CONTINUE_":"!(enumPath are present)","_RETURN_":"enumPath all in enumList","action":["issue"]}`
2745
-
2746
- if !validate {
2747
- result := validationutils.ValidationOutput{
2748
- TestName: "VALID_ENUM_MESSAGE_REF_TYPE",
2749
- Valid: false,
2750
- Code: 30000,
2751
- Description: `#### **VALID_ENUM_MESSAGE_REF_TYPE**
2752
-
2753
- - All elements of $.message.issue.refs[*].ref_type must be in ["ORDER", "ITEM", "FULFILLMENT", "TRANSACTION_ID", "MESSAGE_ID", "PROVIDER", "COMPLAINT", "ACTION", "PAYMENT", "CUSTOMER", "AGENT"]
2754
-
2755
- > **Skip if:**
2756
- >
2757
- > - $.message.issue.refs[*].ref_type is not in the payload`,
2758
- DebugInfo: &validationutils.DebugInfo{
2759
- FedConfig: configureDebugInfo,
2760
- },
2761
- }
2762
- return []validationutils.ValidationOutput{result}, nil
2763
- }
2764
-
2765
- }
2766
-
2767
- result := validationutils.ValidationOutput{
2768
- TestName: "VALID_ENUM_MESSAGE_REF_TYPE",
2769
- Valid: valid,
2770
- Code: 0,
2771
- DebugInfo: &validationutils.DebugInfo{
2772
- FedConfig: configureDebugInfo,
2773
- },
2774
- }
2775
-
2776
- if valid {
2777
- result.Code = 200
2778
- } else {
2779
- result.Code = 30000
2780
- }
2781
-
2782
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2783
- results = append(results, result)
2784
- results = append(results, subResults...)
2785
-
2786
- return results, nil
2787
- }
2788
- var VALID_ENUM_MESSAGE_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2789
-
2790
- if input.Config.SkipTestsDict != nil {
2791
- if _, skip := input.Config.SkipTestsDict["VALID_ENUM_MESSAGE_TYPE"]; skip {
2792
- return []validationutils.ValidationOutput{}, nil
2793
- }
2794
- }
2795
-
2796
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2797
-
2798
- subResults := make([]validationutils.ValidationOutput, 0)
2799
- valid := true
2800
- configureDebugInfo := ""
2801
- for _, testObjMap := range scope {
2802
- validationutils.UnusedFunction(testObjMap)
2803
-
2804
- enumList := validationutils.StringSliceToInterface([]string{`INTERFACING_NP`, `COUNTERPARTY_NP`, `CASCADED_NP`, `PROVIDER`, `AGENT`, `CUSTOMER`, `INTERFACING_NP_GRO`, `COUNTERPARTY_NP_GRO`, `CASCADED_NP_GRO`, `CONSUMER`})
2805
- validationutils.UnusedFunction(enumList)
2806
- enumPath := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].type", true)
2807
- validationutils.UnusedFunction(enumPath)
2808
-
2809
- skipCheck := !(validationutils.ArePresent(enumPath))
2810
- if skipCheck {
2811
- continue
2812
- }
2813
-
2814
- validate := validationutils.AllIn(enumPath, enumList)
2815
-
2816
- configureDebugInfo = `{"_NAME_":"VALID_ENUM_MESSAGE_TYPE","enumList":["INTERFACING_NP","COUNTERPARTY_NP","CASCADED_NP","PROVIDER","AGENT","CUSTOMER","INTERFACING_NP_GRO","COUNTERPARTY_NP_GRO","CASCADED_NP_GRO","CONSUMER"],"enumPath":"$.message.issue.actors[*].type","_CONTINUE_":"!(enumPath are present)","_RETURN_":"enumPath all in enumList","action":["issue"]}`
2817
-
2818
- if !validate {
2819
- result := validationutils.ValidationOutput{
2820
- TestName: "VALID_ENUM_MESSAGE_TYPE",
2821
- Valid: false,
2822
- Code: 30000,
2823
- Description: `#### **VALID_ENUM_MESSAGE_TYPE**
2824
-
2825
- - All elements of $.message.issue.actors[*].type must be in ["INTERFACING_NP", "COUNTERPARTY_NP", "CASCADED_NP", "PROVIDER", "AGENT", "CUSTOMER", "INTERFACING_NP_GRO", "COUNTERPARTY_NP_GRO", "CASCADED_NP_GRO", "CONSUMER"]
2826
-
2827
- > **Skip if:**
2828
- >
2829
- > - $.message.issue.actors[*].type is not in the payload`,
2830
- DebugInfo: &validationutils.DebugInfo{
2831
- FedConfig: configureDebugInfo,
2832
- },
2833
- }
2834
- return []validationutils.ValidationOutput{result}, nil
2835
- }
2836
-
2837
- }
2838
-
2839
- result := validationutils.ValidationOutput{
2840
- TestName: "VALID_ENUM_MESSAGE_TYPE",
2841
- Valid: valid,
2842
- Code: 0,
2843
- DebugInfo: &validationutils.DebugInfo{
2844
- FedConfig: configureDebugInfo,
2845
- },
2846
- }
2847
-
2848
- if valid {
2849
- result.Code = 200
2850
- } else {
2851
- result.Code = 30000
2852
- }
2853
-
2854
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2855
- results = append(results, result)
2856
- results = append(results, subResults...)
2857
-
2858
- return results, nil
2859
- }
2860
-
2861
- var testFunctions = validationutils.TestFunctionArray{
2862
- REQUIRED_MESSAGE_ID,
2863
- REQUIRED_MESSAGE_STATUS,
2864
- REQUIRED_MESSAGE_LEVEL,
2865
- REQUIRED_MESSAGE_CREATED_AT,
2866
- REQUIRED_MESSAGE_UPDATED_AT,
2867
- REQUIRED_MESSAGE_REF_ID,
2868
- REQUIRED_MESSAGE_REF_TYPE,
2869
- REQUIRED_MESSAGE_ID_10,
2870
- REQUIRED_MESSAGE_TYPE,
2871
- REQUIRED_MESSAGE_NAME,
2872
- REQUIRED_MESSAGE_NAME_13,
2873
- REQUIRED_MESSAGE_PHONE,
2874
- REQUIRED_MESSAGE_EMAIL,
2875
- REQUIRED_MESSAGE_SOURCE_ID,
2876
- REQUIRED_MESSAGE_CODE,
2877
- REQUIRED_MESSAGE_SHORT_DESC,
2878
- REQUIRED_MESSAGE_LONG_DESC,
2879
- REQUIRED_MESSAGE_URL,
2880
- REQUIRED_MESSAGE_CONTENT_TYPE,
2881
- REQUIRED_MESSAGE_LAST_ACTION_ID,
2882
- REQUIRED_MESSAGE_ID_25,
2883
- REQUIRED_MESSAGE_CODE_26,
2884
- REQUIRED_MESSAGE_SHORT_DESC_27,
2885
- REQUIRED_MESSAGE_UPDATED_AT_28,
2886
- REQUIRED_MESSAGE_ACTION_BY,
2887
- VALID_ENUM_MESSAGE_STATUS,
2888
- VALID_ENUM_MESSAGE_LEVEL,
2889
- VALID_ENUM_MESSAGE_REF_TYPE,
2890
- VALID_ENUM_MESSAGE_TYPE,
2891
- }
2892
-
2893
- allResults := make([]validationutils.ValidationOutput, 0)
2894
-
2895
- for _, testFunc := range testFunctions {
2896
- results, err := testFunc(input)
2897
- if err != nil {
2898
- return nil, err
2899
- }
2900
- allResults = append(allResults, results...)
2901
- }
2902
-
2903
- subResults = allResults
2904
- // if all subResults are valid, then valid is true
2905
- valid = true
2906
- for _, res := range subResults {
2907
- if !res.Valid {
2908
- valid = false
2909
- break
2910
- }
2911
- }
2912
-
2913
- configureDebugInfo = `NESTED_TEST_OBJECT`
2914
-
2915
- }
2916
-
2917
- result := validationutils.ValidationOutput{
2918
- TestName: "ISSUE_VALIDATION_VERSION_200",
2919
- Valid: valid,
2920
- Code: 0,
2921
- DebugInfo: &validationutils.DebugInfo{
2922
- FedConfig: configureDebugInfo,
2923
- },
2924
- }
2925
-
2926
- if valid {
2927
- result.Code = 200
2928
- } else {
2929
- result.Code = 30000
2930
- }
2931
-
2932
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2933
- results = append(results, result)
2934
- results = append(results, subResults...)
2935
-
2936
- return results, nil
2937
- }
2938
- var ISSUE_VALIDATION_VERSION_100 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2939
-
2940
- if input.Config.SkipTestsDict != nil {
2941
- if _, skip := input.Config.SkipTestsDict["ISSUE_VALIDATION_VERSION_100"]; skip {
2942
- return []validationutils.ValidationOutput{}, nil
2943
- }
2944
- }
2945
-
2946
- scope := validationutils.GetJsonPath(input.Payload, "$.message.issue.issue_actions", true)
2947
-
2948
- subResults := make([]validationutils.ValidationOutput, 0)
2949
- valid := true
2950
- configureDebugInfo := ""
2951
- for _, testObjMap := range scope {
2952
- validationutils.UnusedFunction(testObjMap)
2953
-
2954
- var ISSUE_VALIDATION_OPEN = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2955
-
2956
- if input.Config.SkipTestsDict != nil {
2957
- if _, skip := input.Config.SkipTestsDict["ISSUE_VALIDATION_OPEN"]; skip {
2958
- return []validationutils.ValidationOutput{}, nil
2959
- }
2960
- }
2961
-
2962
- scope := validationutils.GetJsonPath(input.Payload, "$.message.issue[?(@.status=='OPEN')]", true)
2963
-
2964
- subResults := make([]validationutils.ValidationOutput, 0)
2965
- valid := true
2966
- configureDebugInfo := ""
2967
- for _, testObjMap := range scope {
2968
- validationutils.UnusedFunction(testObjMap)
2969
-
2970
- var REQUIRED_ISSUE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2971
-
2972
- if input.Config.SkipTestsDict != nil {
2973
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_ID"]; skip {
2974
- return []validationutils.ValidationOutput{}, nil
2975
- }
2976
- }
2977
-
2978
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2979
-
2980
- subResults := make([]validationutils.ValidationOutput, 0)
2981
- valid := true
2982
- configureDebugInfo := ""
2983
- for _, testObjMap := range scope {
2984
- validationutils.UnusedFunction(testObjMap)
2985
-
2986
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.id", true)
2987
- validationutils.UnusedFunction(attr)
2988
-
2989
- validate := validationutils.ArePresent(attr)
2990
-
2991
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_ID","attr":"$.message.issue.id","_RETURN_":"attr are present","action":["issue"]}`
2992
-
2993
- if !validate {
2994
- result := validationutils.ValidationOutput{
2995
- TestName: "REQUIRED_ISSUE_ID",
2996
- Valid: false,
2997
- Code: 30000,
2998
- Description: `#### **REQUIRED_ISSUE_ID**
2999
-
3000
- - $.message.issue.id must be present in the payload`,
3001
- DebugInfo: &validationutils.DebugInfo{
3002
- FedConfig: configureDebugInfo,
3003
- },
3004
- }
3005
- return []validationutils.ValidationOutput{result}, nil
3006
- }
3007
-
3008
- }
3009
-
3010
- result := validationutils.ValidationOutput{
3011
- TestName: "REQUIRED_ISSUE_ID",
3012
- Valid: valid,
3013
- Code: 0,
3014
- DebugInfo: &validationutils.DebugInfo{
3015
- FedConfig: configureDebugInfo,
3016
- },
3017
- }
3018
-
3019
- if valid {
3020
- result.Code = 200
3021
- } else {
3022
- result.Code = 30000
3023
- }
3024
-
3025
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3026
- results = append(results, result)
3027
- results = append(results, subResults...)
3028
-
3029
- return results, nil
3030
- }
3031
- var REQUIRED_ISSUE_STATUS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3032
-
3033
- if input.Config.SkipTestsDict != nil {
3034
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_STATUS"]; skip {
3035
- return []validationutils.ValidationOutput{}, nil
3036
- }
3037
- }
3038
-
3039
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3040
-
3041
- subResults := make([]validationutils.ValidationOutput, 0)
3042
- valid := true
3043
- configureDebugInfo := ""
3044
- for _, testObjMap := range scope {
3045
- validationutils.UnusedFunction(testObjMap)
3046
-
3047
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.status", true)
3048
- validationutils.UnusedFunction(attr)
3049
- validValues := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSED`})
3050
- validationutils.UnusedFunction(validValues)
3051
-
3052
- validate := validationutils.AllIn(attr, validValues)
3053
-
3054
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_STATUS","attr":"$.message.issue.status","validValues":["OPEN","CLOSED"],"_RETURN_":"attr all in validValues","action":["issue"]}`
3055
-
3056
- if !validate {
3057
- result := validationutils.ValidationOutput{
3058
- TestName: "REQUIRED_ISSUE_STATUS",
3059
- Valid: false,
3060
- Code: 30000,
3061
- Description: `#### **REQUIRED_ISSUE_STATUS**
3062
-
3063
- - All elements of $.message.issue.status must be in ["OPEN", "CLOSED"]`,
3064
- DebugInfo: &validationutils.DebugInfo{
3065
- FedConfig: configureDebugInfo,
3066
- },
3067
- }
3068
- return []validationutils.ValidationOutput{result}, nil
3069
- }
3070
-
3071
- }
3072
-
3073
- result := validationutils.ValidationOutput{
3074
- TestName: "REQUIRED_ISSUE_STATUS",
3075
- Valid: valid,
3076
- Code: 0,
3077
- DebugInfo: &validationutils.DebugInfo{
3078
- FedConfig: configureDebugInfo,
3079
- },
3080
- }
3081
-
3082
- if valid {
3083
- result.Code = 200
3084
- } else {
3085
- result.Code = 30000
3086
- }
3087
-
3088
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3089
- results = append(results, result)
3090
- results = append(results, subResults...)
3091
-
3092
- return results, nil
3093
- }
3094
- var REQUIRED_ISSUE_CATEGORY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3095
-
3096
- if input.Config.SkipTestsDict != nil {
3097
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_CATEGORY"]; skip {
3098
- return []validationutils.ValidationOutput{}, nil
3099
- }
3100
- }
3101
-
3102
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3103
-
3104
- subResults := make([]validationutils.ValidationOutput, 0)
3105
- valid := true
3106
- configureDebugInfo := ""
3107
- for _, testObjMap := range scope {
3108
- validationutils.UnusedFunction(testObjMap)
3109
-
3110
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.category", true)
3111
- validationutils.UnusedFunction(attr)
3112
-
3113
- validate := validationutils.ArePresent(attr)
3114
-
3115
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_CATEGORY","attr":"$.message.issue.category","_RETURN_":"attr are present","action":["issue"]}`
3116
-
3117
- if !validate {
3118
- result := validationutils.ValidationOutput{
3119
- TestName: "REQUIRED_ISSUE_CATEGORY",
3120
- Valid: false,
3121
- Code: 30000,
3122
- Description: `#### **REQUIRED_ISSUE_CATEGORY**
3123
-
3124
- - $.message.issue.category must be present in the payload`,
3125
- DebugInfo: &validationutils.DebugInfo{
3126
- FedConfig: configureDebugInfo,
3127
- },
3128
- }
3129
- return []validationutils.ValidationOutput{result}, nil
3130
- }
3131
-
3132
- }
3133
-
3134
- result := validationutils.ValidationOutput{
3135
- TestName: "REQUIRED_ISSUE_CATEGORY",
3136
- Valid: valid,
3137
- Code: 0,
3138
- DebugInfo: &validationutils.DebugInfo{
3139
- FedConfig: configureDebugInfo,
3140
- },
3141
- }
3142
-
3143
- if valid {
3144
- result.Code = 200
3145
- } else {
3146
- result.Code = 30000
3147
- }
3148
-
3149
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3150
- results = append(results, result)
3151
- results = append(results, subResults...)
3152
-
3153
- return results, nil
3154
- }
3155
- var REQUIRED_ISSUE_SUB_CATEGORY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3156
-
3157
- if input.Config.SkipTestsDict != nil {
3158
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_SUB_CATEGORY"]; skip {
3159
- return []validationutils.ValidationOutput{}, nil
3160
- }
3161
- }
3162
-
3163
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3164
-
3165
- subResults := make([]validationutils.ValidationOutput, 0)
3166
- valid := true
3167
- configureDebugInfo := ""
3168
- for _, testObjMap := range scope {
3169
- validationutils.UnusedFunction(testObjMap)
3170
-
3171
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.sub_category", true)
3172
- validationutils.UnusedFunction(attr)
3173
-
3174
- validate := validationutils.ArePresent(attr)
3175
-
3176
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_SUB_CATEGORY","attr":"$.message.issue.sub_category","_RETURN_":"attr are present","action":["issue"]}`
3177
-
3178
- if !validate {
3179
- result := validationutils.ValidationOutput{
3180
- TestName: "REQUIRED_ISSUE_SUB_CATEGORY",
3181
- Valid: false,
3182
- Code: 30000,
3183
- Description: `#### **REQUIRED_ISSUE_SUB_CATEGORY**
3184
-
3185
- - $.message.issue.sub_category must be present in the payload`,
3186
- DebugInfo: &validationutils.DebugInfo{
3187
- FedConfig: configureDebugInfo,
3188
- },
3189
- }
3190
- return []validationutils.ValidationOutput{result}, nil
3191
- }
3192
-
3193
- }
3194
-
3195
- result := validationutils.ValidationOutput{
3196
- TestName: "REQUIRED_ISSUE_SUB_CATEGORY",
3197
- Valid: valid,
3198
- Code: 0,
3199
- DebugInfo: &validationutils.DebugInfo{
3200
- FedConfig: configureDebugInfo,
3201
- },
3202
- }
3203
-
3204
- if valid {
3205
- result.Code = 200
3206
- } else {
3207
- result.Code = 30000
3208
- }
3209
-
3210
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3211
- results = append(results, result)
3212
- results = append(results, subResults...)
3213
-
3214
- return results, nil
3215
- }
3216
- var REQUIRED_COMPLAINANT_PERSON_NAME = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3217
-
3218
- if input.Config.SkipTestsDict != nil {
3219
- if _, skip := input.Config.SkipTestsDict["REQUIRED_COMPLAINANT_PERSON_NAME"]; skip {
3220
- return []validationutils.ValidationOutput{}, nil
3221
- }
3222
- }
3223
-
3224
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3225
-
3226
- subResults := make([]validationutils.ValidationOutput, 0)
3227
- valid := true
3228
- configureDebugInfo := ""
3229
- for _, testObjMap := range scope {
3230
- validationutils.UnusedFunction(testObjMap)
3231
-
3232
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.complainant_info.person.name", true)
3233
- validationutils.UnusedFunction(attr)
3234
-
3235
- validate := validationutils.ArePresent(attr)
3236
-
3237
- configureDebugInfo = `{"_NAME_":"REQUIRED_COMPLAINANT_PERSON_NAME","attr":"$.message.issue.complainant_info.person.name","_RETURN_":"attr are present","action":["issue"]}`
3238
-
3239
- if !validate {
3240
- result := validationutils.ValidationOutput{
3241
- TestName: "REQUIRED_COMPLAINANT_PERSON_NAME",
3242
- Valid: false,
3243
- Code: 30000,
3244
- Description: `#### **REQUIRED_COMPLAINANT_PERSON_NAME**
3245
-
3246
- - $.message.issue.complainant_info.person.name must be present in the payload`,
3247
- DebugInfo: &validationutils.DebugInfo{
3248
- FedConfig: configureDebugInfo,
3249
- },
3250
- }
3251
- return []validationutils.ValidationOutput{result}, nil
3252
- }
3253
-
3254
- }
3255
-
3256
- result := validationutils.ValidationOutput{
3257
- TestName: "REQUIRED_COMPLAINANT_PERSON_NAME",
3258
- Valid: valid,
3259
- Code: 0,
3260
- DebugInfo: &validationutils.DebugInfo{
3261
- FedConfig: configureDebugInfo,
3262
- },
3263
- }
3264
-
3265
- if valid {
3266
- result.Code = 200
3267
- } else {
3268
- result.Code = 30000
3269
- }
3270
-
3271
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3272
- results = append(results, result)
3273
- results = append(results, subResults...)
3274
-
3275
- return results, nil
3276
- }
3277
- var REQUIRED_COMPLAINANT_CONTACT_PHONE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3278
-
3279
- if input.Config.SkipTestsDict != nil {
3280
- if _, skip := input.Config.SkipTestsDict["REQUIRED_COMPLAINANT_CONTACT_PHONE"]; skip {
3281
- return []validationutils.ValidationOutput{}, nil
3282
- }
3283
- }
3284
-
3285
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3286
-
3287
- subResults := make([]validationutils.ValidationOutput, 0)
3288
- valid := true
3289
- configureDebugInfo := ""
3290
- for _, testObjMap := range scope {
3291
- validationutils.UnusedFunction(testObjMap)
3292
-
3293
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.complainant_info.contact.phone", true)
3294
- validationutils.UnusedFunction(attr)
3295
-
3296
- validate := validationutils.ArePresent(attr)
3297
-
3298
- configureDebugInfo = `{"_NAME_":"REQUIRED_COMPLAINANT_CONTACT_PHONE","attr":"$.message.issue.complainant_info.contact.phone","_RETURN_":"attr are present","action":["issue"]}`
3299
-
3300
- if !validate {
3301
- result := validationutils.ValidationOutput{
3302
- TestName: "REQUIRED_COMPLAINANT_CONTACT_PHONE",
3303
- Valid: false,
3304
- Code: 30000,
3305
- Description: `#### **REQUIRED_COMPLAINANT_CONTACT_PHONE**
3306
-
3307
- - $.message.issue.complainant_info.contact.phone must be present in the payload`,
3308
- DebugInfo: &validationutils.DebugInfo{
3309
- FedConfig: configureDebugInfo,
3310
- },
3311
- }
3312
- return []validationutils.ValidationOutput{result}, nil
3313
- }
3314
-
3315
- }
3316
-
3317
- result := validationutils.ValidationOutput{
3318
- TestName: "REQUIRED_COMPLAINANT_CONTACT_PHONE",
3319
- Valid: valid,
3320
- Code: 0,
3321
- DebugInfo: &validationutils.DebugInfo{
3322
- FedConfig: configureDebugInfo,
3323
- },
3324
- }
3325
-
3326
- if valid {
3327
- result.Code = 200
3328
- } else {
3329
- result.Code = 30000
3330
- }
3331
-
3332
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3333
- results = append(results, result)
3334
- results = append(results, subResults...)
3335
-
3336
- return results, nil
3337
- }
3338
- var REQUIRED_ORDER_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3339
-
3340
- if input.Config.SkipTestsDict != nil {
3341
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ORDER_ID"]; skip {
3342
- return []validationutils.ValidationOutput{}, nil
3343
- }
3344
- }
3345
-
3346
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3347
-
3348
- subResults := make([]validationutils.ValidationOutput, 0)
3349
- valid := true
3350
- configureDebugInfo := ""
3351
- for _, testObjMap := range scope {
3352
- validationutils.UnusedFunction(testObjMap)
3353
-
3354
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.order_details.id", true)
3355
- validationutils.UnusedFunction(attr)
3356
-
3357
- validate := validationutils.ArePresent(attr)
3358
-
3359
- configureDebugInfo = `{"_NAME_":"REQUIRED_ORDER_ID","attr":"$.message.issue.order_details.id","_RETURN_":"attr are present","action":["issue"]}`
3360
-
3361
- if !validate {
3362
- result := validationutils.ValidationOutput{
3363
- TestName: "REQUIRED_ORDER_ID",
3364
- Valid: false,
3365
- Code: 30000,
3366
- Description: `#### **REQUIRED_ORDER_ID**
3367
-
3368
- - $.message.issue.order_details.id must be present in the payload`,
3369
- DebugInfo: &validationutils.DebugInfo{
3370
- FedConfig: configureDebugInfo,
3371
- },
3372
- }
3373
- return []validationutils.ValidationOutput{result}, nil
3374
- }
3375
-
3376
- }
3377
-
3378
- result := validationutils.ValidationOutput{
3379
- TestName: "REQUIRED_ORDER_ID",
3380
- Valid: valid,
3381
- Code: 0,
3382
- DebugInfo: &validationutils.DebugInfo{
3383
- FedConfig: configureDebugInfo,
3384
- },
3385
- }
3386
-
3387
- if valid {
3388
- result.Code = 200
3389
- } else {
3390
- result.Code = 30000
3391
- }
3392
-
3393
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3394
- results = append(results, result)
3395
- results = append(results, subResults...)
3396
-
3397
- return results, nil
3398
- }
3399
- var REQUIRED_ORDER_ITEMS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3400
-
3401
- if input.Config.SkipTestsDict != nil {
3402
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ORDER_ITEMS"]; skip {
3403
- return []validationutils.ValidationOutput{}, nil
3404
- }
3405
- }
3406
-
3407
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3408
-
3409
- subResults := make([]validationutils.ValidationOutput, 0)
3410
- valid := true
3411
- configureDebugInfo := ""
3412
- for _, testObjMap := range scope {
3413
- validationutils.UnusedFunction(testObjMap)
3414
-
3415
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.order_details.items[*].id", true)
3416
- validationutils.UnusedFunction(attr)
3417
-
3418
- validate := validationutils.ArePresent(attr)
3419
-
3420
- configureDebugInfo = `{"_NAME_":"REQUIRED_ORDER_ITEMS","attr":"$.message.issue.order_details.items[*].id","_RETURN_":"attr are present","action":["issue"]}`
3421
-
3422
- if !validate {
3423
- result := validationutils.ValidationOutput{
3424
- TestName: "REQUIRED_ORDER_ITEMS",
3425
- Valid: false,
3426
- Code: 30000,
3427
- Description: `#### **REQUIRED_ORDER_ITEMS**
3428
-
3429
- - $.message.issue.order_details.items[*].id must be present in the payload`,
3430
- DebugInfo: &validationutils.DebugInfo{
3431
- FedConfig: configureDebugInfo,
3432
- },
3433
- }
3434
- return []validationutils.ValidationOutput{result}, nil
3435
- }
3436
-
3437
- }
3438
-
3439
- result := validationutils.ValidationOutput{
3440
- TestName: "REQUIRED_ORDER_ITEMS",
3441
- Valid: valid,
3442
- Code: 0,
3443
- DebugInfo: &validationutils.DebugInfo{
3444
- FedConfig: configureDebugInfo,
3445
- },
3446
- }
3447
-
3448
- if valid {
3449
- result.Code = 200
3450
- } else {
3451
- result.Code = 30000
3452
- }
3453
-
3454
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3455
- results = append(results, result)
3456
- results = append(results, subResults...)
3457
-
3458
- return results, nil
3459
- }
3460
- var REQUIRED_ORDER_ITEMS_QUANTITY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3461
-
3462
- if input.Config.SkipTestsDict != nil {
3463
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ORDER_ITEMS_QUANTITY"]; skip {
3464
- return []validationutils.ValidationOutput{}, nil
3465
- }
3466
- }
3467
-
3468
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3469
-
3470
- subResults := make([]validationutils.ValidationOutput, 0)
3471
- valid := true
3472
- configureDebugInfo := ""
3473
- for _, testObjMap := range scope {
3474
- validationutils.UnusedFunction(testObjMap)
3475
-
3476
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.order_details.items[*].quantity", true)
3477
- validationutils.UnusedFunction(attr)
3478
-
3479
- validate := validationutils.ArePresent(attr)
3480
-
3481
- configureDebugInfo = `{"_NAME_":"REQUIRED_ORDER_ITEMS_QUANTITY","attr":"$.message.issue.order_details.items[*].quantity","_RETURN_":"attr are present","action":["issue"]}`
3482
-
3483
- if !validate {
3484
- result := validationutils.ValidationOutput{
3485
- TestName: "REQUIRED_ORDER_ITEMS_QUANTITY",
3486
- Valid: false,
3487
- Code: 30000,
3488
- Description: `#### **REQUIRED_ORDER_ITEMS_QUANTITY**
3489
-
3490
- - $.message.issue.order_details.items[*].quantity must be present in the payload`,
3491
- DebugInfo: &validationutils.DebugInfo{
3492
- FedConfig: configureDebugInfo,
3493
- },
3494
- }
3495
- return []validationutils.ValidationOutput{result}, nil
3496
- }
3497
-
3498
- }
3499
-
3500
- result := validationutils.ValidationOutput{
3501
- TestName: "REQUIRED_ORDER_ITEMS_QUANTITY",
3502
- Valid: valid,
3503
- Code: 0,
3504
- DebugInfo: &validationutils.DebugInfo{
3505
- FedConfig: configureDebugInfo,
3506
- },
3507
- }
3508
-
3509
- if valid {
3510
- result.Code = 200
3511
- } else {
3512
- result.Code = 30000
3513
- }
3514
-
3515
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3516
- results = append(results, result)
3517
- results = append(results, subResults...)
3518
-
3519
- return results, nil
3520
- }
3521
- var REQUIRED_FULFILLMENT_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3522
-
3523
- if input.Config.SkipTestsDict != nil {
3524
- if _, skip := input.Config.SkipTestsDict["REQUIRED_FULFILLMENT_ID"]; skip {
3525
- return []validationutils.ValidationOutput{}, nil
3526
- }
3527
- }
3528
-
3529
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3530
-
3531
- subResults := make([]validationutils.ValidationOutput, 0)
3532
- valid := true
3533
- configureDebugInfo := ""
3534
- for _, testObjMap := range scope {
3535
- validationutils.UnusedFunction(testObjMap)
3536
-
3537
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.order_details.fulfillments[*].id", true)
3538
- validationutils.UnusedFunction(attr)
3539
-
3540
- validate := validationutils.ArePresent(attr)
3541
-
3542
- configureDebugInfo = `{"_NAME_":"REQUIRED_FULFILLMENT_ID","attr":"$.message.issue.order_details.fulfillments[*].id","_RETURN_":"attr are present","action":["issue"]}`
3543
-
3544
- if !validate {
3545
- result := validationutils.ValidationOutput{
3546
- TestName: "REQUIRED_FULFILLMENT_ID",
3547
- Valid: false,
3548
- Code: 30000,
3549
- Description: `#### **REQUIRED_FULFILLMENT_ID**
3550
-
3551
- - $.message.issue.order_details.fulfillments[*].id must be present in the payload`,
3552
- DebugInfo: &validationutils.DebugInfo{
3553
- FedConfig: configureDebugInfo,
3554
- },
3555
- }
3556
- return []validationutils.ValidationOutput{result}, nil
3557
- }
3558
-
3559
- }
3560
-
3561
- result := validationutils.ValidationOutput{
3562
- TestName: "REQUIRED_FULFILLMENT_ID",
3563
- Valid: valid,
3564
- Code: 0,
3565
- DebugInfo: &validationutils.DebugInfo{
3566
- FedConfig: configureDebugInfo,
3567
- },
3568
- }
3569
-
3570
- if valid {
3571
- result.Code = 200
3572
- } else {
3573
- result.Code = 30000
3574
- }
3575
-
3576
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3577
- results = append(results, result)
3578
- results = append(results, subResults...)
3579
-
3580
- return results, nil
3581
- }
3582
- var REQUIRED_PROVIDER_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3583
-
3584
- if input.Config.SkipTestsDict != nil {
3585
- if _, skip := input.Config.SkipTestsDict["REQUIRED_PROVIDER_ID"]; skip {
3586
- return []validationutils.ValidationOutput{}, nil
3587
- }
3588
- }
3589
-
3590
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3591
-
3592
- subResults := make([]validationutils.ValidationOutput, 0)
3593
- valid := true
3594
- configureDebugInfo := ""
3595
- for _, testObjMap := range scope {
3596
- validationutils.UnusedFunction(testObjMap)
3597
-
3598
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.order_details.provider_id", true)
3599
- validationutils.UnusedFunction(attr)
3600
-
3601
- validate := validationutils.ArePresent(attr)
3602
-
3603
- configureDebugInfo = `{"_NAME_":"REQUIRED_PROVIDER_ID","attr":"$.message.issue.order_details.provider_id","_RETURN_":"attr are present","action":["issue"]}`
3604
-
3605
- if !validate {
3606
- result := validationutils.ValidationOutput{
3607
- TestName: "REQUIRED_PROVIDER_ID",
3608
- Valid: false,
3609
- Code: 30000,
3610
- Description: `#### **REQUIRED_PROVIDER_ID**
3611
-
3612
- - $.message.issue.order_details.provider_id must be present in the payload`,
3613
- DebugInfo: &validationutils.DebugInfo{
3614
- FedConfig: configureDebugInfo,
3615
- },
3616
- }
3617
- return []validationutils.ValidationOutput{result}, nil
3618
- }
3619
-
3620
- }
3621
-
3622
- result := validationutils.ValidationOutput{
3623
- TestName: "REQUIRED_PROVIDER_ID",
3624
- Valid: valid,
3625
- Code: 0,
3626
- DebugInfo: &validationutils.DebugInfo{
3627
- FedConfig: configureDebugInfo,
3628
- },
3629
- }
3630
-
3631
- if valid {
3632
- result.Code = 200
3633
- } else {
3634
- result.Code = 30000
3635
- }
3636
-
3637
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3638
- results = append(results, result)
3639
- results = append(results, subResults...)
3640
-
3641
- return results, nil
3642
- }
3643
- var REQUIRED_DESCRIPTION = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3644
-
3645
- if input.Config.SkipTestsDict != nil {
3646
- if _, skip := input.Config.SkipTestsDict["REQUIRED_DESCRIPTION"]; skip {
3647
- return []validationutils.ValidationOutput{}, nil
3648
- }
3649
- }
3650
-
3651
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3652
-
3653
- subResults := make([]validationutils.ValidationOutput, 0)
3654
- valid := true
3655
- configureDebugInfo := ""
3656
- for _, testObjMap := range scope {
3657
- validationutils.UnusedFunction(testObjMap)
3658
-
3659
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.description`})
3660
- validationutils.UnusedFunction(attr)
3661
-
3662
- validate := validationutils.ArePresent(attr)
3663
-
3664
- configureDebugInfo = `{"_NAME_":"REQUIRED_DESCRIPTION","attr":["$.message.issue.description"],"_RETURN_":"attr are present","action":["issue"]}`
3665
-
3666
- if !validate {
3667
- result := validationutils.ValidationOutput{
3668
- TestName: "REQUIRED_DESCRIPTION",
3669
- Valid: false,
3670
- Code: 30000,
3671
- Description: `#### **REQUIRED_DESCRIPTION**
3672
-
3673
- - ["$.message.issue.description"] must be present in the payload`,
3674
- DebugInfo: &validationutils.DebugInfo{
3675
- FedConfig: configureDebugInfo,
3676
- },
3677
- }
3678
- return []validationutils.ValidationOutput{result}, nil
3679
- }
3680
-
3681
- }
3682
-
3683
- result := validationutils.ValidationOutput{
3684
- TestName: "REQUIRED_DESCRIPTION",
3685
- Valid: valid,
3686
- Code: 0,
3687
- DebugInfo: &validationutils.DebugInfo{
3688
- FedConfig: configureDebugInfo,
3689
- },
3690
- }
3691
-
3692
- if valid {
3693
- result.Code = 200
3694
- } else {
3695
- result.Code = 30000
3696
- }
3697
-
3698
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3699
- results = append(results, result)
3700
- results = append(results, subResults...)
3701
-
3702
- return results, nil
3703
- }
3704
- var REQUIRED_DESCRIPTION_SHORT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3705
-
3706
- if input.Config.SkipTestsDict != nil {
3707
- if _, skip := input.Config.SkipTestsDict["REQUIRED_DESCRIPTION_SHORT"]; skip {
3708
- return []validationutils.ValidationOutput{}, nil
3709
- }
3710
- }
3711
-
3712
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3713
-
3714
- subResults := make([]validationutils.ValidationOutput, 0)
3715
- valid := true
3716
- configureDebugInfo := ""
3717
- for _, testObjMap := range scope {
3718
- validationutils.UnusedFunction(testObjMap)
3719
-
3720
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.description.short_desc`})
3721
- validationutils.UnusedFunction(attr)
3722
-
3723
- validate := validationutils.ArePresent(attr)
3724
-
3725
- configureDebugInfo = `{"_NAME_":"REQUIRED_DESCRIPTION_SHORT","attr":["$.message.issue.description.short_desc"],"_RETURN_":"attr are present","action":["issue"]}`
3726
-
3727
- if !validate {
3728
- result := validationutils.ValidationOutput{
3729
- TestName: "REQUIRED_DESCRIPTION_SHORT",
3730
- Valid: false,
3731
- Code: 30000,
3732
- Description: `#### **REQUIRED_DESCRIPTION_SHORT**
3733
-
3734
- - ["$.message.issue.description.short_desc"] must be present in the payload`,
3735
- DebugInfo: &validationutils.DebugInfo{
3736
- FedConfig: configureDebugInfo,
3737
- },
3738
- }
3739
- return []validationutils.ValidationOutput{result}, nil
3740
- }
3741
-
3742
- }
3743
-
3744
- result := validationutils.ValidationOutput{
3745
- TestName: "REQUIRED_DESCRIPTION_SHORT",
3746
- Valid: valid,
3747
- Code: 0,
3748
- DebugInfo: &validationutils.DebugInfo{
3749
- FedConfig: configureDebugInfo,
3750
- },
3751
- }
3752
-
3753
- if valid {
3754
- result.Code = 200
3755
- } else {
3756
- result.Code = 30000
3757
- }
3758
-
3759
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3760
- results = append(results, result)
3761
- results = append(results, subResults...)
3762
-
3763
- return results, nil
3764
- }
3765
- var REQUIRED_DESCRIPTION_LONG = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3766
-
3767
- if input.Config.SkipTestsDict != nil {
3768
- if _, skip := input.Config.SkipTestsDict["REQUIRED_DESCRIPTION_LONG"]; skip {
3769
- return []validationutils.ValidationOutput{}, nil
3770
- }
3771
- }
3772
-
3773
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3774
-
3775
- subResults := make([]validationutils.ValidationOutput, 0)
3776
- valid := true
3777
- configureDebugInfo := ""
3778
- for _, testObjMap := range scope {
3779
- validationutils.UnusedFunction(testObjMap)
3780
-
3781
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.description.long_desc`})
3782
- validationutils.UnusedFunction(attr)
3783
-
3784
- validate := validationutils.ArePresent(attr)
3785
-
3786
- configureDebugInfo = `{"_NAME_":"REQUIRED_DESCRIPTION_LONG","attr":["$.message.issue.description.long_desc"],"_RETURN_":"attr are present","action":["issue"]}`
3787
-
3788
- if !validate {
3789
- result := validationutils.ValidationOutput{
3790
- TestName: "REQUIRED_DESCRIPTION_LONG",
3791
- Valid: false,
3792
- Code: 30000,
3793
- Description: `#### **REQUIRED_DESCRIPTION_LONG**
3794
-
3795
- - ["$.message.issue.description.long_desc"] must be present in the payload`,
3796
- DebugInfo: &validationutils.DebugInfo{
3797
- FedConfig: configureDebugInfo,
3798
- },
3799
- }
3800
- return []validationutils.ValidationOutput{result}, nil
3801
- }
3802
-
3803
- }
3804
-
3805
- result := validationutils.ValidationOutput{
3806
- TestName: "REQUIRED_DESCRIPTION_LONG",
3807
- Valid: valid,
3808
- Code: 0,
3809
- DebugInfo: &validationutils.DebugInfo{
3810
- FedConfig: configureDebugInfo,
3811
- },
3812
- }
3813
-
3814
- if valid {
3815
- result.Code = 200
3816
- } else {
3817
- result.Code = 30000
3818
- }
3819
-
3820
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3821
- results = append(results, result)
3822
- results = append(results, subResults...)
3823
-
3824
- return results, nil
3825
- }
3826
- var REQUIRED_DESCRIPTION_ADDITIONAL_URL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3827
-
3828
- if input.Config.SkipTestsDict != nil {
3829
- if _, skip := input.Config.SkipTestsDict["REQUIRED_DESCRIPTION_ADDITIONAL_URL"]; skip {
3830
- return []validationutils.ValidationOutput{}, nil
3831
- }
3832
- }
3833
-
3834
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3835
-
3836
- subResults := make([]validationutils.ValidationOutput, 0)
3837
- valid := true
3838
- configureDebugInfo := ""
3839
- for _, testObjMap := range scope {
3840
- validationutils.UnusedFunction(testObjMap)
3841
-
3842
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.description.additional_desc.url`})
3843
- validationutils.UnusedFunction(attr)
3844
-
3845
- validate := validationutils.ArePresent(attr)
3846
-
3847
- configureDebugInfo = `{"_NAME_":"REQUIRED_DESCRIPTION_ADDITIONAL_URL","attr":["$.message.issue.description.additional_desc.url"],"_RETURN_":"attr are present","action":["issue"]}`
3848
-
3849
- if !validate {
3850
- result := validationutils.ValidationOutput{
3851
- TestName: "REQUIRED_DESCRIPTION_ADDITIONAL_URL",
3852
- Valid: false,
3853
- Code: 30000,
3854
- Description: `#### **REQUIRED_DESCRIPTION_ADDITIONAL_URL**
3855
-
3856
- - ["$.message.issue.description.additional_desc.url"] must be present in the payload`,
3857
- DebugInfo: &validationutils.DebugInfo{
3858
- FedConfig: configureDebugInfo,
3859
- },
3860
- }
3861
- return []validationutils.ValidationOutput{result}, nil
3862
- }
3863
-
3864
- }
3865
-
3866
- result := validationutils.ValidationOutput{
3867
- TestName: "REQUIRED_DESCRIPTION_ADDITIONAL_URL",
3868
- Valid: valid,
3869
- Code: 0,
3870
- DebugInfo: &validationutils.DebugInfo{
3871
- FedConfig: configureDebugInfo,
3872
- },
3873
- }
3874
-
3875
- if valid {
3876
- result.Code = 200
3877
- } else {
3878
- result.Code = 30000
3879
- }
3880
-
3881
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3882
- results = append(results, result)
3883
- results = append(results, subResults...)
3884
-
3885
- return results, nil
3886
- }
3887
- var REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3888
-
3889
- if input.Config.SkipTestsDict != nil {
3890
- if _, skip := input.Config.SkipTestsDict["REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE"]; skip {
3891
- return []validationutils.ValidationOutput{}, nil
3892
- }
3893
- }
3894
-
3895
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3896
-
3897
- subResults := make([]validationutils.ValidationOutput, 0)
3898
- valid := true
3899
- configureDebugInfo := ""
3900
- for _, testObjMap := range scope {
3901
- validationutils.UnusedFunction(testObjMap)
3902
-
3903
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.description.additional_desc.content_type`})
3904
- validationutils.UnusedFunction(attr)
3905
-
3906
- validate := validationutils.ArePresent(attr)
3907
-
3908
- configureDebugInfo = `{"_NAME_":"REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE","attr":["$.message.issue.description.additional_desc.content_type"],"_RETURN_":"attr are present","action":["issue"]}`
3909
-
3910
- if !validate {
3911
- result := validationutils.ValidationOutput{
3912
- TestName: "REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE",
3913
- Valid: false,
3914
- Code: 30000,
3915
- Description: `#### **REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE**
3916
-
3917
- - ["$.message.issue.description.additional_desc.content_type"] must be present in the payload`,
3918
- DebugInfo: &validationutils.DebugInfo{
3919
- FedConfig: configureDebugInfo,
3920
- },
3921
- }
3922
- return []validationutils.ValidationOutput{result}, nil
3923
- }
3924
-
3925
- }
3926
-
3927
- result := validationutils.ValidationOutput{
3928
- TestName: "REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE",
3929
- Valid: valid,
3930
- Code: 0,
3931
- DebugInfo: &validationutils.DebugInfo{
3932
- FedConfig: configureDebugInfo,
3933
- },
3934
- }
3935
-
3936
- if valid {
3937
- result.Code = 200
3938
- } else {
3939
- result.Code = 30000
3940
- }
3941
-
3942
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
3943
- results = append(results, result)
3944
- results = append(results, subResults...)
3945
-
3946
- return results, nil
3947
- }
3948
- var REQUIRED_DESCRIPTION_IMAGES = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
3949
-
3950
- if input.Config.SkipTestsDict != nil {
3951
- if _, skip := input.Config.SkipTestsDict["REQUIRED_DESCRIPTION_IMAGES"]; skip {
3952
- return []validationutils.ValidationOutput{}, nil
3953
- }
3954
- }
3955
-
3956
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
3957
-
3958
- subResults := make([]validationutils.ValidationOutput, 0)
3959
- valid := true
3960
- configureDebugInfo := ""
3961
- for _, testObjMap := range scope {
3962
- validationutils.UnusedFunction(testObjMap)
3963
-
3964
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.description.images`})
3965
- validationutils.UnusedFunction(attr)
3966
-
3967
- validate := validationutils.ArePresent(attr)
3968
-
3969
- configureDebugInfo = `{"_NAME_":"REQUIRED_DESCRIPTION_IMAGES","attr":["$.message.issue.description.images"],"_RETURN_":"attr are present","action":["issue"]}`
3970
-
3971
- if !validate {
3972
- result := validationutils.ValidationOutput{
3973
- TestName: "REQUIRED_DESCRIPTION_IMAGES",
3974
- Valid: false,
3975
- Code: 30000,
3976
- Description: `#### **REQUIRED_DESCRIPTION_IMAGES**
3977
-
3978
- - ["$.message.issue.description.images"] must be present in the payload`,
3979
- DebugInfo: &validationutils.DebugInfo{
3980
- FedConfig: configureDebugInfo,
3981
- },
3982
- }
3983
- return []validationutils.ValidationOutput{result}, nil
3984
- }
3985
-
3986
- }
3987
-
3988
- result := validationutils.ValidationOutput{
3989
- TestName: "REQUIRED_DESCRIPTION_IMAGES",
3990
- Valid: valid,
3991
- Code: 0,
3992
- DebugInfo: &validationutils.DebugInfo{
3993
- FedConfig: configureDebugInfo,
3994
- },
3995
- }
3996
-
3997
- if valid {
3998
- result.Code = 200
3999
- } else {
4000
- result.Code = 30000
4001
- }
4002
-
4003
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4004
- results = append(results, result)
4005
- results = append(results, subResults...)
4006
-
4007
- return results, nil
4008
- }
4009
- var REQUIRED_EXPECTED_RESPONSE_TIME = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4010
-
4011
- if input.Config.SkipTestsDict != nil {
4012
- if _, skip := input.Config.SkipTestsDict["REQUIRED_EXPECTED_RESPONSE_TIME"]; skip {
4013
- return []validationutils.ValidationOutput{}, nil
4014
- }
4015
- }
4016
-
4017
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4018
-
4019
- subResults := make([]validationutils.ValidationOutput, 0)
4020
- valid := true
4021
- configureDebugInfo := ""
4022
- for _, testObjMap := range scope {
4023
- validationutils.UnusedFunction(testObjMap)
4024
-
4025
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.expected_response_time.duration`})
4026
- validationutils.UnusedFunction(attr)
4027
-
4028
- validate := validationutils.ArePresent(attr)
4029
-
4030
- configureDebugInfo = `{"_NAME_":"REQUIRED_EXPECTED_RESPONSE_TIME","attr":["$.message.issue.expected_response_time.duration"],"_RETURN_":"attr are present","action":["issue"]}`
4031
-
4032
- if !validate {
4033
- result := validationutils.ValidationOutput{
4034
- TestName: "REQUIRED_EXPECTED_RESPONSE_TIME",
4035
- Valid: false,
4036
- Code: 30000,
4037
- Description: `#### **REQUIRED_EXPECTED_RESPONSE_TIME**
4038
-
4039
- - ["$.message.issue.expected_response_time.duration"] must be present in the payload`,
4040
- DebugInfo: &validationutils.DebugInfo{
4041
- FedConfig: configureDebugInfo,
4042
- },
4043
- }
4044
- return []validationutils.ValidationOutput{result}, nil
4045
- }
4046
-
4047
- }
4048
-
4049
- result := validationutils.ValidationOutput{
4050
- TestName: "REQUIRED_EXPECTED_RESPONSE_TIME",
4051
- Valid: valid,
4052
- Code: 0,
4053
- DebugInfo: &validationutils.DebugInfo{
4054
- FedConfig: configureDebugInfo,
4055
- },
4056
- }
4057
-
4058
- if valid {
4059
- result.Code = 200
4060
- } else {
4061
- result.Code = 30000
4062
- }
4063
-
4064
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4065
- results = append(results, result)
4066
- results = append(results, subResults...)
4067
-
4068
- return results, nil
4069
- }
4070
- var REQUIRED_EXPECTED_RESOLUTION_TIME = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4071
-
4072
- if input.Config.SkipTestsDict != nil {
4073
- if _, skip := input.Config.SkipTestsDict["REQUIRED_EXPECTED_RESOLUTION_TIME"]; skip {
4074
- return []validationutils.ValidationOutput{}, nil
4075
- }
4076
- }
4077
-
4078
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4079
-
4080
- subResults := make([]validationutils.ValidationOutput, 0)
4081
- valid := true
4082
- configureDebugInfo := ""
4083
- for _, testObjMap := range scope {
4084
- validationutils.UnusedFunction(testObjMap)
4085
-
4086
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.expected_resolution_time.duration`})
4087
- validationutils.UnusedFunction(attr)
4088
-
4089
- validate := validationutils.ArePresent(attr)
4090
-
4091
- configureDebugInfo = `{"_NAME_":"REQUIRED_EXPECTED_RESOLUTION_TIME","attr":["$.message.issue.expected_resolution_time.duration"],"_RETURN_":"attr are present","action":["issue"]}`
4092
-
4093
- if !validate {
4094
- result := validationutils.ValidationOutput{
4095
- TestName: "REQUIRED_EXPECTED_RESOLUTION_TIME",
4096
- Valid: false,
4097
- Code: 30000,
4098
- Description: `#### **REQUIRED_EXPECTED_RESOLUTION_TIME**
4099
-
4100
- - ["$.message.issue.expected_resolution_time.duration"] must be present in the payload`,
4101
- DebugInfo: &validationutils.DebugInfo{
4102
- FedConfig: configureDebugInfo,
4103
- },
4104
- }
4105
- return []validationutils.ValidationOutput{result}, nil
4106
- }
4107
-
4108
- }
4109
-
4110
- result := validationutils.ValidationOutput{
4111
- TestName: "REQUIRED_EXPECTED_RESOLUTION_TIME",
4112
- Valid: valid,
4113
- Code: 0,
4114
- DebugInfo: &validationutils.DebugInfo{
4115
- FedConfig: configureDebugInfo,
4116
- },
4117
- }
4118
-
4119
- if valid {
4120
- result.Code = 200
4121
- } else {
4122
- result.Code = 30000
4123
- }
4124
-
4125
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4126
- results = append(results, result)
4127
- results = append(results, subResults...)
4128
-
4129
- return results, nil
4130
- }
4131
- var REQUIRED_ISSUE_ACTIONS_OPEN = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4132
-
4133
- if input.Config.SkipTestsDict != nil {
4134
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_ACTIONS_OPEN"]; skip {
4135
- return []validationutils.ValidationOutput{}, nil
4136
- }
4137
- }
4138
-
4139
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4140
-
4141
- subResults := make([]validationutils.ValidationOutput, 0)
4142
- valid := true
4143
- configureDebugInfo := ""
4144
- for _, testObjMap := range scope {
4145
- validationutils.UnusedFunction(testObjMap)
4146
-
4147
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.complainant_actions[*].complainant_action", true)
4148
- validationutils.UnusedFunction(attr)
4149
- validValues := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSE`, `ESCALATE`})
4150
- validationutils.UnusedFunction(validValues)
4151
-
4152
- validate := validationutils.AllIn(attr, validValues)
4153
-
4154
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_ACTIONS_OPEN","attr":"$.message.issue.issue_actions.complainant_actions[*].complainant_action","validValues":["OPEN","CLOSE","ESCALATE"],"_RETURN_":"attr all in validValues","action":["issue"]}`
4155
-
4156
- if !validate {
4157
- result := validationutils.ValidationOutput{
4158
- TestName: "REQUIRED_ISSUE_ACTIONS_OPEN",
4159
- Valid: false,
4160
- Code: 30000,
4161
- Description: `#### **REQUIRED_ISSUE_ACTIONS_OPEN**
4162
-
4163
- - All elements of $.message.issue.issue_actions.complainant_actions[*].complainant_action must be in ["OPEN", "CLOSE", "ESCALATE"]`,
4164
- DebugInfo: &validationutils.DebugInfo{
4165
- FedConfig: configureDebugInfo,
4166
- },
4167
- }
4168
- return []validationutils.ValidationOutput{result}, nil
4169
- }
4170
-
4171
- }
4172
-
4173
- result := validationutils.ValidationOutput{
4174
- TestName: "REQUIRED_ISSUE_ACTIONS_OPEN",
4175
- Valid: valid,
4176
- Code: 0,
4177
- DebugInfo: &validationutils.DebugInfo{
4178
- FedConfig: configureDebugInfo,
4179
- },
4180
- }
4181
-
4182
- if valid {
4183
- result.Code = 200
4184
- } else {
4185
- result.Code = 30000
4186
- }
4187
-
4188
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4189
- results = append(results, result)
4190
- results = append(results, subResults...)
4191
-
4192
- return results, nil
4193
- }
4194
- var REQUIRED_CREATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4195
-
4196
- if input.Config.SkipTestsDict != nil {
4197
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CREATED_AT"]; skip {
4198
- return []validationutils.ValidationOutput{}, nil
4199
- }
4200
- }
4201
-
4202
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4203
-
4204
- subResults := make([]validationutils.ValidationOutput, 0)
4205
- valid := true
4206
- configureDebugInfo := ""
4207
- for _, testObjMap := range scope {
4208
- validationutils.UnusedFunction(testObjMap)
4209
-
4210
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.created_at", true)
4211
- validationutils.UnusedFunction(attr)
4212
-
4213
- validate := validationutils.ArePresent(attr)
4214
-
4215
- configureDebugInfo = `{"_NAME_":"REQUIRED_CREATED_AT","attr":"$.message.issue.created_at","_RETURN_":"attr are present","action":["issue"]}`
4216
-
4217
- if !validate {
4218
- result := validationutils.ValidationOutput{
4219
- TestName: "REQUIRED_CREATED_AT",
4220
- Valid: false,
4221
- Code: 30000,
4222
- Description: `#### **REQUIRED_CREATED_AT**
4223
-
4224
- - $.message.issue.created_at must be present in the payload`,
4225
- DebugInfo: &validationutils.DebugInfo{
4226
- FedConfig: configureDebugInfo,
4227
- },
4228
- }
4229
- return []validationutils.ValidationOutput{result}, nil
4230
- }
4231
-
4232
- }
4233
-
4234
- result := validationutils.ValidationOutput{
4235
- TestName: "REQUIRED_CREATED_AT",
4236
- Valid: valid,
4237
- Code: 0,
4238
- DebugInfo: &validationutils.DebugInfo{
4239
- FedConfig: configureDebugInfo,
4240
- },
4241
- }
4242
-
4243
- if valid {
4244
- result.Code = 200
4245
- } else {
4246
- result.Code = 30000
4247
- }
4248
-
4249
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4250
- results = append(results, result)
4251
- results = append(results, subResults...)
4252
-
4253
- return results, nil
4254
- }
4255
- var REQUIRED_UPDATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4256
-
4257
- if input.Config.SkipTestsDict != nil {
4258
- if _, skip := input.Config.SkipTestsDict["REQUIRED_UPDATED_AT"]; skip {
4259
- return []validationutils.ValidationOutput{}, nil
4260
- }
4261
- }
4262
-
4263
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4264
-
4265
- subResults := make([]validationutils.ValidationOutput, 0)
4266
- valid := true
4267
- configureDebugInfo := ""
4268
- for _, testObjMap := range scope {
4269
- validationutils.UnusedFunction(testObjMap)
4270
-
4271
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.updated_at", true)
4272
- validationutils.UnusedFunction(attr)
4273
-
4274
- validate := validationutils.ArePresent(attr)
4275
-
4276
- configureDebugInfo = `{"_NAME_":"REQUIRED_UPDATED_AT","attr":"$.message.issue.updated_at","_RETURN_":"attr are present","action":["issue"]}`
4277
-
4278
- if !validate {
4279
- result := validationutils.ValidationOutput{
4280
- TestName: "REQUIRED_UPDATED_AT",
4281
- Valid: false,
4282
- Code: 30000,
4283
- Description: `#### **REQUIRED_UPDATED_AT**
4284
-
4285
- - $.message.issue.updated_at must be present in the payload`,
4286
- DebugInfo: &validationutils.DebugInfo{
4287
- FedConfig: configureDebugInfo,
4288
- },
4289
- }
4290
- return []validationutils.ValidationOutput{result}, nil
4291
- }
4292
-
4293
- }
4294
-
4295
- result := validationutils.ValidationOutput{
4296
- TestName: "REQUIRED_UPDATED_AT",
4297
- Valid: valid,
4298
- Code: 0,
4299
- DebugInfo: &validationutils.DebugInfo{
4300
- FedConfig: configureDebugInfo,
4301
- },
4302
- }
4303
-
4304
- if valid {
4305
- result.Code = 200
4306
- } else {
4307
- result.Code = 30000
4308
- }
4309
-
4310
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4311
- results = append(results, result)
4312
- results = append(results, subResults...)
4313
-
4314
- return results, nil
4315
- }
4316
-
4317
- var testFunctions = validationutils.TestFunctionArray{
4318
- REQUIRED_ISSUE_ID,
4319
- REQUIRED_ISSUE_STATUS,
4320
- REQUIRED_ISSUE_CATEGORY,
4321
- REQUIRED_ISSUE_SUB_CATEGORY,
4322
- REQUIRED_COMPLAINANT_PERSON_NAME,
4323
- REQUIRED_COMPLAINANT_CONTACT_PHONE,
4324
- REQUIRED_ORDER_ID,
4325
- REQUIRED_ORDER_ITEMS,
4326
- REQUIRED_ORDER_ITEMS_QUANTITY,
4327
- REQUIRED_FULFILLMENT_ID,
4328
- REQUIRED_PROVIDER_ID,
4329
- REQUIRED_DESCRIPTION,
4330
- REQUIRED_DESCRIPTION_SHORT,
4331
- REQUIRED_DESCRIPTION_LONG,
4332
- REQUIRED_DESCRIPTION_ADDITIONAL_URL,
4333
- REQUIRED_DESCRIPTION_ADDITIONAL_CONTENT_TYPE,
4334
- REQUIRED_DESCRIPTION_IMAGES,
4335
- REQUIRED_EXPECTED_RESPONSE_TIME,
4336
- REQUIRED_EXPECTED_RESOLUTION_TIME,
4337
- REQUIRED_ISSUE_ACTIONS_OPEN,
4338
- REQUIRED_CREATED_AT,
4339
- REQUIRED_UPDATED_AT,
4340
- }
4341
-
4342
- allResults := make([]validationutils.ValidationOutput, 0)
4343
-
4344
- for _, testFunc := range testFunctions {
4345
- results, err := testFunc(input)
4346
- if err != nil {
4347
- return nil, err
4348
- }
4349
- allResults = append(allResults, results...)
4350
- }
4351
-
4352
- subResults = allResults
4353
- // if all subResults are valid, then valid is true
4354
- valid = true
4355
- for _, res := range subResults {
4356
- if !res.Valid {
4357
- valid = false
4358
- break
4359
- }
4360
- }
4361
-
4362
- configureDebugInfo = `NESTED_TEST_OBJECT`
4363
-
4364
- }
4365
-
4366
- result := validationutils.ValidationOutput{
4367
- TestName: "ISSUE_VALIDATION_OPEN",
4368
- Valid: valid,
4369
- Code: 0,
4370
- DebugInfo: &validationutils.DebugInfo{
4371
- FedConfig: configureDebugInfo,
4372
- },
4373
- }
4374
-
4375
- if valid {
4376
- result.Code = 200
4377
- } else {
4378
- result.Code = 30000
4379
- }
4380
-
4381
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4382
- results = append(results, result)
4383
- results = append(results, subResults...)
4384
-
4385
- return results, nil
4386
- }
4387
- var ISSUE_VALIDATION_CLOSED = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4388
-
4389
- if input.Config.SkipTestsDict != nil {
4390
- if _, skip := input.Config.SkipTestsDict["ISSUE_VALIDATION_CLOSED"]; skip {
4391
- return []validationutils.ValidationOutput{}, nil
4392
- }
4393
- }
4394
-
4395
- scope := validationutils.GetJsonPath(input.Payload, "$.message.issue[?(@.status=='CLOSED')]", true)
4396
-
4397
- subResults := make([]validationutils.ValidationOutput, 0)
4398
- valid := true
4399
- configureDebugInfo := ""
4400
- for _, testObjMap := range scope {
4401
- validationutils.UnusedFunction(testObjMap)
4402
-
4403
- var REQUIRED_ISSUE_ID_CLOSED = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4404
-
4405
- if input.Config.SkipTestsDict != nil {
4406
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_ID_CLOSED"]; skip {
4407
- return []validationutils.ValidationOutput{}, nil
4408
- }
4409
- }
4410
-
4411
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4412
-
4413
- subResults := make([]validationutils.ValidationOutput, 0)
4414
- valid := true
4415
- configureDebugInfo := ""
4416
- for _, testObjMap := range scope {
4417
- validationutils.UnusedFunction(testObjMap)
4418
-
4419
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.id", true)
4420
- validationutils.UnusedFunction(attr)
4421
-
4422
- validate := validationutils.ArePresent(attr)
4423
-
4424
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_ID_CLOSED","attr":"$.message.issue.id","_RETURN_":"attr are present","action":["issue"]}`
4425
-
4426
- if !validate {
4427
- result := validationutils.ValidationOutput{
4428
- TestName: "REQUIRED_ISSUE_ID_CLOSED",
4429
- Valid: false,
4430
- Code: 30000,
4431
- Description: `#### **REQUIRED_ISSUE_ID_CLOSED**
4432
-
4433
- - $.message.issue.id must be present in the payload`,
4434
- DebugInfo: &validationutils.DebugInfo{
4435
- FedConfig: configureDebugInfo,
4436
- },
4437
- }
4438
- return []validationutils.ValidationOutput{result}, nil
4439
- }
4440
-
4441
- }
4442
-
4443
- result := validationutils.ValidationOutput{
4444
- TestName: "REQUIRED_ISSUE_ID_CLOSED",
4445
- Valid: valid,
4446
- Code: 0,
4447
- DebugInfo: &validationutils.DebugInfo{
4448
- FedConfig: configureDebugInfo,
4449
- },
4450
- }
4451
-
4452
- if valid {
4453
- result.Code = 200
4454
- } else {
4455
- result.Code = 30000
4456
- }
4457
-
4458
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4459
- results = append(results, result)
4460
- results = append(results, subResults...)
4461
-
4462
- return results, nil
4463
- }
4464
- var REQUIRED_ISSUE_STATUS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4465
-
4466
- if input.Config.SkipTestsDict != nil {
4467
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_STATUS"]; skip {
4468
- return []validationutils.ValidationOutput{}, nil
4469
- }
4470
- }
4471
-
4472
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4473
-
4474
- subResults := make([]validationutils.ValidationOutput, 0)
4475
- valid := true
4476
- configureDebugInfo := ""
4477
- for _, testObjMap := range scope {
4478
- validationutils.UnusedFunction(testObjMap)
4479
-
4480
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.status", true)
4481
- validationutils.UnusedFunction(attr)
4482
- validValues := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSED`})
4483
- validationutils.UnusedFunction(validValues)
4484
-
4485
- validate := validationutils.AllIn(attr, validValues)
4486
-
4487
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_STATUS","attr":"$.message.issue.status","validValues":["OPEN","CLOSED"],"_RETURN_":"attr all in validValues","action":["issue"]}`
4488
-
4489
- if !validate {
4490
- result := validationutils.ValidationOutput{
4491
- TestName: "REQUIRED_ISSUE_STATUS",
4492
- Valid: false,
4493
- Code: 30000,
4494
- Description: `#### **REQUIRED_ISSUE_STATUS**
4495
-
4496
- - All elements of $.message.issue.status must be in ["OPEN", "CLOSED"]`,
4497
- DebugInfo: &validationutils.DebugInfo{
4498
- FedConfig: configureDebugInfo,
4499
- },
4500
- }
4501
- return []validationutils.ValidationOutput{result}, nil
4502
- }
4503
-
4504
- }
4505
-
4506
- result := validationutils.ValidationOutput{
4507
- TestName: "REQUIRED_ISSUE_STATUS",
4508
- Valid: valid,
4509
- Code: 0,
4510
- DebugInfo: &validationutils.DebugInfo{
4511
- FedConfig: configureDebugInfo,
4512
- },
4513
- }
4514
-
4515
- if valid {
4516
- result.Code = 200
4517
- } else {
4518
- result.Code = 30000
4519
- }
4520
-
4521
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4522
- results = append(results, result)
4523
- results = append(results, subResults...)
4524
-
4525
- return results, nil
4526
- }
4527
- var REQUIRED_ISSUE_ACTIONS_CLOSED = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4528
-
4529
- if input.Config.SkipTestsDict != nil {
4530
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_ACTIONS_CLOSED"]; skip {
4531
- return []validationutils.ValidationOutput{}, nil
4532
- }
4533
- }
4534
-
4535
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4536
-
4537
- subResults := make([]validationutils.ValidationOutput, 0)
4538
- valid := true
4539
- configureDebugInfo := ""
4540
- for _, testObjMap := range scope {
4541
- validationutils.UnusedFunction(testObjMap)
4542
-
4543
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.complainant_actions[*].complainant_action", true)
4544
- validationutils.UnusedFunction(attr)
4545
- validValues := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSE`, `ESCALATE`})
4546
- validationutils.UnusedFunction(validValues)
4547
-
4548
- validate := validationutils.AllIn(attr, validValues)
4549
-
4550
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_ACTIONS_CLOSED","attr":"$.message.issue.issue_actions.complainant_actions[*].complainant_action","validValues":["OPEN","CLOSE","ESCALATE"],"_RETURN_":"attr all in validValues","action":["issue"]}`
4551
-
4552
- if !validate {
4553
- result := validationutils.ValidationOutput{
4554
- TestName: "REQUIRED_ISSUE_ACTIONS_CLOSED",
4555
- Valid: false,
4556
- Code: 30000,
4557
- Description: `#### **REQUIRED_ISSUE_ACTIONS_CLOSED**
4558
-
4559
- - All elements of $.message.issue.issue_actions.complainant_actions[*].complainant_action must be in ["OPEN", "CLOSE", "ESCALATE"]`,
4560
- DebugInfo: &validationutils.DebugInfo{
4561
- FedConfig: configureDebugInfo,
4562
- },
4563
- }
4564
- return []validationutils.ValidationOutput{result}, nil
4565
- }
4566
-
4567
- }
4568
-
4569
- result := validationutils.ValidationOutput{
4570
- TestName: "REQUIRED_ISSUE_ACTIONS_CLOSED",
4571
- Valid: valid,
4572
- Code: 0,
4573
- DebugInfo: &validationutils.DebugInfo{
4574
- FedConfig: configureDebugInfo,
4575
- },
4576
- }
4577
-
4578
- if valid {
4579
- result.Code = 200
4580
- } else {
4581
- result.Code = 30000
4582
- }
4583
-
4584
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4585
- results = append(results, result)
4586
- results = append(results, subResults...)
4587
-
4588
- return results, nil
4589
- }
4590
- var REQUIRED_CREATED_AT_CLOSED = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4591
-
4592
- if input.Config.SkipTestsDict != nil {
4593
- if _, skip := input.Config.SkipTestsDict["REQUIRED_CREATED_AT_CLOSED"]; skip {
4594
- return []validationutils.ValidationOutput{}, nil
4595
- }
4596
- }
4597
-
4598
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4599
-
4600
- subResults := make([]validationutils.ValidationOutput, 0)
4601
- valid := true
4602
- configureDebugInfo := ""
4603
- for _, testObjMap := range scope {
4604
- validationutils.UnusedFunction(testObjMap)
4605
-
4606
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.created_at", true)
4607
- validationutils.UnusedFunction(attr)
4608
-
4609
- validate := validationutils.ArePresent(attr)
4610
-
4611
- configureDebugInfo = `{"_NAME_":"REQUIRED_CREATED_AT_CLOSED","attr":"$.message.issue.created_at","_RETURN_":"attr are present","action":["issue"]}`
4612
-
4613
- if !validate {
4614
- result := validationutils.ValidationOutput{
4615
- TestName: "REQUIRED_CREATED_AT_CLOSED",
4616
- Valid: false,
4617
- Code: 30000,
4618
- Description: `#### **REQUIRED_CREATED_AT_CLOSED**
4619
-
4620
- - $.message.issue.created_at must be present in the payload`,
4621
- DebugInfo: &validationutils.DebugInfo{
4622
- FedConfig: configureDebugInfo,
4623
- },
4624
- }
4625
- return []validationutils.ValidationOutput{result}, nil
4626
- }
4627
-
4628
- }
4629
-
4630
- result := validationutils.ValidationOutput{
4631
- TestName: "REQUIRED_CREATED_AT_CLOSED",
4632
- Valid: valid,
4633
- Code: 0,
4634
- DebugInfo: &validationutils.DebugInfo{
4635
- FedConfig: configureDebugInfo,
4636
- },
4637
- }
4638
-
4639
- if valid {
4640
- result.Code = 200
4641
- } else {
4642
- result.Code = 30000
4643
- }
4644
-
4645
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4646
- results = append(results, result)
4647
- results = append(results, subResults...)
4648
-
4649
- return results, nil
4650
- }
4651
- var REQUIRED_UPDATED_AT_CLOSED = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
4652
-
4653
- if input.Config.SkipTestsDict != nil {
4654
- if _, skip := input.Config.SkipTestsDict["REQUIRED_UPDATED_AT_CLOSED"]; skip {
4655
- return []validationutils.ValidationOutput{}, nil
4656
- }
4657
- }
4658
-
4659
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
4660
-
4661
- subResults := make([]validationutils.ValidationOutput, 0)
4662
- valid := true
4663
- configureDebugInfo := ""
4664
- for _, testObjMap := range scope {
4665
- validationutils.UnusedFunction(testObjMap)
4666
-
4667
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.updated_at", true)
4668
- validationutils.UnusedFunction(attr)
4669
-
4670
- validate := validationutils.ArePresent(attr)
4671
-
4672
- configureDebugInfo = `{"_NAME_":"REQUIRED_UPDATED_AT_CLOSED","attr":"$.message.issue.updated_at","_RETURN_":"attr are present","action":["issue"]}`
4673
-
4674
- if !validate {
4675
- result := validationutils.ValidationOutput{
4676
- TestName: "REQUIRED_UPDATED_AT_CLOSED",
4677
- Valid: false,
4678
- Code: 30000,
4679
- Description: `#### **REQUIRED_UPDATED_AT_CLOSED**
4680
-
4681
- - $.message.issue.updated_at must be present in the payload`,
4682
- DebugInfo: &validationutils.DebugInfo{
4683
- FedConfig: configureDebugInfo,
4684
- },
4685
- }
4686
- return []validationutils.ValidationOutput{result}, nil
4687
- }
4688
-
4689
- }
4690
-
4691
- result := validationutils.ValidationOutput{
4692
- TestName: "REQUIRED_UPDATED_AT_CLOSED",
4693
- Valid: valid,
4694
- Code: 0,
4695
- DebugInfo: &validationutils.DebugInfo{
4696
- FedConfig: configureDebugInfo,
4697
- },
4698
- }
4699
-
4700
- if valid {
4701
- result.Code = 200
4702
- } else {
4703
- result.Code = 30000
4704
- }
4705
-
4706
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4707
- results = append(results, result)
4708
- results = append(results, subResults...)
4709
-
4710
- return results, nil
4711
- }
4712
-
4713
- var testFunctions = validationutils.TestFunctionArray{
4714
- REQUIRED_ISSUE_ID_CLOSED,
4715
- REQUIRED_ISSUE_STATUS,
4716
- REQUIRED_ISSUE_ACTIONS_CLOSED,
4717
- REQUIRED_CREATED_AT_CLOSED,
4718
- REQUIRED_UPDATED_AT_CLOSED,
4719
- }
4720
-
4721
- allResults := make([]validationutils.ValidationOutput, 0)
4722
-
4723
- for _, testFunc := range testFunctions {
4724
- results, err := testFunc(input)
4725
- if err != nil {
4726
- return nil, err
4727
- }
4728
- allResults = append(allResults, results...)
4729
- }
4730
-
4731
- subResults = allResults
4732
- // if all subResults are valid, then valid is true
4733
- valid = true
4734
- for _, res := range subResults {
4735
- if !res.Valid {
4736
- valid = false
4737
- break
4738
- }
4739
- }
4740
-
4741
- configureDebugInfo = `NESTED_TEST_OBJECT`
4742
-
4743
- }
4744
-
4745
- result := validationutils.ValidationOutput{
4746
- TestName: "ISSUE_VALIDATION_CLOSED",
4747
- Valid: valid,
4748
- Code: 0,
4749
- DebugInfo: &validationutils.DebugInfo{
4750
- FedConfig: configureDebugInfo,
4751
- },
4752
- }
4753
-
4754
- if valid {
4755
- result.Code = 200
4756
- } else {
4757
- result.Code = 30000
4758
- }
4759
-
4760
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4761
- results = append(results, result)
4762
- results = append(results, subResults...)
4763
-
4764
- return results, nil
4765
- }
4766
-
4767
- var testFunctions = validationutils.TestFunctionArray{
4768
- ISSUE_VALIDATION_OPEN,
4769
- ISSUE_VALIDATION_CLOSED,
4770
- }
4771
-
4772
- allResults := make([]validationutils.ValidationOutput, 0)
4773
-
4774
- for _, testFunc := range testFunctions {
4775
- results, err := testFunc(input)
4776
- if err != nil {
4777
- return nil, err
4778
- }
4779
- allResults = append(allResults, results...)
4780
- }
4781
-
4782
- subResults = allResults
4783
- // if all subResults are valid, then valid is true
4784
- valid = true
4785
- for _, res := range subResults {
4786
- if !res.Valid {
4787
- valid = false
4788
- break
4789
- }
4790
- }
4791
-
4792
- configureDebugInfo = `NESTED_TEST_OBJECT`
4793
-
4794
- }
4795
-
4796
- result := validationutils.ValidationOutput{
4797
- TestName: "ISSUE_VALIDATION_VERSION_100",
4798
- Valid: valid,
4799
- Code: 0,
4800
- DebugInfo: &validationutils.DebugInfo{
4801
- FedConfig: configureDebugInfo,
4802
- },
4803
- }
4804
-
4805
- if valid {
4806
- result.Code = 200
4807
- } else {
4808
- result.Code = 30000
4809
- }
4810
-
4811
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4812
- results = append(results, result)
4813
- results = append(results, subResults...)
4814
-
4815
- return results, nil
4816
- }
4817
-
4818
- var testFunctions = validationutils.TestFunctionArray{
4819
- REQUIRED_CONTEXT_FIELDS,
4820
- ISSUE_VALIDATION_VERSION_200,
4821
- ISSUE_VALIDATION_VERSION_100,
4822
- }
4823
-
4824
- allResults := make([]validationutils.ValidationOutput, 0)
4825
-
4826
- for _, testFunc := range testFunctions {
4827
- results, err := testFunc(input)
4828
- if err != nil {
4829
- return nil, err
4830
- }
4831
- allResults = append(allResults, results...)
4832
- }
4833
-
4834
- subResults = allResults
4835
- // if all subResults are valid, then valid is true
4836
- valid = true
4837
- for _, res := range subResults {
4838
- if !res.Valid {
4839
- valid = false
4840
- break
4841
- }
4842
- }
4843
-
4844
- configureDebugInfo = `NESTED_TEST_OBJECT`
4845
-
4846
- }
4847
-
4848
- result := validationutils.ValidationOutput{
4849
- TestName: "IssueValidations",
4850
- Valid: valid,
4851
- Code: 0,
4852
- DebugInfo: &validationutils.DebugInfo{
4853
- FedConfig: configureDebugInfo,
4854
- },
4855
- }
4856
-
4857
- if valid {
4858
- result.Code = 200
4859
- } else {
4860
- result.Code = 30000
4861
- }
4862
-
4863
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
4864
- results = append(results, result)
4865
- results = append(results, subResults...)
4866
-
4867
- return results, nil
4868
- }