ondc-code-generator 0.8.8 → 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 (127) hide show
  1. package/README.md +1 -1
  2. package/alpha/table/page/index.html +11487 -0
  3. package/alpha/table/page/style.css +449 -0
  4. package/alpha/table/rag-table-docs/confirm.md +60 -0
  5. package/alpha/table/rag-table-docs/init.md +78 -0
  6. package/alpha/table/rag-table-docs/on_confirm.md +161 -0
  7. package/alpha/table/rag-table-docs/on_init.md +143 -0
  8. package/alpha/table/rag-table-docs/on_search.md +160 -0
  9. package/alpha/table/rag-table-docs/on_select.md +96 -0
  10. package/alpha/table/rag-table-docs/on_status.md +150 -0
  11. package/alpha/table/rag-table-docs/on_update.md +161 -0
  12. package/alpha/table/rag-table-docs/raw_table.json +11198 -0
  13. package/alpha/table/rag-table-docs/search.md +125 -0
  14. package/alpha/table/rag-table-docs/select.md +67 -0
  15. package/alpha/table/rag-table-docs/status.md +41 -0
  16. package/alpha/table/rag-table-docs/update.md +48 -0
  17. package/alpha/table/readme.md +1312 -0
  18. package/alpha/table/validPaths.json +34134 -0
  19. package/alpha/table.zip +0 -0
  20. package/dist/bin/cli.js +6 -0
  21. package/dist/generator/config-compiler.js +16 -0
  22. package/dist/generator/generators/documentation/md-generator.d.ts +11 -5
  23. package/dist/generator/generators/documentation/md-generator.js +22 -28
  24. package/dist/generator/generators/documentation/templates/index.mustache +162 -26
  25. package/dist/generator/generators/documentation/templates/style.css +387 -142
  26. package/dist/generator/generators/rag/rag-generator.d.ts +48 -0
  27. package/dist/generator/generators/rag/rag-generator.js +185 -0
  28. package/dist/generator/generators/rag/rag-table-generator.d.ts +55 -0
  29. package/dist/generator/generators/rag/rag-table-generator.js +263 -0
  30. package/dist/types/compiler-types.d.ts +4 -1
  31. package/dist/types/compiler-types.js +3 -0
  32. package/docs/jval-dsl.md +913 -0
  33. package/package.json +1 -1
  34. package/alpha/golang/newPkg/go.mod +0 -3
  35. package/alpha/golang/newPkg/jsonvalidations/cancel.go +0 -1289
  36. package/alpha/golang/newPkg/jsonvalidations/confirm.go +0 -9121
  37. package/alpha/golang/newPkg/jsonvalidations/init.go +0 -4864
  38. package/alpha/golang/newPkg/jsonvalidations/issue.go +0 -4868
  39. package/alpha/golang/newPkg/jsonvalidations/on_cancel.go +0 -7111
  40. package/alpha/golang/newPkg/jsonvalidations/on_confirm.go +0 -8903
  41. package/alpha/golang/newPkg/jsonvalidations/on_init.go +0 -4445
  42. package/alpha/golang/newPkg/jsonvalidations/on_issue.go +0 -2828
  43. package/alpha/golang/newPkg/jsonvalidations/on_issue_status.go +0 -1938
  44. package/alpha/golang/newPkg/jsonvalidations/on_search.go +0 -3356
  45. package/alpha/golang/newPkg/jsonvalidations/on_status.go +0 -8129
  46. package/alpha/golang/newPkg/jsonvalidations/on_track.go +0 -1415
  47. package/alpha/golang/newPkg/jsonvalidations/on_update.go +0 -8700
  48. package/alpha/golang/newPkg/jsonvalidations/search.go +0 -3585
  49. package/alpha/golang/newPkg/jsonvalidations/status.go +0 -1073
  50. package/alpha/golang/newPkg/jsonvalidations/track.go +0 -1073
  51. package/alpha/golang/newPkg/jsonvalidations/update.go +0 -3012
  52. package/alpha/golang/newPkg/main-validator.go +0 -196
  53. package/alpha/golang/newPkg/main-validator_test.go +0 -165
  54. package/alpha/golang/newPkg/storageutils/api_save_utils.go +0 -83
  55. package/alpha/golang/newPkg/storageutils/cancel.go +0 -30
  56. package/alpha/golang/newPkg/storageutils/confirm.go +0 -30
  57. package/alpha/golang/newPkg/storageutils/index.go +0 -132
  58. package/alpha/golang/newPkg/storageutils/init.go +0 -30
  59. package/alpha/golang/newPkg/storageutils/issue.go +0 -30
  60. package/alpha/golang/newPkg/storageutils/on_cancel.go +0 -30
  61. package/alpha/golang/newPkg/storageutils/on_confirm.go +0 -30
  62. package/alpha/golang/newPkg/storageutils/on_init.go +0 -30
  63. package/alpha/golang/newPkg/storageutils/on_issue.go +0 -30
  64. package/alpha/golang/newPkg/storageutils/on_issue_status.go +0 -30
  65. package/alpha/golang/newPkg/storageutils/on_search.go +0 -30
  66. package/alpha/golang/newPkg/storageutils/on_status.go +0 -30
  67. package/alpha/golang/newPkg/storageutils/on_track.go +0 -30
  68. package/alpha/golang/newPkg/storageutils/on_update.go +0 -30
  69. package/alpha/golang/newPkg/storageutils/save_utils.go +0 -75
  70. package/alpha/golang/newPkg/storageutils/search.go +0 -30
  71. package/alpha/golang/newPkg/storageutils/status.go +0 -30
  72. package/alpha/golang/newPkg/storageutils/track.go +0 -30
  73. package/alpha/golang/newPkg/storageutils/update.go +0 -30
  74. package/alpha/golang/newPkg/validationutils/json_normalizer.go +0 -152
  75. package/alpha/golang/newPkg/validationutils/json_path_utils.go +0 -173
  76. package/alpha/golang/newPkg/validationutils/storage-interface.go +0 -107
  77. package/alpha/golang/newPkg/validationutils/test-config.go +0 -69
  78. package/alpha/golang/newPkg/validationutils/validation_utils.go +0 -429
  79. package/alpha/golang/page/index.html +0 -6137
  80. package/alpha/golang/page/style.css +0 -204
  81. package/alpha/golang/readme.md +0 -5939
  82. package/alpha/golang/validationpkg/go.mod +0 -3
  83. package/alpha/golang/validationpkg/jsonvalidations/cancel.go +0 -1289
  84. package/alpha/golang/validationpkg/jsonvalidations/confirm.go +0 -9121
  85. package/alpha/golang/validationpkg/jsonvalidations/init.go +0 -4864
  86. package/alpha/golang/validationpkg/jsonvalidations/issue.go +0 -4868
  87. package/alpha/golang/validationpkg/jsonvalidations/on_cancel.go +0 -7111
  88. package/alpha/golang/validationpkg/jsonvalidations/on_confirm.go +0 -8903
  89. package/alpha/golang/validationpkg/jsonvalidations/on_init.go +0 -4445
  90. package/alpha/golang/validationpkg/jsonvalidations/on_issue.go +0 -2828
  91. package/alpha/golang/validationpkg/jsonvalidations/on_issue_status.go +0 -1938
  92. package/alpha/golang/validationpkg/jsonvalidations/on_search.go +0 -3356
  93. package/alpha/golang/validationpkg/jsonvalidations/on_status.go +0 -8129
  94. package/alpha/golang/validationpkg/jsonvalidations/on_track.go +0 -1415
  95. package/alpha/golang/validationpkg/jsonvalidations/on_update.go +0 -8700
  96. package/alpha/golang/validationpkg/jsonvalidations/search.go +0 -3585
  97. package/alpha/golang/validationpkg/jsonvalidations/status.go +0 -1073
  98. package/alpha/golang/validationpkg/jsonvalidations/track.go +0 -1073
  99. package/alpha/golang/validationpkg/jsonvalidations/update.go +0 -3012
  100. package/alpha/golang/validationpkg/main-validator.go +0 -196
  101. package/alpha/golang/validationpkg/main-validator_test.go +0 -165
  102. package/alpha/golang/validationpkg/storageutils/api_save_utils.go +0 -83
  103. package/alpha/golang/validationpkg/storageutils/cancel.go +0 -30
  104. package/alpha/golang/validationpkg/storageutils/confirm.go +0 -30
  105. package/alpha/golang/validationpkg/storageutils/index.go +0 -132
  106. package/alpha/golang/validationpkg/storageutils/init.go +0 -30
  107. package/alpha/golang/validationpkg/storageutils/issue.go +0 -30
  108. package/alpha/golang/validationpkg/storageutils/on_cancel.go +0 -30
  109. package/alpha/golang/validationpkg/storageutils/on_confirm.go +0 -30
  110. package/alpha/golang/validationpkg/storageutils/on_init.go +0 -30
  111. package/alpha/golang/validationpkg/storageutils/on_issue.go +0 -30
  112. package/alpha/golang/validationpkg/storageutils/on_issue_status.go +0 -30
  113. package/alpha/golang/validationpkg/storageutils/on_search.go +0 -30
  114. package/alpha/golang/validationpkg/storageutils/on_status.go +0 -30
  115. package/alpha/golang/validationpkg/storageutils/on_track.go +0 -30
  116. package/alpha/golang/validationpkg/storageutils/on_update.go +0 -30
  117. package/alpha/golang/validationpkg/storageutils/save_utils.go +0 -75
  118. package/alpha/golang/validationpkg/storageutils/search.go +0 -30
  119. package/alpha/golang/validationpkg/storageutils/status.go +0 -30
  120. package/alpha/golang/validationpkg/storageutils/track.go +0 -30
  121. package/alpha/golang/validationpkg/storageutils/update.go +0 -30
  122. package/alpha/golang/validationpkg/validationutils/json_normalizer.go +0 -152
  123. package/alpha/golang/validationpkg/validationutils/json_path_utils.go +0 -173
  124. package/alpha/golang/validationpkg/validationutils/storage-interface.go +0 -107
  125. package/alpha/golang/validationpkg/validationutils/test-config.go +0 -69
  126. package/alpha/golang/validationpkg/validationutils/validation_utils.go +0 -429
  127. /package/alpha/{golang/validPaths.json → validPaths.json} +0 -0
@@ -1,2828 +0,0 @@
1
- // Code generated by github.com/ONDC-Official/automation-validation-compiler, DO NOT EDIT.
2
-
3
- package jsonvalidations
4
-
5
- import (
6
- "newPkg/validationutils"
7
- )
8
-
9
- func On_issue_Tests(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
10
- totalResults, err := On_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 == "On_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 On_issueValidations = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
65
-
66
- if input.Config.SkipTestsDict != nil {
67
- if _, skip := input.Config.SkipTestsDict["On_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 VALID_CONTEXT_COUNTRY_CODE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
829
-
830
- if input.Config.SkipTestsDict != nil {
831
- if _, skip := input.Config.SkipTestsDict["VALID_CONTEXT_COUNTRY_CODE"]; 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.country", true)
845
- validationutils.UnusedFunction(attr)
846
-
847
- validate := validationutils.ArePresent(attr)
848
-
849
- configureDebugInfo = `{"_NAME_":"VALID_CONTEXT_COUNTRY_CODE","attr":"$.context.country","_RETURN_":"attr are present"}`
850
-
851
- if !validate {
852
- result := validationutils.ValidationOutput{
853
- TestName: "VALID_CONTEXT_COUNTRY_CODE",
854
- Valid: false,
855
- Code: 30000,
856
- Description: `#### **VALID_CONTEXT_COUNTRY_CODE**
857
-
858
- - $.context.country 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: "VALID_CONTEXT_COUNTRY_CODE",
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
-
890
- var testFunctions = validationutils.TestFunctionArray{
891
- REQUIRED_CONTEXT_DOMAIN,
892
- REQUIRED_CONTEXT_COUNTRY,
893
- REQUIRED_CONTEXT_CITY,
894
- REQUIRED_CONTEXT_TRANSACTION_ID,
895
- REQUIRED_CONTEXT_MESSAGE_ID,
896
- REQUIRED_CONTEXT_ACTION,
897
- REQUIRED_CONTEXT_TIMESTAMP,
898
- REQUIRED_CONTEXT_VERSION,
899
- REQUIRED_CONTEXT_BAP_URI,
900
- REQUIRED_CONTEXT_BAP_ID,
901
- REQUIRED_CONTEXT_BPP_URI,
902
- REQUIRED_CONTEXT_BPP_ID,
903
- VALID_CONTEXT_COUNTRY_CODE,
904
- }
905
-
906
- allResults := make([]validationutils.ValidationOutput, 0)
907
-
908
- for _, testFunc := range testFunctions {
909
- results, err := testFunc(input)
910
- if err != nil {
911
- return nil, err
912
- }
913
- allResults = append(allResults, results...)
914
- }
915
-
916
- subResults = allResults
917
- // if all subResults are valid, then valid is true
918
- valid = true
919
- for _, res := range subResults {
920
- if !res.Valid {
921
- valid = false
922
- break
923
- }
924
- }
925
-
926
- configureDebugInfo = `NESTED_TEST_OBJECT`
927
-
928
- }
929
-
930
- result := validationutils.ValidationOutput{
931
- TestName: "REQUIRED_CONTEXT_FIELDS",
932
- Valid: valid,
933
- Code: 0,
934
- DebugInfo: &validationutils.DebugInfo{
935
- FedConfig: configureDebugInfo,
936
- },
937
- }
938
-
939
- if valid {
940
- result.Code = 200
941
- } else {
942
- result.Code = 30000
943
- }
944
-
945
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
946
- results = append(results, result)
947
- results = append(results, subResults...)
948
-
949
- return results, nil
950
- }
951
- var ON_ISSUE_VALIDATION_VERSION_200 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
952
-
953
- if input.Config.SkipTestsDict != nil {
954
- if _, skip := input.Config.SkipTestsDict["ON_ISSUE_VALIDATION_VERSION_200"]; skip {
955
- return []validationutils.ValidationOutput{}, nil
956
- }
957
- }
958
-
959
- scope := validationutils.GetJsonPath(input.Payload, "$.message.issue.actions", true)
960
-
961
- subResults := make([]validationutils.ValidationOutput, 0)
962
- valid := true
963
- configureDebugInfo := ""
964
- for _, testObjMap := range scope {
965
- validationutils.UnusedFunction(testObjMap)
966
-
967
- var REQUIRED_MESSAGE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
968
-
969
- if input.Config.SkipTestsDict != nil {
970
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ID"]; skip {
971
- return []validationutils.ValidationOutput{}, nil
972
- }
973
- }
974
-
975
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
976
-
977
- subResults := make([]validationutils.ValidationOutput, 0)
978
- valid := true
979
- configureDebugInfo := ""
980
- for _, testObjMap := range scope {
981
- validationutils.UnusedFunction(testObjMap)
982
-
983
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.id", true)
984
- validationutils.UnusedFunction(attr)
985
-
986
- validate := validationutils.ArePresent(attr)
987
-
988
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ID","attr":"$.message.issue.id","_RETURN_":"attr are present","action":["on_issue"]}`
989
-
990
- if !validate {
991
- result := validationutils.ValidationOutput{
992
- TestName: "REQUIRED_MESSAGE_ID",
993
- Valid: false,
994
- Code: 30000,
995
- Description: `#### **REQUIRED_MESSAGE_ID**
996
-
997
- - $.message.issue.id must be present in the payload`,
998
- DebugInfo: &validationutils.DebugInfo{
999
- FedConfig: configureDebugInfo,
1000
- },
1001
- }
1002
- return []validationutils.ValidationOutput{result}, nil
1003
- }
1004
-
1005
- }
1006
-
1007
- result := validationutils.ValidationOutput{
1008
- TestName: "REQUIRED_MESSAGE_ID",
1009
- Valid: valid,
1010
- Code: 0,
1011
- DebugInfo: &validationutils.DebugInfo{
1012
- FedConfig: configureDebugInfo,
1013
- },
1014
- }
1015
-
1016
- if valid {
1017
- result.Code = 200
1018
- } else {
1019
- result.Code = 30000
1020
- }
1021
-
1022
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1023
- results = append(results, result)
1024
- results = append(results, subResults...)
1025
-
1026
- return results, nil
1027
- }
1028
- var REQUIRED_MESSAGE_STATUS = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1029
-
1030
- if input.Config.SkipTestsDict != nil {
1031
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_STATUS"]; skip {
1032
- return []validationutils.ValidationOutput{}, nil
1033
- }
1034
- }
1035
-
1036
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1037
-
1038
- subResults := make([]validationutils.ValidationOutput, 0)
1039
- valid := true
1040
- configureDebugInfo := ""
1041
- for _, testObjMap := range scope {
1042
- validationutils.UnusedFunction(testObjMap)
1043
-
1044
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.status", true)
1045
- validationutils.UnusedFunction(attr)
1046
- enumList := validationutils.StringSliceToInterface([]string{`OPEN`, `CLOSED`, `PROCESSING`, `RESOLVED`, `NEED_MORE_INFO`, `INFO_PROVIDED`})
1047
- validationutils.UnusedFunction(enumList)
1048
-
1049
- validate := ((validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))) && (validationutils.AreUnique(attr))
1050
-
1051
- 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":["on_issue"]}`
1052
-
1053
- if !validate {
1054
- result := validationutils.ValidationOutput{
1055
- TestName: "REQUIRED_MESSAGE_STATUS",
1056
- Valid: false,
1057
- Code: 30000,
1058
- Description: `#### **REQUIRED_MESSAGE_STATUS**
1059
-
1060
- **All of the following must be true:**
1061
- - **All of the following must be true:**
1062
- - $.message.issue.status must be present in the payload
1063
- - All elements of $.message.issue.status must be in ["OPEN", "CLOSED", "PROCESSING", "RESOLVED", "NEED_MORE_INFO", "INFO_PROVIDED"]
1064
- - All values of $.message.issue.status are unique`,
1065
- DebugInfo: &validationutils.DebugInfo{
1066
- FedConfig: configureDebugInfo,
1067
- },
1068
- }
1069
- return []validationutils.ValidationOutput{result}, nil
1070
- }
1071
-
1072
- }
1073
-
1074
- result := validationutils.ValidationOutput{
1075
- TestName: "REQUIRED_MESSAGE_STATUS",
1076
- Valid: valid,
1077
- Code: 0,
1078
- DebugInfo: &validationutils.DebugInfo{
1079
- FedConfig: configureDebugInfo,
1080
- },
1081
- }
1082
-
1083
- if valid {
1084
- result.Code = 200
1085
- } else {
1086
- result.Code = 30000
1087
- }
1088
-
1089
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1090
- results = append(results, result)
1091
- results = append(results, subResults...)
1092
-
1093
- return results, nil
1094
- }
1095
- var REQUIRED_MESSAGE_LEVEL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1096
-
1097
- if input.Config.SkipTestsDict != nil {
1098
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_LEVEL"]; skip {
1099
- return []validationutils.ValidationOutput{}, nil
1100
- }
1101
- }
1102
-
1103
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1104
-
1105
- subResults := make([]validationutils.ValidationOutput, 0)
1106
- valid := true
1107
- configureDebugInfo := ""
1108
- for _, testObjMap := range scope {
1109
- validationutils.UnusedFunction(testObjMap)
1110
-
1111
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.level", true)
1112
- validationutils.UnusedFunction(attr)
1113
- enumList := validationutils.StringSliceToInterface([]string{`ISSUE`, `GREVIENCE`, `DISPUTE`})
1114
- validationutils.UnusedFunction(enumList)
1115
-
1116
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
1117
-
1118
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_LEVEL","attr":"$.message.issue.level","_RETURN_":"attr are present && attr all in enumList","enumList":["ISSUE","GREVIENCE","DISPUTE"],"action":["on_issue"]}`
1119
-
1120
- if !validate {
1121
- result := validationutils.ValidationOutput{
1122
- TestName: "REQUIRED_MESSAGE_LEVEL",
1123
- Valid: false,
1124
- Code: 30000,
1125
- Description: `#### **REQUIRED_MESSAGE_LEVEL**
1126
-
1127
- **All of the following must be true:**
1128
- - $.message.issue.level must be present in the payload
1129
- - All elements of $.message.issue.level must be in ["ISSUE", "GREVIENCE", "DISPUTE"]`,
1130
- DebugInfo: &validationutils.DebugInfo{
1131
- FedConfig: configureDebugInfo,
1132
- },
1133
- }
1134
- return []validationutils.ValidationOutput{result}, nil
1135
- }
1136
-
1137
- }
1138
-
1139
- result := validationutils.ValidationOutput{
1140
- TestName: "REQUIRED_MESSAGE_LEVEL",
1141
- Valid: valid,
1142
- Code: 0,
1143
- DebugInfo: &validationutils.DebugInfo{
1144
- FedConfig: configureDebugInfo,
1145
- },
1146
- }
1147
-
1148
- if valid {
1149
- result.Code = 200
1150
- } else {
1151
- result.Code = 30000
1152
- }
1153
-
1154
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1155
- results = append(results, result)
1156
- results = append(results, subResults...)
1157
-
1158
- return results, nil
1159
- }
1160
- var REQUIRED_MESSAGE_CREATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1161
-
1162
- if input.Config.SkipTestsDict != nil {
1163
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CREATED_AT"]; skip {
1164
- return []validationutils.ValidationOutput{}, nil
1165
- }
1166
- }
1167
-
1168
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1169
-
1170
- subResults := make([]validationutils.ValidationOutput, 0)
1171
- valid := true
1172
- configureDebugInfo := ""
1173
- for _, testObjMap := range scope {
1174
- validationutils.UnusedFunction(testObjMap)
1175
-
1176
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.created_at", true)
1177
- validationutils.UnusedFunction(attr)
1178
-
1179
- validate := validationutils.ArePresent(attr)
1180
-
1181
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CREATED_AT","attr":"$.message.issue.created_at","_RETURN_":"attr are present","action":["on_issue"]}`
1182
-
1183
- if !validate {
1184
- result := validationutils.ValidationOutput{
1185
- TestName: "REQUIRED_MESSAGE_CREATED_AT",
1186
- Valid: false,
1187
- Code: 30000,
1188
- Description: `#### **REQUIRED_MESSAGE_CREATED_AT**
1189
-
1190
- - $.message.issue.created_at must be present in the payload`,
1191
- DebugInfo: &validationutils.DebugInfo{
1192
- FedConfig: configureDebugInfo,
1193
- },
1194
- }
1195
- return []validationutils.ValidationOutput{result}, nil
1196
- }
1197
-
1198
- }
1199
-
1200
- result := validationutils.ValidationOutput{
1201
- TestName: "REQUIRED_MESSAGE_CREATED_AT",
1202
- Valid: valid,
1203
- Code: 0,
1204
- DebugInfo: &validationutils.DebugInfo{
1205
- FedConfig: configureDebugInfo,
1206
- },
1207
- }
1208
-
1209
- if valid {
1210
- result.Code = 200
1211
- } else {
1212
- result.Code = 30000
1213
- }
1214
-
1215
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1216
- results = append(results, result)
1217
- results = append(results, subResults...)
1218
-
1219
- return results, nil
1220
- }
1221
- var REQUIRED_MESSAGE_UPDATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1222
-
1223
- if input.Config.SkipTestsDict != nil {
1224
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_UPDATED_AT"]; skip {
1225
- return []validationutils.ValidationOutput{}, nil
1226
- }
1227
- }
1228
-
1229
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1230
-
1231
- subResults := make([]validationutils.ValidationOutput, 0)
1232
- valid := true
1233
- configureDebugInfo := ""
1234
- for _, testObjMap := range scope {
1235
- validationutils.UnusedFunction(testObjMap)
1236
-
1237
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.updated_at", true)
1238
- validationutils.UnusedFunction(attr)
1239
-
1240
- validate := validationutils.ArePresent(attr)
1241
-
1242
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_UPDATED_AT","attr":"$.message.issue.updated_at","_RETURN_":"attr are present","action":["on_issue"]}`
1243
-
1244
- if !validate {
1245
- result := validationutils.ValidationOutput{
1246
- TestName: "REQUIRED_MESSAGE_UPDATED_AT",
1247
- Valid: false,
1248
- Code: 30000,
1249
- Description: `#### **REQUIRED_MESSAGE_UPDATED_AT**
1250
-
1251
- - $.message.issue.updated_at must be present in the payload`,
1252
- DebugInfo: &validationutils.DebugInfo{
1253
- FedConfig: configureDebugInfo,
1254
- },
1255
- }
1256
- return []validationutils.ValidationOutput{result}, nil
1257
- }
1258
-
1259
- }
1260
-
1261
- result := validationutils.ValidationOutput{
1262
- TestName: "REQUIRED_MESSAGE_UPDATED_AT",
1263
- Valid: valid,
1264
- Code: 0,
1265
- DebugInfo: &validationutils.DebugInfo{
1266
- FedConfig: configureDebugInfo,
1267
- },
1268
- }
1269
-
1270
- if valid {
1271
- result.Code = 200
1272
- } else {
1273
- result.Code = 30000
1274
- }
1275
-
1276
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1277
- results = append(results, result)
1278
- results = append(results, subResults...)
1279
-
1280
- return results, nil
1281
- }
1282
- var REQUIRED_MESSAGE_REF_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1283
-
1284
- if input.Config.SkipTestsDict != nil {
1285
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_REF_ID"]; skip {
1286
- return []validationutils.ValidationOutput{}, nil
1287
- }
1288
- }
1289
-
1290
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1291
-
1292
- subResults := make([]validationutils.ValidationOutput, 0)
1293
- valid := true
1294
- configureDebugInfo := ""
1295
- for _, testObjMap := range scope {
1296
- validationutils.UnusedFunction(testObjMap)
1297
-
1298
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.refs[*].ref_id", true)
1299
- validationutils.UnusedFunction(attr)
1300
-
1301
- validate := validationutils.ArePresent(attr)
1302
-
1303
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_REF_ID","attr":"$.message.issue.refs[*].ref_id","_RETURN_":"attr are present","action":["on_issue"]}`
1304
-
1305
- if !validate {
1306
- result := validationutils.ValidationOutput{
1307
- TestName: "REQUIRED_MESSAGE_REF_ID",
1308
- Valid: false,
1309
- Code: 30000,
1310
- Description: `#### **REQUIRED_MESSAGE_REF_ID**
1311
-
1312
- - $.message.issue.refs[*].ref_id must be present in the payload`,
1313
- DebugInfo: &validationutils.DebugInfo{
1314
- FedConfig: configureDebugInfo,
1315
- },
1316
- }
1317
- return []validationutils.ValidationOutput{result}, nil
1318
- }
1319
-
1320
- }
1321
-
1322
- result := validationutils.ValidationOutput{
1323
- TestName: "REQUIRED_MESSAGE_REF_ID",
1324
- Valid: valid,
1325
- Code: 0,
1326
- DebugInfo: &validationutils.DebugInfo{
1327
- FedConfig: configureDebugInfo,
1328
- },
1329
- }
1330
-
1331
- if valid {
1332
- result.Code = 200
1333
- } else {
1334
- result.Code = 30000
1335
- }
1336
-
1337
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1338
- results = append(results, result)
1339
- results = append(results, subResults...)
1340
-
1341
- return results, nil
1342
- }
1343
- var REQUIRED_MESSAGE_REF_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1344
-
1345
- if input.Config.SkipTestsDict != nil {
1346
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_REF_TYPE"]; skip {
1347
- return []validationutils.ValidationOutput{}, nil
1348
- }
1349
- }
1350
-
1351
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1352
-
1353
- subResults := make([]validationutils.ValidationOutput, 0)
1354
- valid := true
1355
- configureDebugInfo := ""
1356
- for _, testObjMap := range scope {
1357
- validationutils.UnusedFunction(testObjMap)
1358
-
1359
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.refs[*].ref_type", true)
1360
- validationutils.UnusedFunction(attr)
1361
- enumList := validationutils.StringSliceToInterface([]string{`ORDER`, `ITEM`, `FULFILLMENT`, `TRANSACTION_ID`, `MESSAGE_ID`, `PROVIDER`, `COMPLAINT`, `ACTION`, `PAYMENT`, `CUSTOMER`, `AGENT`})
1362
- validationutils.UnusedFunction(enumList)
1363
-
1364
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
1365
-
1366
- 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":["on_issue"]}`
1367
-
1368
- if !validate {
1369
- result := validationutils.ValidationOutput{
1370
- TestName: "REQUIRED_MESSAGE_REF_TYPE",
1371
- Valid: false,
1372
- Code: 30000,
1373
- Description: `#### **REQUIRED_MESSAGE_REF_TYPE**
1374
-
1375
- **All of the following must be true:**
1376
- - $.message.issue.refs[*].ref_type must be present in the payload
1377
- - All elements of $.message.issue.refs[*].ref_type must be in ["ORDER", "ITEM", "FULFILLMENT", "TRANSACTION_ID", "MESSAGE_ID", "PROVIDER", "COMPLAINT", "ACTION", "PAYMENT", "CUSTOMER", "AGENT"]`,
1378
- DebugInfo: &validationutils.DebugInfo{
1379
- FedConfig: configureDebugInfo,
1380
- },
1381
- }
1382
- return []validationutils.ValidationOutput{result}, nil
1383
- }
1384
-
1385
- }
1386
-
1387
- result := validationutils.ValidationOutput{
1388
- TestName: "REQUIRED_MESSAGE_REF_TYPE",
1389
- Valid: valid,
1390
- Code: 0,
1391
- DebugInfo: &validationutils.DebugInfo{
1392
- FedConfig: configureDebugInfo,
1393
- },
1394
- }
1395
-
1396
- if valid {
1397
- result.Code = 200
1398
- } else {
1399
- result.Code = 30000
1400
- }
1401
-
1402
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1403
- results = append(results, result)
1404
- results = append(results, subResults...)
1405
-
1406
- return results, nil
1407
- }
1408
- var REQUIRED_EXPECTED_RESPONSE_TIME = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1409
-
1410
- if input.Config.SkipTestsDict != nil {
1411
- if _, skip := input.Config.SkipTestsDict["REQUIRED_EXPECTED_RESPONSE_TIME"]; skip {
1412
- return []validationutils.ValidationOutput{}, nil
1413
- }
1414
- }
1415
-
1416
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1417
-
1418
- subResults := make([]validationutils.ValidationOutput, 0)
1419
- valid := true
1420
- configureDebugInfo := ""
1421
- for _, testObjMap := range scope {
1422
- validationutils.UnusedFunction(testObjMap)
1423
-
1424
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.expected_response_time.duration`})
1425
- validationutils.UnusedFunction(attr)
1426
-
1427
- validate := validationutils.ArePresent(attr)
1428
-
1429
- configureDebugInfo = `{"_NAME_":"REQUIRED_EXPECTED_RESPONSE_TIME","attr":["$.message.issue.expected_response_time.duration"],"_RETURN_":"attr are present","action":["on_issue"]}`
1430
-
1431
- if !validate {
1432
- result := validationutils.ValidationOutput{
1433
- TestName: "REQUIRED_EXPECTED_RESPONSE_TIME",
1434
- Valid: false,
1435
- Code: 30000,
1436
- Description: `#### **REQUIRED_EXPECTED_RESPONSE_TIME**
1437
-
1438
- - ["$.message.issue.expected_response_time.duration"] must be present in the payload`,
1439
- DebugInfo: &validationutils.DebugInfo{
1440
- FedConfig: configureDebugInfo,
1441
- },
1442
- }
1443
- return []validationutils.ValidationOutput{result}, nil
1444
- }
1445
-
1446
- }
1447
-
1448
- result := validationutils.ValidationOutput{
1449
- TestName: "REQUIRED_EXPECTED_RESPONSE_TIME",
1450
- Valid: valid,
1451
- Code: 0,
1452
- DebugInfo: &validationutils.DebugInfo{
1453
- FedConfig: configureDebugInfo,
1454
- },
1455
- }
1456
-
1457
- if valid {
1458
- result.Code = 200
1459
- } else {
1460
- result.Code = 30000
1461
- }
1462
-
1463
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1464
- results = append(results, result)
1465
- results = append(results, subResults...)
1466
-
1467
- return results, nil
1468
- }
1469
- var REQUIRED_EXPECTED_RESOLUTION_TIME = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1470
-
1471
- if input.Config.SkipTestsDict != nil {
1472
- if _, skip := input.Config.SkipTestsDict["REQUIRED_EXPECTED_RESOLUTION_TIME"]; skip {
1473
- return []validationutils.ValidationOutput{}, nil
1474
- }
1475
- }
1476
-
1477
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1478
-
1479
- subResults := make([]validationutils.ValidationOutput, 0)
1480
- valid := true
1481
- configureDebugInfo := ""
1482
- for _, testObjMap := range scope {
1483
- validationutils.UnusedFunction(testObjMap)
1484
-
1485
- attr := validationutils.StringSliceToInterface([]string{`$.message.issue.expected_resolution_time.duration`})
1486
- validationutils.UnusedFunction(attr)
1487
-
1488
- validate := validationutils.ArePresent(attr)
1489
-
1490
- configureDebugInfo = `{"_NAME_":"REQUIRED_EXPECTED_RESOLUTION_TIME","attr":["$.message.issue.expected_resolution_time.duration"],"_RETURN_":"attr are present","action":["on_issue"]}`
1491
-
1492
- if !validate {
1493
- result := validationutils.ValidationOutput{
1494
- TestName: "REQUIRED_EXPECTED_RESOLUTION_TIME",
1495
- Valid: false,
1496
- Code: 30000,
1497
- Description: `#### **REQUIRED_EXPECTED_RESOLUTION_TIME**
1498
-
1499
- - ["$.message.issue.expected_resolution_time.duration"] must be present in the payload`,
1500
- DebugInfo: &validationutils.DebugInfo{
1501
- FedConfig: configureDebugInfo,
1502
- },
1503
- }
1504
- return []validationutils.ValidationOutput{result}, nil
1505
- }
1506
-
1507
- }
1508
-
1509
- result := validationutils.ValidationOutput{
1510
- TestName: "REQUIRED_EXPECTED_RESOLUTION_TIME",
1511
- Valid: valid,
1512
- Code: 0,
1513
- DebugInfo: &validationutils.DebugInfo{
1514
- FedConfig: configureDebugInfo,
1515
- },
1516
- }
1517
-
1518
- if valid {
1519
- result.Code = 200
1520
- } else {
1521
- result.Code = 30000
1522
- }
1523
-
1524
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1525
- results = append(results, result)
1526
- results = append(results, subResults...)
1527
-
1528
- return results, nil
1529
- }
1530
- var REQUIRED_MESSAGE_ID_10 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1531
-
1532
- if input.Config.SkipTestsDict != nil {
1533
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ID_10"]; skip {
1534
- return []validationutils.ValidationOutput{}, nil
1535
- }
1536
- }
1537
-
1538
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1539
-
1540
- subResults := make([]validationutils.ValidationOutput, 0)
1541
- valid := true
1542
- configureDebugInfo := ""
1543
- for _, testObjMap := range scope {
1544
- validationutils.UnusedFunction(testObjMap)
1545
-
1546
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].id", true)
1547
- validationutils.UnusedFunction(attr)
1548
-
1549
- validate := validationutils.ArePresent(attr)
1550
-
1551
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ID_10","attr":"$.message.issue.actors[*].id","_RETURN_":"attr are present","action":["on_issue"]}`
1552
-
1553
- if !validate {
1554
- result := validationutils.ValidationOutput{
1555
- TestName: "REQUIRED_MESSAGE_ID_10",
1556
- Valid: false,
1557
- Code: 30000,
1558
- Description: `#### **REQUIRED_MESSAGE_ID_10**
1559
-
1560
- - $.message.issue.actors[*].id must be present in the payload`,
1561
- DebugInfo: &validationutils.DebugInfo{
1562
- FedConfig: configureDebugInfo,
1563
- },
1564
- }
1565
- return []validationutils.ValidationOutput{result}, nil
1566
- }
1567
-
1568
- }
1569
-
1570
- result := validationutils.ValidationOutput{
1571
- TestName: "REQUIRED_MESSAGE_ID_10",
1572
- Valid: valid,
1573
- Code: 0,
1574
- DebugInfo: &validationutils.DebugInfo{
1575
- FedConfig: configureDebugInfo,
1576
- },
1577
- }
1578
-
1579
- if valid {
1580
- result.Code = 200
1581
- } else {
1582
- result.Code = 30000
1583
- }
1584
-
1585
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1586
- results = append(results, result)
1587
- results = append(results, subResults...)
1588
-
1589
- return results, nil
1590
- }
1591
- var REQUIRED_MESSAGE_TYPE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1592
-
1593
- if input.Config.SkipTestsDict != nil {
1594
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_TYPE"]; skip {
1595
- return []validationutils.ValidationOutput{}, nil
1596
- }
1597
- }
1598
-
1599
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1600
-
1601
- subResults := make([]validationutils.ValidationOutput, 0)
1602
- valid := true
1603
- configureDebugInfo := ""
1604
- for _, testObjMap := range scope {
1605
- validationutils.UnusedFunction(testObjMap)
1606
-
1607
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].type", true)
1608
- validationutils.UnusedFunction(attr)
1609
- enumList := validationutils.StringSliceToInterface([]string{`INTERFACING_NP`, `COUNTERPARTY_NP`, `CASCADED_NP`, `PROVIDER`, `AGENT`, `CUSTOMER`, `INTERFACING_NP_GRO`, `COUNTERPARTY_NP_GRO`, `CASCADED_NP_GRO`, `CONSUMER`})
1610
- validationutils.UnusedFunction(enumList)
1611
-
1612
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
1613
-
1614
- 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":["on_issue"]}`
1615
-
1616
- if !validate {
1617
- result := validationutils.ValidationOutput{
1618
- TestName: "REQUIRED_MESSAGE_TYPE",
1619
- Valid: false,
1620
- Code: 30000,
1621
- Description: `#### **REQUIRED_MESSAGE_TYPE**
1622
-
1623
- **All of the following must be true:**
1624
- - $.message.issue.actors[*].type must be present in the payload
1625
- - 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"]`,
1626
- DebugInfo: &validationutils.DebugInfo{
1627
- FedConfig: configureDebugInfo,
1628
- },
1629
- }
1630
- return []validationutils.ValidationOutput{result}, nil
1631
- }
1632
-
1633
- }
1634
-
1635
- result := validationutils.ValidationOutput{
1636
- TestName: "REQUIRED_MESSAGE_TYPE",
1637
- Valid: valid,
1638
- Code: 0,
1639
- DebugInfo: &validationutils.DebugInfo{
1640
- FedConfig: configureDebugInfo,
1641
- },
1642
- }
1643
-
1644
- if valid {
1645
- result.Code = 200
1646
- } else {
1647
- result.Code = 30000
1648
- }
1649
-
1650
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1651
- results = append(results, result)
1652
- results = append(results, subResults...)
1653
-
1654
- return results, nil
1655
- }
1656
- var REQUIRED_MESSAGE_NAME_13 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1657
-
1658
- if input.Config.SkipTestsDict != nil {
1659
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_NAME_13"]; skip {
1660
- return []validationutils.ValidationOutput{}, nil
1661
- }
1662
- }
1663
-
1664
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1665
-
1666
- subResults := make([]validationutils.ValidationOutput, 0)
1667
- valid := true
1668
- configureDebugInfo := ""
1669
- for _, testObjMap := range scope {
1670
- validationutils.UnusedFunction(testObjMap)
1671
-
1672
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.person.name", true)
1673
- validationutils.UnusedFunction(attr)
1674
-
1675
- validate := validationutils.ArePresent(attr)
1676
-
1677
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_NAME_13","attr":"$.message.issue.actors[*].info.person.name","_RETURN_":"attr are present","action":["on_issue"]}`
1678
-
1679
- if !validate {
1680
- result := validationutils.ValidationOutput{
1681
- TestName: "REQUIRED_MESSAGE_NAME_13",
1682
- Valid: false,
1683
- Code: 30000,
1684
- Description: `#### **REQUIRED_MESSAGE_NAME_13**
1685
-
1686
- - $.message.issue.actors[*].info.person.name must be present in the payload`,
1687
- DebugInfo: &validationutils.DebugInfo{
1688
- FedConfig: configureDebugInfo,
1689
- },
1690
- }
1691
- return []validationutils.ValidationOutput{result}, nil
1692
- }
1693
-
1694
- }
1695
-
1696
- result := validationutils.ValidationOutput{
1697
- TestName: "REQUIRED_MESSAGE_NAME_13",
1698
- Valid: valid,
1699
- Code: 0,
1700
- DebugInfo: &validationutils.DebugInfo{
1701
- FedConfig: configureDebugInfo,
1702
- },
1703
- }
1704
-
1705
- if valid {
1706
- result.Code = 200
1707
- } else {
1708
- result.Code = 30000
1709
- }
1710
-
1711
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1712
- results = append(results, result)
1713
- results = append(results, subResults...)
1714
-
1715
- return results, nil
1716
- }
1717
- var REQUIRED_MESSAGE_PHONE = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1718
-
1719
- if input.Config.SkipTestsDict != nil {
1720
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_PHONE"]; skip {
1721
- return []validationutils.ValidationOutput{}, nil
1722
- }
1723
- }
1724
-
1725
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1726
-
1727
- subResults := make([]validationutils.ValidationOutput, 0)
1728
- valid := true
1729
- configureDebugInfo := ""
1730
- for _, testObjMap := range scope {
1731
- validationutils.UnusedFunction(testObjMap)
1732
-
1733
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.contact.phone", true)
1734
- validationutils.UnusedFunction(attr)
1735
-
1736
- validate := validationutils.ArePresent(attr)
1737
-
1738
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_PHONE","attr":"$.message.issue.actors[*].info.contact.phone","_RETURN_":"attr are present","action":["on_issue"]}`
1739
-
1740
- if !validate {
1741
- result := validationutils.ValidationOutput{
1742
- TestName: "REQUIRED_MESSAGE_PHONE",
1743
- Valid: false,
1744
- Code: 30000,
1745
- Description: `#### **REQUIRED_MESSAGE_PHONE**
1746
-
1747
- - $.message.issue.actors[*].info.contact.phone must be present in the payload`,
1748
- DebugInfo: &validationutils.DebugInfo{
1749
- FedConfig: configureDebugInfo,
1750
- },
1751
- }
1752
- return []validationutils.ValidationOutput{result}, nil
1753
- }
1754
-
1755
- }
1756
-
1757
- result := validationutils.ValidationOutput{
1758
- TestName: "REQUIRED_MESSAGE_PHONE",
1759
- Valid: valid,
1760
- Code: 0,
1761
- DebugInfo: &validationutils.DebugInfo{
1762
- FedConfig: configureDebugInfo,
1763
- },
1764
- }
1765
-
1766
- if valid {
1767
- result.Code = 200
1768
- } else {
1769
- result.Code = 30000
1770
- }
1771
-
1772
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1773
- results = append(results, result)
1774
- results = append(results, subResults...)
1775
-
1776
- return results, nil
1777
- }
1778
- var REQUIRED_MESSAGE_EMAIL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1779
-
1780
- if input.Config.SkipTestsDict != nil {
1781
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_EMAIL"]; skip {
1782
- return []validationutils.ValidationOutput{}, nil
1783
- }
1784
- }
1785
-
1786
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1787
-
1788
- subResults := make([]validationutils.ValidationOutput, 0)
1789
- valid := true
1790
- configureDebugInfo := ""
1791
- for _, testObjMap := range scope {
1792
- validationutils.UnusedFunction(testObjMap)
1793
-
1794
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actors[*].info.contact.email", true)
1795
- validationutils.UnusedFunction(attr)
1796
-
1797
- validate := validationutils.ArePresent(attr)
1798
-
1799
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_EMAIL","attr":"$.message.issue.actors[*].info.contact.email","_RETURN_":"attr are present","action":["on_issue"]}`
1800
-
1801
- if !validate {
1802
- result := validationutils.ValidationOutput{
1803
- TestName: "REQUIRED_MESSAGE_EMAIL",
1804
- Valid: false,
1805
- Code: 30000,
1806
- Description: `#### **REQUIRED_MESSAGE_EMAIL**
1807
-
1808
- - $.message.issue.actors[*].info.contact.email must be present in the payload`,
1809
- DebugInfo: &validationutils.DebugInfo{
1810
- FedConfig: configureDebugInfo,
1811
- },
1812
- }
1813
- return []validationutils.ValidationOutput{result}, nil
1814
- }
1815
-
1816
- }
1817
-
1818
- result := validationutils.ValidationOutput{
1819
- TestName: "REQUIRED_MESSAGE_EMAIL",
1820
- Valid: valid,
1821
- Code: 0,
1822
- DebugInfo: &validationutils.DebugInfo{
1823
- FedConfig: configureDebugInfo,
1824
- },
1825
- }
1826
-
1827
- if valid {
1828
- result.Code = 200
1829
- } else {
1830
- result.Code = 30000
1831
- }
1832
-
1833
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1834
- results = append(results, result)
1835
- results = append(results, subResults...)
1836
-
1837
- return results, nil
1838
- }
1839
- var REQUIRED_MESSAGE_ID_25 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1840
-
1841
- if input.Config.SkipTestsDict != nil {
1842
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ID_25"]; skip {
1843
- return []validationutils.ValidationOutput{}, nil
1844
- }
1845
- }
1846
-
1847
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1848
-
1849
- subResults := make([]validationutils.ValidationOutput, 0)
1850
- valid := true
1851
- configureDebugInfo := ""
1852
- for _, testObjMap := range scope {
1853
- validationutils.UnusedFunction(testObjMap)
1854
-
1855
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].id", true)
1856
- validationutils.UnusedFunction(attr)
1857
-
1858
- validate := validationutils.ArePresent(attr)
1859
-
1860
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ID_25","attr":"$.message.issue.actions[*].id","_RETURN_":"attr are present","action":["on_issue"]}`
1861
-
1862
- if !validate {
1863
- result := validationutils.ValidationOutput{
1864
- TestName: "REQUIRED_MESSAGE_ID_25",
1865
- Valid: false,
1866
- Code: 30000,
1867
- Description: `#### **REQUIRED_MESSAGE_ID_25**
1868
-
1869
- - $.message.issue.actions[*].id must be present in the payload`,
1870
- DebugInfo: &validationutils.DebugInfo{
1871
- FedConfig: configureDebugInfo,
1872
- },
1873
- }
1874
- return []validationutils.ValidationOutput{result}, nil
1875
- }
1876
-
1877
- }
1878
-
1879
- result := validationutils.ValidationOutput{
1880
- TestName: "REQUIRED_MESSAGE_ID_25",
1881
- Valid: valid,
1882
- Code: 0,
1883
- DebugInfo: &validationutils.DebugInfo{
1884
- FedConfig: configureDebugInfo,
1885
- },
1886
- }
1887
-
1888
- if valid {
1889
- result.Code = 200
1890
- } else {
1891
- result.Code = 30000
1892
- }
1893
-
1894
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1895
- results = append(results, result)
1896
- results = append(results, subResults...)
1897
-
1898
- return results, nil
1899
- }
1900
- var REQUIRED_MESSAGE_CODE_26 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1901
-
1902
- if input.Config.SkipTestsDict != nil {
1903
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CODE_26"]; skip {
1904
- return []validationutils.ValidationOutput{}, nil
1905
- }
1906
- }
1907
-
1908
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1909
-
1910
- subResults := make([]validationutils.ValidationOutput, 0)
1911
- valid := true
1912
- configureDebugInfo := ""
1913
- for _, testObjMap := range scope {
1914
- validationutils.UnusedFunction(testObjMap)
1915
-
1916
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].descriptor.code", true)
1917
- validationutils.UnusedFunction(attr)
1918
-
1919
- validate := validationutils.ArePresent(attr)
1920
-
1921
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CODE_26","attr":"$.message.issue.actions[*].descriptor.code","_RETURN_":"attr are present","action":["on_issue"]}`
1922
-
1923
- if !validate {
1924
- result := validationutils.ValidationOutput{
1925
- TestName: "REQUIRED_MESSAGE_CODE_26",
1926
- Valid: false,
1927
- Code: 30000,
1928
- Description: `#### **REQUIRED_MESSAGE_CODE_26**
1929
-
1930
- - $.message.issue.actions[*].descriptor.code must be present in the payload`,
1931
- DebugInfo: &validationutils.DebugInfo{
1932
- FedConfig: configureDebugInfo,
1933
- },
1934
- }
1935
- return []validationutils.ValidationOutput{result}, nil
1936
- }
1937
-
1938
- }
1939
-
1940
- result := validationutils.ValidationOutput{
1941
- TestName: "REQUIRED_MESSAGE_CODE_26",
1942
- Valid: valid,
1943
- Code: 0,
1944
- DebugInfo: &validationutils.DebugInfo{
1945
- FedConfig: configureDebugInfo,
1946
- },
1947
- }
1948
-
1949
- if valid {
1950
- result.Code = 200
1951
- } else {
1952
- result.Code = 30000
1953
- }
1954
-
1955
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1956
- results = append(results, result)
1957
- results = append(results, subResults...)
1958
-
1959
- return results, nil
1960
- }
1961
- var REQUIRED_MESSAGE_SHORT_DESC_27 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1962
-
1963
- if input.Config.SkipTestsDict != nil {
1964
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_SHORT_DESC_27"]; skip {
1965
- return []validationutils.ValidationOutput{}, nil
1966
- }
1967
- }
1968
-
1969
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
1970
-
1971
- subResults := make([]validationutils.ValidationOutput, 0)
1972
- valid := true
1973
- configureDebugInfo := ""
1974
- for _, testObjMap := range scope {
1975
- validationutils.UnusedFunction(testObjMap)
1976
-
1977
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].descriptor.short_desc", true)
1978
- validationutils.UnusedFunction(attr)
1979
-
1980
- validate := validationutils.ArePresent(attr)
1981
-
1982
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_SHORT_DESC_27","attr":"$.message.issue.actions[*].descriptor.short_desc","_RETURN_":"attr are present","action":["on_issue"]}`
1983
-
1984
- if !validate {
1985
- result := validationutils.ValidationOutput{
1986
- TestName: "REQUIRED_MESSAGE_SHORT_DESC_27",
1987
- Valid: false,
1988
- Code: 30000,
1989
- Description: `#### **REQUIRED_MESSAGE_SHORT_DESC_27**
1990
-
1991
- - $.message.issue.actions[*].descriptor.short_desc must be present in the payload`,
1992
- DebugInfo: &validationutils.DebugInfo{
1993
- FedConfig: configureDebugInfo,
1994
- },
1995
- }
1996
- return []validationutils.ValidationOutput{result}, nil
1997
- }
1998
-
1999
- }
2000
-
2001
- result := validationutils.ValidationOutput{
2002
- TestName: "REQUIRED_MESSAGE_SHORT_DESC_27",
2003
- Valid: valid,
2004
- Code: 0,
2005
- DebugInfo: &validationutils.DebugInfo{
2006
- FedConfig: configureDebugInfo,
2007
- },
2008
- }
2009
-
2010
- if valid {
2011
- result.Code = 200
2012
- } else {
2013
- result.Code = 30000
2014
- }
2015
-
2016
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2017
- results = append(results, result)
2018
- results = append(results, subResults...)
2019
-
2020
- return results, nil
2021
- }
2022
- var REQUIRED_MESSAGE_UPDATED_AT_28 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2023
-
2024
- if input.Config.SkipTestsDict != nil {
2025
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_UPDATED_AT_28"]; skip {
2026
- return []validationutils.ValidationOutput{}, nil
2027
- }
2028
- }
2029
-
2030
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2031
-
2032
- subResults := make([]validationutils.ValidationOutput, 0)
2033
- valid := true
2034
- configureDebugInfo := ""
2035
- for _, testObjMap := range scope {
2036
- validationutils.UnusedFunction(testObjMap)
2037
-
2038
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].updated_at", true)
2039
- validationutils.UnusedFunction(attr)
2040
-
2041
- validate := validationutils.ArePresent(attr)
2042
-
2043
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_UPDATED_AT_28","attr":"$.message.issue.actions[*].updated_at","_RETURN_":"attr are present","action":["on_issue"]}`
2044
-
2045
- if !validate {
2046
- result := validationutils.ValidationOutput{
2047
- TestName: "REQUIRED_MESSAGE_UPDATED_AT_28",
2048
- Valid: false,
2049
- Code: 30000,
2050
- Description: `#### **REQUIRED_MESSAGE_UPDATED_AT_28**
2051
-
2052
- - $.message.issue.actions[*].updated_at must be present in the payload`,
2053
- DebugInfo: &validationutils.DebugInfo{
2054
- FedConfig: configureDebugInfo,
2055
- },
2056
- }
2057
- return []validationutils.ValidationOutput{result}, nil
2058
- }
2059
-
2060
- }
2061
-
2062
- result := validationutils.ValidationOutput{
2063
- TestName: "REQUIRED_MESSAGE_UPDATED_AT_28",
2064
- Valid: valid,
2065
- Code: 0,
2066
- DebugInfo: &validationutils.DebugInfo{
2067
- FedConfig: configureDebugInfo,
2068
- },
2069
- }
2070
-
2071
- if valid {
2072
- result.Code = 200
2073
- } else {
2074
- result.Code = 30000
2075
- }
2076
-
2077
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2078
- results = append(results, result)
2079
- results = append(results, subResults...)
2080
-
2081
- return results, nil
2082
- }
2083
- var REQUIRED_MESSAGE_ACTION_BY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2084
-
2085
- if input.Config.SkipTestsDict != nil {
2086
- if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ACTION_BY"]; skip {
2087
- return []validationutils.ValidationOutput{}, nil
2088
- }
2089
- }
2090
-
2091
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2092
-
2093
- subResults := make([]validationutils.ValidationOutput, 0)
2094
- valid := true
2095
- configureDebugInfo := ""
2096
- for _, testObjMap := range scope {
2097
- validationutils.UnusedFunction(testObjMap)
2098
-
2099
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.actions[*].action_by", true)
2100
- validationutils.UnusedFunction(attr)
2101
-
2102
- validate := validationutils.ArePresent(attr)
2103
-
2104
- configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ACTION_BY","attr":"$.message.issue.actions[*].action_by","_RETURN_":"attr are present","action":["on_issue"]}`
2105
-
2106
- if !validate {
2107
- result := validationutils.ValidationOutput{
2108
- TestName: "REQUIRED_MESSAGE_ACTION_BY",
2109
- Valid: false,
2110
- Code: 30000,
2111
- Description: `#### **REQUIRED_MESSAGE_ACTION_BY**
2112
-
2113
- - $.message.issue.actions[*].action_by must be present in the payload`,
2114
- DebugInfo: &validationutils.DebugInfo{
2115
- FedConfig: configureDebugInfo,
2116
- },
2117
- }
2118
- return []validationutils.ValidationOutput{result}, nil
2119
- }
2120
-
2121
- }
2122
-
2123
- result := validationutils.ValidationOutput{
2124
- TestName: "REQUIRED_MESSAGE_ACTION_BY",
2125
- Valid: valid,
2126
- Code: 0,
2127
- DebugInfo: &validationutils.DebugInfo{
2128
- FedConfig: configureDebugInfo,
2129
- },
2130
- }
2131
-
2132
- if valid {
2133
- result.Code = 200
2134
- } else {
2135
- result.Code = 30000
2136
- }
2137
-
2138
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2139
- results = append(results, result)
2140
- results = append(results, subResults...)
2141
-
2142
- return results, nil
2143
- }
2144
-
2145
- var testFunctions = validationutils.TestFunctionArray{
2146
- REQUIRED_MESSAGE_ID,
2147
- REQUIRED_MESSAGE_STATUS,
2148
- REQUIRED_MESSAGE_LEVEL,
2149
- REQUIRED_MESSAGE_CREATED_AT,
2150
- REQUIRED_MESSAGE_UPDATED_AT,
2151
- REQUIRED_MESSAGE_REF_ID,
2152
- REQUIRED_MESSAGE_REF_TYPE,
2153
- REQUIRED_EXPECTED_RESPONSE_TIME,
2154
- REQUIRED_EXPECTED_RESOLUTION_TIME,
2155
- REQUIRED_MESSAGE_ID_10,
2156
- REQUIRED_MESSAGE_TYPE,
2157
- REQUIRED_MESSAGE_NAME_13,
2158
- REQUIRED_MESSAGE_PHONE,
2159
- REQUIRED_MESSAGE_EMAIL,
2160
- REQUIRED_MESSAGE_ID_25,
2161
- REQUIRED_MESSAGE_CODE_26,
2162
- REQUIRED_MESSAGE_SHORT_DESC_27,
2163
- REQUIRED_MESSAGE_UPDATED_AT_28,
2164
- REQUIRED_MESSAGE_ACTION_BY,
2165
- }
2166
-
2167
- allResults := make([]validationutils.ValidationOutput, 0)
2168
-
2169
- for _, testFunc := range testFunctions {
2170
- results, err := testFunc(input)
2171
- if err != nil {
2172
- return nil, err
2173
- }
2174
- allResults = append(allResults, results...)
2175
- }
2176
-
2177
- subResults = allResults
2178
- // if all subResults are valid, then valid is true
2179
- valid = true
2180
- for _, res := range subResults {
2181
- if !res.Valid {
2182
- valid = false
2183
- break
2184
- }
2185
- }
2186
-
2187
- configureDebugInfo = `NESTED_TEST_OBJECT`
2188
-
2189
- }
2190
-
2191
- result := validationutils.ValidationOutput{
2192
- TestName: "ON_ISSUE_VALIDATION_VERSION_200",
2193
- Valid: valid,
2194
- Code: 0,
2195
- DebugInfo: &validationutils.DebugInfo{
2196
- FedConfig: configureDebugInfo,
2197
- },
2198
- }
2199
-
2200
- if valid {
2201
- result.Code = 200
2202
- } else {
2203
- result.Code = 30000
2204
- }
2205
-
2206
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2207
- results = append(results, result)
2208
- results = append(results, subResults...)
2209
-
2210
- return results, nil
2211
- }
2212
- var ON_ISSUE_VALIDATION_VERSION_100 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2213
-
2214
- if input.Config.SkipTestsDict != nil {
2215
- if _, skip := input.Config.SkipTestsDict["ON_ISSUE_VALIDATION_VERSION_100"]; skip {
2216
- return []validationutils.ValidationOutput{}, nil
2217
- }
2218
- }
2219
-
2220
- scope := validationutils.GetJsonPath(input.Payload, "$.message.issue.issue_actions", true)
2221
-
2222
- subResults := make([]validationutils.ValidationOutput, 0)
2223
- valid := true
2224
- configureDebugInfo := ""
2225
- for _, testObjMap := range scope {
2226
- validationutils.UnusedFunction(testObjMap)
2227
-
2228
- var REQUIRED_ISSUE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2229
-
2230
- if input.Config.SkipTestsDict != nil {
2231
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_ID"]; skip {
2232
- return []validationutils.ValidationOutput{}, nil
2233
- }
2234
- }
2235
-
2236
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2237
-
2238
- subResults := make([]validationutils.ValidationOutput, 0)
2239
- valid := true
2240
- configureDebugInfo := ""
2241
- for _, testObjMap := range scope {
2242
- validationutils.UnusedFunction(testObjMap)
2243
-
2244
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.id", true)
2245
- validationutils.UnusedFunction(attr)
2246
-
2247
- validate := validationutils.ArePresent(attr)
2248
-
2249
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_ID","attr":"$.message.issue.id","_RETURN_":"attr are present","action":["on_issue"]}`
2250
-
2251
- if !validate {
2252
- result := validationutils.ValidationOutput{
2253
- TestName: "REQUIRED_ISSUE_ID",
2254
- Valid: false,
2255
- Code: 30000,
2256
- Description: `#### **REQUIRED_ISSUE_ID**
2257
-
2258
- - $.message.issue.id must be present in the payload`,
2259
- DebugInfo: &validationutils.DebugInfo{
2260
- FedConfig: configureDebugInfo,
2261
- },
2262
- }
2263
- return []validationutils.ValidationOutput{result}, nil
2264
- }
2265
-
2266
- }
2267
-
2268
- result := validationutils.ValidationOutput{
2269
- TestName: "REQUIRED_ISSUE_ID",
2270
- Valid: valid,
2271
- Code: 0,
2272
- DebugInfo: &validationutils.DebugInfo{
2273
- FedConfig: configureDebugInfo,
2274
- },
2275
- }
2276
-
2277
- if valid {
2278
- result.Code = 200
2279
- } else {
2280
- result.Code = 30000
2281
- }
2282
-
2283
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2284
- results = append(results, result)
2285
- results = append(results, subResults...)
2286
-
2287
- return results, nil
2288
- }
2289
- var REQUIRED_RESPONDENT_ACTION = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2290
-
2291
- if input.Config.SkipTestsDict != nil {
2292
- if _, skip := input.Config.SkipTestsDict["REQUIRED_RESPONDENT_ACTION"]; skip {
2293
- return []validationutils.ValidationOutput{}, nil
2294
- }
2295
- }
2296
-
2297
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2298
-
2299
- subResults := make([]validationutils.ValidationOutput, 0)
2300
- valid := true
2301
- configureDebugInfo := ""
2302
- for _, testObjMap := range scope {
2303
- validationutils.UnusedFunction(testObjMap)
2304
-
2305
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.respondent_actions[*].respondent_action", true)
2306
- validationutils.UnusedFunction(attr)
2307
- enumList := validationutils.StringSliceToInterface([]string{`OPEN`, `PROCESSING`, `RESOLVED`, `CLOSED`, `INFO_PROVIDED`, `NEED_MORE_INFO`})
2308
- validationutils.UnusedFunction(enumList)
2309
-
2310
- validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
2311
-
2312
- configureDebugInfo = `{"_NAME_":"REQUIRED_RESPONDENT_ACTION","attr":"$.message.issue.issue_actions.respondent_actions[*].respondent_action","_RETURN_":"attr are present && attr all in enumList","enumList":["OPEN","PROCESSING","RESOLVED","CLOSED","INFO_PROVIDED","NEED_MORE_INFO"],"action":["on_issue"]}`
2313
-
2314
- if !validate {
2315
- result := validationutils.ValidationOutput{
2316
- TestName: "REQUIRED_RESPONDENT_ACTION",
2317
- Valid: false,
2318
- Code: 30000,
2319
- Description: `#### **REQUIRED_RESPONDENT_ACTION**
2320
-
2321
- **All of the following must be true:**
2322
- - $.message.issue.issue_actions.respondent_actions[*].respondent_action must be present in the payload
2323
- - All elements of $.message.issue.issue_actions.respondent_actions[*].respondent_action must be in ["OPEN", "PROCESSING", "RESOLVED", "CLOSED", "INFO_PROVIDED", "NEED_MORE_INFO"]`,
2324
- DebugInfo: &validationutils.DebugInfo{
2325
- FedConfig: configureDebugInfo,
2326
- },
2327
- }
2328
- return []validationutils.ValidationOutput{result}, nil
2329
- }
2330
-
2331
- }
2332
-
2333
- result := validationutils.ValidationOutput{
2334
- TestName: "REQUIRED_RESPONDENT_ACTION",
2335
- Valid: valid,
2336
- Code: 0,
2337
- DebugInfo: &validationutils.DebugInfo{
2338
- FedConfig: configureDebugInfo,
2339
- },
2340
- }
2341
-
2342
- if valid {
2343
- result.Code = 200
2344
- } else {
2345
- result.Code = 30000
2346
- }
2347
-
2348
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2349
- results = append(results, result)
2350
- results = append(results, subResults...)
2351
-
2352
- return results, nil
2353
- }
2354
- var REQUIRED_RESPONDENT_SHORT_DESC = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2355
-
2356
- if input.Config.SkipTestsDict != nil {
2357
- if _, skip := input.Config.SkipTestsDict["REQUIRED_RESPONDENT_SHORT_DESC"]; skip {
2358
- return []validationutils.ValidationOutput{}, nil
2359
- }
2360
- }
2361
-
2362
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2363
-
2364
- subResults := make([]validationutils.ValidationOutput, 0)
2365
- valid := true
2366
- configureDebugInfo := ""
2367
- for _, testObjMap := range scope {
2368
- validationutils.UnusedFunction(testObjMap)
2369
-
2370
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.respondent_actions[*].short_desc", true)
2371
- validationutils.UnusedFunction(attr)
2372
-
2373
- validate := validationutils.ArePresent(attr)
2374
-
2375
- configureDebugInfo = `{"_NAME_":"REQUIRED_RESPONDENT_SHORT_DESC","attr":"$.message.issue.issue_actions.respondent_actions[*].short_desc","_RETURN_":"attr are present","action":["on_issue"]}`
2376
-
2377
- if !validate {
2378
- result := validationutils.ValidationOutput{
2379
- TestName: "REQUIRED_RESPONDENT_SHORT_DESC",
2380
- Valid: false,
2381
- Code: 30000,
2382
- Description: `#### **REQUIRED_RESPONDENT_SHORT_DESC**
2383
-
2384
- - $.message.issue.issue_actions.respondent_actions[*].short_desc must be present in the payload`,
2385
- DebugInfo: &validationutils.DebugInfo{
2386
- FedConfig: configureDebugInfo,
2387
- },
2388
- }
2389
- return []validationutils.ValidationOutput{result}, nil
2390
- }
2391
-
2392
- }
2393
-
2394
- result := validationutils.ValidationOutput{
2395
- TestName: "REQUIRED_RESPONDENT_SHORT_DESC",
2396
- Valid: valid,
2397
- Code: 0,
2398
- DebugInfo: &validationutils.DebugInfo{
2399
- FedConfig: configureDebugInfo,
2400
- },
2401
- }
2402
-
2403
- if valid {
2404
- result.Code = 200
2405
- } else {
2406
- result.Code = 30000
2407
- }
2408
-
2409
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2410
- results = append(results, result)
2411
- results = append(results, subResults...)
2412
-
2413
- return results, nil
2414
- }
2415
- var REQUIRED_RESPONDENT_UPDATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2416
-
2417
- if input.Config.SkipTestsDict != nil {
2418
- if _, skip := input.Config.SkipTestsDict["REQUIRED_RESPONDENT_UPDATED_AT"]; skip {
2419
- return []validationutils.ValidationOutput{}, nil
2420
- }
2421
- }
2422
-
2423
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2424
-
2425
- subResults := make([]validationutils.ValidationOutput, 0)
2426
- valid := true
2427
- configureDebugInfo := ""
2428
- for _, testObjMap := range scope {
2429
- validationutils.UnusedFunction(testObjMap)
2430
-
2431
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.respondent_actions[*].updated_at", true)
2432
- validationutils.UnusedFunction(attr)
2433
-
2434
- validate := validationutils.ArePresent(attr)
2435
-
2436
- configureDebugInfo = `{"_NAME_":"REQUIRED_RESPONDENT_UPDATED_AT","attr":"$.message.issue.issue_actions.respondent_actions[*].updated_at","_RETURN_":"attr are present","action":["on_issue"]}`
2437
-
2438
- if !validate {
2439
- result := validationutils.ValidationOutput{
2440
- TestName: "REQUIRED_RESPONDENT_UPDATED_AT",
2441
- Valid: false,
2442
- Code: 30000,
2443
- Description: `#### **REQUIRED_RESPONDENT_UPDATED_AT**
2444
-
2445
- - $.message.issue.issue_actions.respondent_actions[*].updated_at must be present in the payload`,
2446
- DebugInfo: &validationutils.DebugInfo{
2447
- FedConfig: configureDebugInfo,
2448
- },
2449
- }
2450
- return []validationutils.ValidationOutput{result}, nil
2451
- }
2452
-
2453
- }
2454
-
2455
- result := validationutils.ValidationOutput{
2456
- TestName: "REQUIRED_RESPONDENT_UPDATED_AT",
2457
- Valid: valid,
2458
- Code: 0,
2459
- DebugInfo: &validationutils.DebugInfo{
2460
- FedConfig: configureDebugInfo,
2461
- },
2462
- }
2463
-
2464
- if valid {
2465
- result.Code = 200
2466
- } else {
2467
- result.Code = 30000
2468
- }
2469
-
2470
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2471
- results = append(results, result)
2472
- results = append(results, subResults...)
2473
-
2474
- return results, nil
2475
- }
2476
- var REQUIRED_RESPONDENT_UPDATED_BY_PERSON = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2477
-
2478
- if input.Config.SkipTestsDict != nil {
2479
- if _, skip := input.Config.SkipTestsDict["REQUIRED_RESPONDENT_UPDATED_BY_PERSON"]; skip {
2480
- return []validationutils.ValidationOutput{}, nil
2481
- }
2482
- }
2483
-
2484
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2485
-
2486
- subResults := make([]validationutils.ValidationOutput, 0)
2487
- valid := true
2488
- configureDebugInfo := ""
2489
- for _, testObjMap := range scope {
2490
- validationutils.UnusedFunction(testObjMap)
2491
-
2492
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.respondent_actions[*].updated_by.person.name", true)
2493
- validationutils.UnusedFunction(attr)
2494
-
2495
- validate := validationutils.ArePresent(attr)
2496
-
2497
- configureDebugInfo = `{"_NAME_":"REQUIRED_RESPONDENT_UPDATED_BY_PERSON","attr":"$.message.issue.issue_actions.respondent_actions[*].updated_by.person.name","_RETURN_":"attr are present","action":["on_issue"]}`
2498
-
2499
- if !validate {
2500
- result := validationutils.ValidationOutput{
2501
- TestName: "REQUIRED_RESPONDENT_UPDATED_BY_PERSON",
2502
- Valid: false,
2503
- Code: 30000,
2504
- Description: `#### **REQUIRED_RESPONDENT_UPDATED_BY_PERSON**
2505
-
2506
- - $.message.issue.issue_actions.respondent_actions[*].updated_by.person.name must be present in the payload`,
2507
- DebugInfo: &validationutils.DebugInfo{
2508
- FedConfig: configureDebugInfo,
2509
- },
2510
- }
2511
- return []validationutils.ValidationOutput{result}, nil
2512
- }
2513
-
2514
- }
2515
-
2516
- result := validationutils.ValidationOutput{
2517
- TestName: "REQUIRED_RESPONDENT_UPDATED_BY_PERSON",
2518
- Valid: valid,
2519
- Code: 0,
2520
- DebugInfo: &validationutils.DebugInfo{
2521
- FedConfig: configureDebugInfo,
2522
- },
2523
- }
2524
-
2525
- if valid {
2526
- result.Code = 200
2527
- } else {
2528
- result.Code = 30000
2529
- }
2530
-
2531
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2532
- results = append(results, result)
2533
- results = append(results, subResults...)
2534
-
2535
- return results, nil
2536
- }
2537
- var REQUIRED_RESPONDENT_UPDATED_BY_ORG = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2538
-
2539
- if input.Config.SkipTestsDict != nil {
2540
- if _, skip := input.Config.SkipTestsDict["REQUIRED_RESPONDENT_UPDATED_BY_ORG"]; skip {
2541
- return []validationutils.ValidationOutput{}, nil
2542
- }
2543
- }
2544
-
2545
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2546
-
2547
- subResults := make([]validationutils.ValidationOutput, 0)
2548
- valid := true
2549
- configureDebugInfo := ""
2550
- for _, testObjMap := range scope {
2551
- validationutils.UnusedFunction(testObjMap)
2552
-
2553
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.issue_actions.respondent_actions[*].updated_by.org.name", true)
2554
- validationutils.UnusedFunction(attr)
2555
-
2556
- validate := validationutils.ArePresent(attr)
2557
-
2558
- configureDebugInfo = `{"_NAME_":"REQUIRED_RESPONDENT_UPDATED_BY_ORG","attr":"$.message.issue.issue_actions.respondent_actions[*].updated_by.org.name","_RETURN_":"attr are present","action":["on_issue"]}`
2559
-
2560
- if !validate {
2561
- result := validationutils.ValidationOutput{
2562
- TestName: "REQUIRED_RESPONDENT_UPDATED_BY_ORG",
2563
- Valid: false,
2564
- Code: 30000,
2565
- Description: `#### **REQUIRED_RESPONDENT_UPDATED_BY_ORG**
2566
-
2567
- - $.message.issue.issue_actions.respondent_actions[*].updated_by.org.name must be present in the payload`,
2568
- DebugInfo: &validationutils.DebugInfo{
2569
- FedConfig: configureDebugInfo,
2570
- },
2571
- }
2572
- return []validationutils.ValidationOutput{result}, nil
2573
- }
2574
-
2575
- }
2576
-
2577
- result := validationutils.ValidationOutput{
2578
- TestName: "REQUIRED_RESPONDENT_UPDATED_BY_ORG",
2579
- Valid: valid,
2580
- Code: 0,
2581
- DebugInfo: &validationutils.DebugInfo{
2582
- FedConfig: configureDebugInfo,
2583
- },
2584
- }
2585
-
2586
- if valid {
2587
- result.Code = 200
2588
- } else {
2589
- result.Code = 30000
2590
- }
2591
-
2592
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2593
- results = append(results, result)
2594
- results = append(results, subResults...)
2595
-
2596
- return results, nil
2597
- }
2598
- var REQUIRED_ISSUE_CREATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2599
-
2600
- if input.Config.SkipTestsDict != nil {
2601
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_CREATED_AT"]; skip {
2602
- return []validationutils.ValidationOutput{}, nil
2603
- }
2604
- }
2605
-
2606
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2607
-
2608
- subResults := make([]validationutils.ValidationOutput, 0)
2609
- valid := true
2610
- configureDebugInfo := ""
2611
- for _, testObjMap := range scope {
2612
- validationutils.UnusedFunction(testObjMap)
2613
-
2614
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.created_at", true)
2615
- validationutils.UnusedFunction(attr)
2616
-
2617
- validate := validationutils.ArePresent(attr)
2618
-
2619
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_CREATED_AT","attr":"$.message.issue.created_at","_RETURN_":"attr are present","action":["on_issue"]}`
2620
-
2621
- if !validate {
2622
- result := validationutils.ValidationOutput{
2623
- TestName: "REQUIRED_ISSUE_CREATED_AT",
2624
- Valid: false,
2625
- Code: 30000,
2626
- Description: `#### **REQUIRED_ISSUE_CREATED_AT**
2627
-
2628
- - $.message.issue.created_at must be present in the payload`,
2629
- DebugInfo: &validationutils.DebugInfo{
2630
- FedConfig: configureDebugInfo,
2631
- },
2632
- }
2633
- return []validationutils.ValidationOutput{result}, nil
2634
- }
2635
-
2636
- }
2637
-
2638
- result := validationutils.ValidationOutput{
2639
- TestName: "REQUIRED_ISSUE_CREATED_AT",
2640
- Valid: valid,
2641
- Code: 0,
2642
- DebugInfo: &validationutils.DebugInfo{
2643
- FedConfig: configureDebugInfo,
2644
- },
2645
- }
2646
-
2647
- if valid {
2648
- result.Code = 200
2649
- } else {
2650
- result.Code = 30000
2651
- }
2652
-
2653
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2654
- results = append(results, result)
2655
- results = append(results, subResults...)
2656
-
2657
- return results, nil
2658
- }
2659
- var REQUIRED_ISSUE_UPDATED_AT = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
2660
-
2661
- if input.Config.SkipTestsDict != nil {
2662
- if _, skip := input.Config.SkipTestsDict["REQUIRED_ISSUE_UPDATED_AT"]; skip {
2663
- return []validationutils.ValidationOutput{}, nil
2664
- }
2665
- }
2666
-
2667
- scope := validationutils.GetJsonPath(input.Payload, "$", true)
2668
-
2669
- subResults := make([]validationutils.ValidationOutput, 0)
2670
- valid := true
2671
- configureDebugInfo := ""
2672
- for _, testObjMap := range scope {
2673
- validationutils.UnusedFunction(testObjMap)
2674
-
2675
- attr := validationutils.GetJsonPath(testObjMap, "$.message.issue.updated_at", true)
2676
- validationutils.UnusedFunction(attr)
2677
-
2678
- validate := validationutils.ArePresent(attr)
2679
-
2680
- configureDebugInfo = `{"_NAME_":"REQUIRED_ISSUE_UPDATED_AT","attr":"$.message.issue.updated_at","_RETURN_":"attr are present","action":["on_issue"]}`
2681
-
2682
- if !validate {
2683
- result := validationutils.ValidationOutput{
2684
- TestName: "REQUIRED_ISSUE_UPDATED_AT",
2685
- Valid: false,
2686
- Code: 30000,
2687
- Description: `#### **REQUIRED_ISSUE_UPDATED_AT**
2688
-
2689
- - $.message.issue.updated_at must be present in the payload`,
2690
- DebugInfo: &validationutils.DebugInfo{
2691
- FedConfig: configureDebugInfo,
2692
- },
2693
- }
2694
- return []validationutils.ValidationOutput{result}, nil
2695
- }
2696
-
2697
- }
2698
-
2699
- result := validationutils.ValidationOutput{
2700
- TestName: "REQUIRED_ISSUE_UPDATED_AT",
2701
- Valid: valid,
2702
- Code: 0,
2703
- DebugInfo: &validationutils.DebugInfo{
2704
- FedConfig: configureDebugInfo,
2705
- },
2706
- }
2707
-
2708
- if valid {
2709
- result.Code = 200
2710
- } else {
2711
- result.Code = 30000
2712
- }
2713
-
2714
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2715
- results = append(results, result)
2716
- results = append(results, subResults...)
2717
-
2718
- return results, nil
2719
- }
2720
-
2721
- var testFunctions = validationutils.TestFunctionArray{
2722
- REQUIRED_ISSUE_ID,
2723
- REQUIRED_RESPONDENT_ACTION,
2724
- REQUIRED_RESPONDENT_SHORT_DESC,
2725
- REQUIRED_RESPONDENT_UPDATED_AT,
2726
- REQUIRED_RESPONDENT_UPDATED_BY_PERSON,
2727
- REQUIRED_RESPONDENT_UPDATED_BY_ORG,
2728
- REQUIRED_ISSUE_CREATED_AT,
2729
- REQUIRED_ISSUE_UPDATED_AT,
2730
- }
2731
-
2732
- allResults := make([]validationutils.ValidationOutput, 0)
2733
-
2734
- for _, testFunc := range testFunctions {
2735
- results, err := testFunc(input)
2736
- if err != nil {
2737
- return nil, err
2738
- }
2739
- allResults = append(allResults, results...)
2740
- }
2741
-
2742
- subResults = allResults
2743
- // if all subResults are valid, then valid is true
2744
- valid = true
2745
- for _, res := range subResults {
2746
- if !res.Valid {
2747
- valid = false
2748
- break
2749
- }
2750
- }
2751
-
2752
- configureDebugInfo = `NESTED_TEST_OBJECT`
2753
-
2754
- }
2755
-
2756
- result := validationutils.ValidationOutput{
2757
- TestName: "ON_ISSUE_VALIDATION_VERSION_100",
2758
- Valid: valid,
2759
- Code: 0,
2760
- DebugInfo: &validationutils.DebugInfo{
2761
- FedConfig: configureDebugInfo,
2762
- },
2763
- }
2764
-
2765
- if valid {
2766
- result.Code = 200
2767
- } else {
2768
- result.Code = 30000
2769
- }
2770
-
2771
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2772
- results = append(results, result)
2773
- results = append(results, subResults...)
2774
-
2775
- return results, nil
2776
- }
2777
-
2778
- var testFunctions = validationutils.TestFunctionArray{
2779
- REQUIRED_CONTEXT_FIELDS,
2780
- ON_ISSUE_VALIDATION_VERSION_200,
2781
- ON_ISSUE_VALIDATION_VERSION_100,
2782
- }
2783
-
2784
- allResults := make([]validationutils.ValidationOutput, 0)
2785
-
2786
- for _, testFunc := range testFunctions {
2787
- results, err := testFunc(input)
2788
- if err != nil {
2789
- return nil, err
2790
- }
2791
- allResults = append(allResults, results...)
2792
- }
2793
-
2794
- subResults = allResults
2795
- // if all subResults are valid, then valid is true
2796
- valid = true
2797
- for _, res := range subResults {
2798
- if !res.Valid {
2799
- valid = false
2800
- break
2801
- }
2802
- }
2803
-
2804
- configureDebugInfo = `NESTED_TEST_OBJECT`
2805
-
2806
- }
2807
-
2808
- result := validationutils.ValidationOutput{
2809
- TestName: "On_issueValidations",
2810
- Valid: valid,
2811
- Code: 0,
2812
- DebugInfo: &validationutils.DebugInfo{
2813
- FedConfig: configureDebugInfo,
2814
- },
2815
- }
2816
-
2817
- if valid {
2818
- result.Code = 200
2819
- } else {
2820
- result.Code = 30000
2821
- }
2822
-
2823
- results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
2824
- results = append(results, result)
2825
- results = append(results, subResults...)
2826
-
2827
- return results, nil
2828
- }