ondc-code-generator 0.8.7 → 0.8.8

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 (110) hide show
  1. package/alpha/golang/newPkg/go.mod +3 -0
  2. package/alpha/golang/newPkg/jsonvalidations/cancel.go +1289 -0
  3. package/alpha/golang/newPkg/jsonvalidations/confirm.go +9121 -0
  4. package/alpha/golang/newPkg/jsonvalidations/init.go +4864 -0
  5. package/alpha/golang/newPkg/jsonvalidations/issue.go +4868 -0
  6. package/alpha/golang/newPkg/jsonvalidations/on_cancel.go +7111 -0
  7. package/alpha/golang/newPkg/jsonvalidations/on_confirm.go +8903 -0
  8. package/alpha/golang/newPkg/jsonvalidations/on_init.go +4445 -0
  9. package/alpha/golang/newPkg/jsonvalidations/on_issue.go +2828 -0
  10. package/alpha/golang/newPkg/jsonvalidations/on_issue_status.go +1938 -0
  11. package/alpha/golang/newPkg/jsonvalidations/on_search.go +3356 -0
  12. package/alpha/golang/newPkg/jsonvalidations/on_status.go +8129 -0
  13. package/alpha/golang/newPkg/jsonvalidations/on_track.go +1415 -0
  14. package/alpha/golang/newPkg/jsonvalidations/on_update.go +8700 -0
  15. package/alpha/golang/newPkg/jsonvalidations/search.go +3585 -0
  16. package/alpha/golang/newPkg/jsonvalidations/status.go +1073 -0
  17. package/alpha/golang/newPkg/jsonvalidations/track.go +1073 -0
  18. package/alpha/golang/newPkg/jsonvalidations/update.go +3012 -0
  19. package/alpha/golang/newPkg/main-validator.go +196 -0
  20. package/alpha/golang/newPkg/main-validator_test.go +165 -0
  21. package/alpha/golang/newPkg/storageutils/api_save_utils.go +83 -0
  22. package/alpha/golang/newPkg/storageutils/cancel.go +30 -0
  23. package/alpha/golang/newPkg/storageutils/confirm.go +30 -0
  24. package/alpha/golang/newPkg/storageutils/index.go +132 -0
  25. package/alpha/golang/newPkg/storageutils/init.go +30 -0
  26. package/alpha/golang/newPkg/storageutils/issue.go +30 -0
  27. package/alpha/golang/newPkg/storageutils/on_cancel.go +30 -0
  28. package/alpha/golang/newPkg/storageutils/on_confirm.go +30 -0
  29. package/alpha/golang/newPkg/storageutils/on_init.go +30 -0
  30. package/alpha/golang/newPkg/storageutils/on_issue.go +30 -0
  31. package/alpha/golang/newPkg/storageutils/on_issue_status.go +30 -0
  32. package/alpha/golang/newPkg/storageutils/on_search.go +30 -0
  33. package/alpha/golang/newPkg/storageutils/on_status.go +30 -0
  34. package/alpha/golang/newPkg/storageutils/on_track.go +30 -0
  35. package/alpha/golang/newPkg/storageutils/on_update.go +30 -0
  36. package/alpha/golang/newPkg/storageutils/save_utils.go +75 -0
  37. package/alpha/golang/newPkg/storageutils/search.go +30 -0
  38. package/alpha/golang/newPkg/storageutils/status.go +30 -0
  39. package/alpha/golang/newPkg/storageutils/track.go +30 -0
  40. package/alpha/golang/newPkg/storageutils/update.go +30 -0
  41. package/alpha/golang/newPkg/validationutils/json_normalizer.go +152 -0
  42. package/alpha/golang/newPkg/validationutils/json_path_utils.go +173 -0
  43. package/alpha/golang/newPkg/validationutils/storage-interface.go +107 -0
  44. package/alpha/golang/newPkg/validationutils/test-config.go +69 -0
  45. package/alpha/golang/newPkg/validationutils/validation_utils.go +429 -0
  46. package/alpha/golang/page/index.html +6137 -0
  47. package/alpha/golang/page/style.css +204 -0
  48. package/alpha/golang/readme.md +5939 -0
  49. package/alpha/golang/validPaths.json +14351 -0
  50. package/alpha/golang/validationpkg/go.mod +3 -0
  51. package/alpha/golang/validationpkg/jsonvalidations/cancel.go +1289 -0
  52. package/alpha/golang/validationpkg/jsonvalidations/confirm.go +9121 -0
  53. package/alpha/golang/validationpkg/jsonvalidations/init.go +4864 -0
  54. package/alpha/golang/validationpkg/jsonvalidations/issue.go +4868 -0
  55. package/alpha/golang/validationpkg/jsonvalidations/on_cancel.go +7111 -0
  56. package/alpha/golang/validationpkg/jsonvalidations/on_confirm.go +8903 -0
  57. package/alpha/golang/validationpkg/jsonvalidations/on_init.go +4445 -0
  58. package/alpha/golang/validationpkg/jsonvalidations/on_issue.go +2828 -0
  59. package/alpha/golang/validationpkg/jsonvalidations/on_issue_status.go +1938 -0
  60. package/alpha/golang/validationpkg/jsonvalidations/on_search.go +3356 -0
  61. package/alpha/golang/validationpkg/jsonvalidations/on_status.go +8129 -0
  62. package/alpha/golang/validationpkg/jsonvalidations/on_track.go +1415 -0
  63. package/alpha/golang/validationpkg/jsonvalidations/on_update.go +8700 -0
  64. package/alpha/golang/validationpkg/jsonvalidations/search.go +3585 -0
  65. package/alpha/golang/validationpkg/jsonvalidations/status.go +1073 -0
  66. package/alpha/golang/validationpkg/jsonvalidations/track.go +1073 -0
  67. package/alpha/golang/validationpkg/jsonvalidations/update.go +3012 -0
  68. package/alpha/golang/validationpkg/main-validator.go +196 -0
  69. package/alpha/golang/validationpkg/main-validator_test.go +165 -0
  70. package/alpha/golang/validationpkg/storageutils/api_save_utils.go +83 -0
  71. package/alpha/golang/validationpkg/storageutils/cancel.go +30 -0
  72. package/alpha/golang/validationpkg/storageutils/confirm.go +30 -0
  73. package/alpha/golang/validationpkg/storageutils/index.go +132 -0
  74. package/alpha/golang/validationpkg/storageutils/init.go +30 -0
  75. package/alpha/golang/validationpkg/storageutils/issue.go +30 -0
  76. package/alpha/golang/validationpkg/storageutils/on_cancel.go +30 -0
  77. package/alpha/golang/validationpkg/storageutils/on_confirm.go +30 -0
  78. package/alpha/golang/validationpkg/storageutils/on_init.go +30 -0
  79. package/alpha/golang/validationpkg/storageutils/on_issue.go +30 -0
  80. package/alpha/golang/validationpkg/storageutils/on_issue_status.go +30 -0
  81. package/alpha/golang/validationpkg/storageutils/on_search.go +30 -0
  82. package/alpha/golang/validationpkg/storageutils/on_status.go +30 -0
  83. package/alpha/golang/validationpkg/storageutils/on_track.go +30 -0
  84. package/alpha/golang/validationpkg/storageutils/on_update.go +30 -0
  85. package/alpha/golang/validationpkg/storageutils/save_utils.go +75 -0
  86. package/alpha/golang/validationpkg/storageutils/search.go +30 -0
  87. package/alpha/golang/validationpkg/storageutils/status.go +30 -0
  88. package/alpha/golang/validationpkg/storageutils/track.go +30 -0
  89. package/alpha/golang/validationpkg/storageutils/update.go +30 -0
  90. package/alpha/golang/validationpkg/validationutils/json_normalizer.go +152 -0
  91. package/alpha/golang/validationpkg/validationutils/json_path_utils.go +173 -0
  92. package/alpha/golang/validationpkg/validationutils/storage-interface.go +107 -0
  93. package/alpha/golang/validationpkg/validationutils/test-config.go +69 -0
  94. package/alpha/golang/validationpkg/validationutils/validation_utils.go +429 -0
  95. package/dist/bin/cli.js +4 -2
  96. package/dist/generator/config-compiler.d.ts +2 -2
  97. package/dist/generator/config-compiler.js +6 -4
  98. package/dist/generator/generators/classes/abstract-generator.d.ts +1 -0
  99. package/dist/generator/generators/go/go-generator.js +34 -17
  100. package/dist/generator/generators/go/templates/api-tests.mustache +1 -1
  101. package/dist/generator/generators/go/templates/go-mod.mustache +1 -1
  102. package/dist/generator/generators/go/templates/index.mustache +1 -1
  103. package/dist/generator/generators/go/templates/storage-templates/api-save-utils.mustache +1 -1
  104. package/dist/generator/generators/go/templates/storage-templates/api-save.mustache +1 -1
  105. package/dist/generator/generators/go/templates/storage-templates/index.mustache +1 -1
  106. package/dist/generator/generators/go/templates/storage-templates/save-utils.mustache +1 -1
  107. package/dist/generator/generators/go/templates/test-templates/validator-test.mustache +6 -6
  108. package/package.json +1 -1
  109. package/alpha/possible-json-paths.json +0 -248
  110. package/alpha/validPaths.json +0 -37198
@@ -0,0 +1,1289 @@
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 Cancel_Tests(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
10
+ totalResults, err := CancelValidations(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 == "CancelValidations" {
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 CancelValidations = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
65
+
66
+ if input.Config.SkipTestsDict != nil {
67
+ if _, skip := input.Config.SkipTestsDict["CancelValidations"]; 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_DOMAIN = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
81
+
82
+ if input.Config.SkipTestsDict != nil {
83
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_DOMAIN"]; 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
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.domain", true)
97
+ validationutils.UnusedFunction(attr)
98
+ enumList := validationutils.StringSliceToInterface([]string{`ONDC:LOG10`, `ONDC:LOG11`, `nic2004:60232`})
99
+ validationutils.UnusedFunction(enumList)
100
+
101
+ validate := (validationutils.ArePresent(attr)) && (validationutils.AllIn(attr, enumList))
102
+
103
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_DOMAIN","attr":"$.context.domain","_RETURN_":"attr are present && attr all in enumList","enumList":["ONDC:LOG10","ONDC:LOG11","nic2004:60232"]}`
104
+
105
+ if !validate {
106
+ result := validationutils.ValidationOutput{
107
+ TestName: "REQUIRED_CONTEXT_DOMAIN",
108
+ Valid: false,
109
+ Code: 30000,
110
+ Description: `#### **REQUIRED_CONTEXT_DOMAIN**
111
+
112
+ **All of the following must be true:**
113
+ - $.context.domain must be present in the payload
114
+ - All elements of $.context.domain must be in ["ONDC:LOG10", "ONDC:LOG11", "nic2004:60232"]`,
115
+ DebugInfo: &validationutils.DebugInfo{
116
+ FedConfig: configureDebugInfo,
117
+ },
118
+ }
119
+ return []validationutils.ValidationOutput{result}, nil
120
+ }
121
+
122
+ }
123
+
124
+ result := validationutils.ValidationOutput{
125
+ TestName: "REQUIRED_CONTEXT_DOMAIN",
126
+ Valid: valid,
127
+ Code: 0,
128
+ DebugInfo: &validationutils.DebugInfo{
129
+ FedConfig: configureDebugInfo,
130
+ },
131
+ }
132
+
133
+ if valid {
134
+ result.Code = 200
135
+ } else {
136
+ result.Code = 30000
137
+ }
138
+
139
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
140
+ results = append(results, result)
141
+ results = append(results, subResults...)
142
+
143
+ return results, nil
144
+ }
145
+ var REQUIRED_CONTEXT_COUNTRY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
146
+
147
+ if input.Config.SkipTestsDict != nil {
148
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_COUNTRY"]; skip {
149
+ return []validationutils.ValidationOutput{}, nil
150
+ }
151
+ }
152
+
153
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
154
+
155
+ subResults := make([]validationutils.ValidationOutput, 0)
156
+ valid := true
157
+ configureDebugInfo := ""
158
+ for _, testObjMap := range scope {
159
+ validationutils.UnusedFunction(testObjMap)
160
+
161
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.country", true)
162
+ validationutils.UnusedFunction(attr)
163
+
164
+ validate := validationutils.ArePresent(attr)
165
+
166
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_COUNTRY","attr":"$.context.country","_RETURN_":"attr are present"}`
167
+
168
+ if !validate {
169
+ result := validationutils.ValidationOutput{
170
+ TestName: "REQUIRED_CONTEXT_COUNTRY",
171
+ Valid: false,
172
+ Code: 30000,
173
+ Description: `#### **REQUIRED_CONTEXT_COUNTRY**
174
+
175
+ - $.context.country must be present in the payload`,
176
+ DebugInfo: &validationutils.DebugInfo{
177
+ FedConfig: configureDebugInfo,
178
+ },
179
+ }
180
+ return []validationutils.ValidationOutput{result}, nil
181
+ }
182
+
183
+ }
184
+
185
+ result := validationutils.ValidationOutput{
186
+ TestName: "REQUIRED_CONTEXT_COUNTRY",
187
+ Valid: valid,
188
+ Code: 0,
189
+ DebugInfo: &validationutils.DebugInfo{
190
+ FedConfig: configureDebugInfo,
191
+ },
192
+ }
193
+
194
+ if valid {
195
+ result.Code = 200
196
+ } else {
197
+ result.Code = 30000
198
+ }
199
+
200
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
201
+ results = append(results, result)
202
+ results = append(results, subResults...)
203
+
204
+ return results, nil
205
+ }
206
+ var REQUIRED_CONTEXT_CITY = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
207
+
208
+ if input.Config.SkipTestsDict != nil {
209
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_CITY"]; skip {
210
+ return []validationutils.ValidationOutput{}, nil
211
+ }
212
+ }
213
+
214
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
215
+
216
+ subResults := make([]validationutils.ValidationOutput, 0)
217
+ valid := true
218
+ configureDebugInfo := ""
219
+ for _, testObjMap := range scope {
220
+ validationutils.UnusedFunction(testObjMap)
221
+
222
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.city", true)
223
+ validationutils.UnusedFunction(attr)
224
+
225
+ validate := validationutils.ArePresent(attr)
226
+
227
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_CITY","attr":"$.context.city","_RETURN_":"attr are present"}`
228
+
229
+ if !validate {
230
+ result := validationutils.ValidationOutput{
231
+ TestName: "REQUIRED_CONTEXT_CITY",
232
+ Valid: false,
233
+ Code: 30000,
234
+ Description: `#### **REQUIRED_CONTEXT_CITY**
235
+
236
+ - $.context.city must be present in the payload`,
237
+ DebugInfo: &validationutils.DebugInfo{
238
+ FedConfig: configureDebugInfo,
239
+ },
240
+ }
241
+ return []validationutils.ValidationOutput{result}, nil
242
+ }
243
+
244
+ }
245
+
246
+ result := validationutils.ValidationOutput{
247
+ TestName: "REQUIRED_CONTEXT_CITY",
248
+ Valid: valid,
249
+ Code: 0,
250
+ DebugInfo: &validationutils.DebugInfo{
251
+ FedConfig: configureDebugInfo,
252
+ },
253
+ }
254
+
255
+ if valid {
256
+ result.Code = 200
257
+ } else {
258
+ result.Code = 30000
259
+ }
260
+
261
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
262
+ results = append(results, result)
263
+ results = append(results, subResults...)
264
+
265
+ return results, nil
266
+ }
267
+ var REQUIRED_CONTEXT_ACTION = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
268
+
269
+ if input.Config.SkipTestsDict != nil {
270
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_ACTION"]; skip {
271
+ return []validationutils.ValidationOutput{}, nil
272
+ }
273
+ }
274
+
275
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
276
+
277
+ subResults := make([]validationutils.ValidationOutput, 0)
278
+ valid := true
279
+ configureDebugInfo := ""
280
+ for _, testObjMap := range scope {
281
+ validationutils.UnusedFunction(testObjMap)
282
+
283
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.action", true)
284
+ validationutils.UnusedFunction(attr)
285
+
286
+ validate := validationutils.ArePresent(attr)
287
+
288
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_ACTION","attr":"$.context.action","_RETURN_":"attr are present"}`
289
+
290
+ if !validate {
291
+ result := validationutils.ValidationOutput{
292
+ TestName: "REQUIRED_CONTEXT_ACTION",
293
+ Valid: false,
294
+ Code: 30000,
295
+ Description: `#### **REQUIRED_CONTEXT_ACTION**
296
+
297
+ - $.context.action must be present in the payload`,
298
+ DebugInfo: &validationutils.DebugInfo{
299
+ FedConfig: configureDebugInfo,
300
+ },
301
+ }
302
+ return []validationutils.ValidationOutput{result}, nil
303
+ }
304
+
305
+ }
306
+
307
+ result := validationutils.ValidationOutput{
308
+ TestName: "REQUIRED_CONTEXT_ACTION",
309
+ Valid: valid,
310
+ Code: 0,
311
+ DebugInfo: &validationutils.DebugInfo{
312
+ FedConfig: configureDebugInfo,
313
+ },
314
+ }
315
+
316
+ if valid {
317
+ result.Code = 200
318
+ } else {
319
+ result.Code = 30000
320
+ }
321
+
322
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
323
+ results = append(results, result)
324
+ results = append(results, subResults...)
325
+
326
+ return results, nil
327
+ }
328
+ var REQUIRED_CONTEXT_CORE_VERSION = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
329
+
330
+ if input.Config.SkipTestsDict != nil {
331
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_CORE_VERSION"]; skip {
332
+ return []validationutils.ValidationOutput{}, nil
333
+ }
334
+ }
335
+
336
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
337
+
338
+ subResults := make([]validationutils.ValidationOutput, 0)
339
+ valid := true
340
+ configureDebugInfo := ""
341
+ for _, testObjMap := range scope {
342
+ validationutils.UnusedFunction(testObjMap)
343
+
344
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.core_version", true)
345
+ validationutils.UnusedFunction(attr)
346
+
347
+ validate := validationutils.ArePresent(attr)
348
+
349
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_CORE_VERSION","attr":"$.context.core_version","_RETURN_":"attr are present"}`
350
+
351
+ if !validate {
352
+ result := validationutils.ValidationOutput{
353
+ TestName: "REQUIRED_CONTEXT_CORE_VERSION",
354
+ Valid: false,
355
+ Code: 30000,
356
+ Description: `#### **REQUIRED_CONTEXT_CORE_VERSION**
357
+
358
+ - $.context.core_version must be present in the payload`,
359
+ DebugInfo: &validationutils.DebugInfo{
360
+ FedConfig: configureDebugInfo,
361
+ },
362
+ }
363
+ return []validationutils.ValidationOutput{result}, nil
364
+ }
365
+
366
+ }
367
+
368
+ result := validationutils.ValidationOutput{
369
+ TestName: "REQUIRED_CONTEXT_CORE_VERSION",
370
+ Valid: valid,
371
+ Code: 0,
372
+ DebugInfo: &validationutils.DebugInfo{
373
+ FedConfig: configureDebugInfo,
374
+ },
375
+ }
376
+
377
+ if valid {
378
+ result.Code = 200
379
+ } else {
380
+ result.Code = 30000
381
+ }
382
+
383
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
384
+ results = append(results, result)
385
+ results = append(results, subResults...)
386
+
387
+ return results, nil
388
+ }
389
+ var REQUIRED_CONTEXT_BAP_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
390
+
391
+ if input.Config.SkipTestsDict != nil {
392
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BAP_ID"]; skip {
393
+ return []validationutils.ValidationOutput{}, nil
394
+ }
395
+ }
396
+
397
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
398
+
399
+ subResults := make([]validationutils.ValidationOutput, 0)
400
+ valid := true
401
+ configureDebugInfo := ""
402
+ for _, testObjMap := range scope {
403
+ validationutils.UnusedFunction(testObjMap)
404
+
405
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.bap_id", true)
406
+ validationutils.UnusedFunction(attr)
407
+
408
+ validate := validationutils.ArePresent(attr)
409
+
410
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BAP_ID","attr":"$.context.bap_id","_RETURN_":"attr are present"}`
411
+
412
+ if !validate {
413
+ result := validationutils.ValidationOutput{
414
+ TestName: "REQUIRED_CONTEXT_BAP_ID",
415
+ Valid: false,
416
+ Code: 30000,
417
+ Description: `#### **REQUIRED_CONTEXT_BAP_ID**
418
+
419
+ - $.context.bap_id must be present in the payload`,
420
+ DebugInfo: &validationutils.DebugInfo{
421
+ FedConfig: configureDebugInfo,
422
+ },
423
+ }
424
+ return []validationutils.ValidationOutput{result}, nil
425
+ }
426
+
427
+ }
428
+
429
+ result := validationutils.ValidationOutput{
430
+ TestName: "REQUIRED_CONTEXT_BAP_ID",
431
+ Valid: valid,
432
+ Code: 0,
433
+ DebugInfo: &validationutils.DebugInfo{
434
+ FedConfig: configureDebugInfo,
435
+ },
436
+ }
437
+
438
+ if valid {
439
+ result.Code = 200
440
+ } else {
441
+ result.Code = 30000
442
+ }
443
+
444
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
445
+ results = append(results, result)
446
+ results = append(results, subResults...)
447
+
448
+ return results, nil
449
+ }
450
+ var REQUIRED_CONTEXT_BAP_URI = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
451
+
452
+ if input.Config.SkipTestsDict != nil {
453
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BAP_URI"]; skip {
454
+ return []validationutils.ValidationOutput{}, nil
455
+ }
456
+ }
457
+
458
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
459
+
460
+ subResults := make([]validationutils.ValidationOutput, 0)
461
+ valid := true
462
+ configureDebugInfo := ""
463
+ for _, testObjMap := range scope {
464
+ validationutils.UnusedFunction(testObjMap)
465
+
466
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.bap_uri", true)
467
+ validationutils.UnusedFunction(attr)
468
+
469
+ validate := validationutils.ArePresent(attr)
470
+
471
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BAP_URI","attr":"$.context.bap_uri","_RETURN_":"attr are present"}`
472
+
473
+ if !validate {
474
+ result := validationutils.ValidationOutput{
475
+ TestName: "REQUIRED_CONTEXT_BAP_URI",
476
+ Valid: false,
477
+ Code: 30000,
478
+ Description: `#### **REQUIRED_CONTEXT_BAP_URI**
479
+
480
+ - $.context.bap_uri must be present in the payload`,
481
+ DebugInfo: &validationutils.DebugInfo{
482
+ FedConfig: configureDebugInfo,
483
+ },
484
+ }
485
+ return []validationutils.ValidationOutput{result}, nil
486
+ }
487
+
488
+ }
489
+
490
+ result := validationutils.ValidationOutput{
491
+ TestName: "REQUIRED_CONTEXT_BAP_URI",
492
+ Valid: valid,
493
+ Code: 0,
494
+ DebugInfo: &validationutils.DebugInfo{
495
+ FedConfig: configureDebugInfo,
496
+ },
497
+ }
498
+
499
+ if valid {
500
+ result.Code = 200
501
+ } else {
502
+ result.Code = 30000
503
+ }
504
+
505
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
506
+ results = append(results, result)
507
+ results = append(results, subResults...)
508
+
509
+ return results, nil
510
+ }
511
+ var REQUIRED_CONTEXT_BPP_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
512
+
513
+ if input.Config.SkipTestsDict != nil {
514
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BPP_ID"]; skip {
515
+ return []validationutils.ValidationOutput{}, nil
516
+ }
517
+ }
518
+
519
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
520
+
521
+ subResults := make([]validationutils.ValidationOutput, 0)
522
+ valid := true
523
+ configureDebugInfo := ""
524
+ for _, testObjMap := range scope {
525
+ validationutils.UnusedFunction(testObjMap)
526
+
527
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.bpp_id", true)
528
+ validationutils.UnusedFunction(attr)
529
+
530
+ validate := validationutils.ArePresent(attr)
531
+
532
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BPP_ID","attr":"$.context.bpp_id","_RETURN_":"attr are present"}`
533
+
534
+ if !validate {
535
+ result := validationutils.ValidationOutput{
536
+ TestName: "REQUIRED_CONTEXT_BPP_ID",
537
+ Valid: false,
538
+ Code: 30000,
539
+ Description: `#### **REQUIRED_CONTEXT_BPP_ID**
540
+
541
+ - $.context.bpp_id must be present in the payload`,
542
+ DebugInfo: &validationutils.DebugInfo{
543
+ FedConfig: configureDebugInfo,
544
+ },
545
+ }
546
+ return []validationutils.ValidationOutput{result}, nil
547
+ }
548
+
549
+ }
550
+
551
+ result := validationutils.ValidationOutput{
552
+ TestName: "REQUIRED_CONTEXT_BPP_ID",
553
+ Valid: valid,
554
+ Code: 0,
555
+ DebugInfo: &validationutils.DebugInfo{
556
+ FedConfig: configureDebugInfo,
557
+ },
558
+ }
559
+
560
+ if valid {
561
+ result.Code = 200
562
+ } else {
563
+ result.Code = 30000
564
+ }
565
+
566
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
567
+ results = append(results, result)
568
+ results = append(results, subResults...)
569
+
570
+ return results, nil
571
+ }
572
+ var REQUIRED_CONTEXT_BPP_URI = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
573
+
574
+ if input.Config.SkipTestsDict != nil {
575
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_BPP_URI"]; skip {
576
+ return []validationutils.ValidationOutput{}, nil
577
+ }
578
+ }
579
+
580
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
581
+
582
+ subResults := make([]validationutils.ValidationOutput, 0)
583
+ valid := true
584
+ configureDebugInfo := ""
585
+ for _, testObjMap := range scope {
586
+ validationutils.UnusedFunction(testObjMap)
587
+
588
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.bpp_uri", true)
589
+ validationutils.UnusedFunction(attr)
590
+
591
+ validate := validationutils.ArePresent(attr)
592
+
593
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_BPP_URI","attr":"$.context.bpp_uri","_RETURN_":"attr are present"}`
594
+
595
+ if !validate {
596
+ result := validationutils.ValidationOutput{
597
+ TestName: "REQUIRED_CONTEXT_BPP_URI",
598
+ Valid: false,
599
+ Code: 30000,
600
+ Description: `#### **REQUIRED_CONTEXT_BPP_URI**
601
+
602
+ - $.context.bpp_uri must be present in the payload`,
603
+ DebugInfo: &validationutils.DebugInfo{
604
+ FedConfig: configureDebugInfo,
605
+ },
606
+ }
607
+ return []validationutils.ValidationOutput{result}, nil
608
+ }
609
+
610
+ }
611
+
612
+ result := validationutils.ValidationOutput{
613
+ TestName: "REQUIRED_CONTEXT_BPP_URI",
614
+ Valid: valid,
615
+ Code: 0,
616
+ DebugInfo: &validationutils.DebugInfo{
617
+ FedConfig: configureDebugInfo,
618
+ },
619
+ }
620
+
621
+ if valid {
622
+ result.Code = 200
623
+ } else {
624
+ result.Code = 30000
625
+ }
626
+
627
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
628
+ results = append(results, result)
629
+ results = append(results, subResults...)
630
+
631
+ return results, nil
632
+ }
633
+ var REQUIRED_CONTEXT_TRANSACTION_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
634
+
635
+ if input.Config.SkipTestsDict != nil {
636
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_TRANSACTION_ID"]; skip {
637
+ return []validationutils.ValidationOutput{}, nil
638
+ }
639
+ }
640
+
641
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
642
+
643
+ subResults := make([]validationutils.ValidationOutput, 0)
644
+ valid := true
645
+ configureDebugInfo := ""
646
+ for _, testObjMap := range scope {
647
+ validationutils.UnusedFunction(testObjMap)
648
+
649
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.transaction_id", true)
650
+ validationutils.UnusedFunction(attr)
651
+
652
+ validate := validationutils.ArePresent(attr)
653
+
654
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_TRANSACTION_ID","attr":"$.context.transaction_id","_RETURN_":"attr are present"}`
655
+
656
+ if !validate {
657
+ result := validationutils.ValidationOutput{
658
+ TestName: "REQUIRED_CONTEXT_TRANSACTION_ID",
659
+ Valid: false,
660
+ Code: 30000,
661
+ Description: `#### **REQUIRED_CONTEXT_TRANSACTION_ID**
662
+
663
+ - $.context.transaction_id must be present in the payload`,
664
+ DebugInfo: &validationutils.DebugInfo{
665
+ FedConfig: configureDebugInfo,
666
+ },
667
+ }
668
+ return []validationutils.ValidationOutput{result}, nil
669
+ }
670
+
671
+ }
672
+
673
+ result := validationutils.ValidationOutput{
674
+ TestName: "REQUIRED_CONTEXT_TRANSACTION_ID",
675
+ Valid: valid,
676
+ Code: 0,
677
+ DebugInfo: &validationutils.DebugInfo{
678
+ FedConfig: configureDebugInfo,
679
+ },
680
+ }
681
+
682
+ if valid {
683
+ result.Code = 200
684
+ } else {
685
+ result.Code = 30000
686
+ }
687
+
688
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
689
+ results = append(results, result)
690
+ results = append(results, subResults...)
691
+
692
+ return results, nil
693
+ }
694
+ var REQUIRED_CONTEXT_MESSAGE_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
695
+
696
+ if input.Config.SkipTestsDict != nil {
697
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_MESSAGE_ID"]; skip {
698
+ return []validationutils.ValidationOutput{}, nil
699
+ }
700
+ }
701
+
702
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
703
+
704
+ subResults := make([]validationutils.ValidationOutput, 0)
705
+ valid := true
706
+ configureDebugInfo := ""
707
+ for _, testObjMap := range scope {
708
+ validationutils.UnusedFunction(testObjMap)
709
+
710
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.message_id", true)
711
+ validationutils.UnusedFunction(attr)
712
+
713
+ validate := validationutils.ArePresent(attr)
714
+
715
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_MESSAGE_ID","attr":"$.context.message_id","_RETURN_":"attr are present"}`
716
+
717
+ if !validate {
718
+ result := validationutils.ValidationOutput{
719
+ TestName: "REQUIRED_CONTEXT_MESSAGE_ID",
720
+ Valid: false,
721
+ Code: 30000,
722
+ Description: `#### **REQUIRED_CONTEXT_MESSAGE_ID**
723
+
724
+ - $.context.message_id must be present in the payload`,
725
+ DebugInfo: &validationutils.DebugInfo{
726
+ FedConfig: configureDebugInfo,
727
+ },
728
+ }
729
+ return []validationutils.ValidationOutput{result}, nil
730
+ }
731
+
732
+ }
733
+
734
+ result := validationutils.ValidationOutput{
735
+ TestName: "REQUIRED_CONTEXT_MESSAGE_ID",
736
+ Valid: valid,
737
+ Code: 0,
738
+ DebugInfo: &validationutils.DebugInfo{
739
+ FedConfig: configureDebugInfo,
740
+ },
741
+ }
742
+
743
+ if valid {
744
+ result.Code = 200
745
+ } else {
746
+ result.Code = 30000
747
+ }
748
+
749
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
750
+ results = append(results, result)
751
+ results = append(results, subResults...)
752
+
753
+ return results, nil
754
+ }
755
+ var REQUIRED_CONTEXT_TIMESTAMP = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
756
+
757
+ if input.Config.SkipTestsDict != nil {
758
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_TIMESTAMP"]; skip {
759
+ return []validationutils.ValidationOutput{}, nil
760
+ }
761
+ }
762
+
763
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
764
+
765
+ subResults := make([]validationutils.ValidationOutput, 0)
766
+ valid := true
767
+ configureDebugInfo := ""
768
+ for _, testObjMap := range scope {
769
+ validationutils.UnusedFunction(testObjMap)
770
+
771
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.timestamp", true)
772
+ validationutils.UnusedFunction(attr)
773
+
774
+ validate := validationutils.ArePresent(attr)
775
+
776
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_TIMESTAMP","attr":"$.context.timestamp","_RETURN_":"attr are present"}`
777
+
778
+ if !validate {
779
+ result := validationutils.ValidationOutput{
780
+ TestName: "REQUIRED_CONTEXT_TIMESTAMP",
781
+ Valid: false,
782
+ Code: 30000,
783
+ Description: `#### **REQUIRED_CONTEXT_TIMESTAMP**
784
+
785
+ - $.context.timestamp must be present in the payload`,
786
+ DebugInfo: &validationutils.DebugInfo{
787
+ FedConfig: configureDebugInfo,
788
+ },
789
+ }
790
+ return []validationutils.ValidationOutput{result}, nil
791
+ }
792
+
793
+ }
794
+
795
+ result := validationutils.ValidationOutput{
796
+ TestName: "REQUIRED_CONTEXT_TIMESTAMP",
797
+ Valid: valid,
798
+ Code: 0,
799
+ DebugInfo: &validationutils.DebugInfo{
800
+ FedConfig: configureDebugInfo,
801
+ },
802
+ }
803
+
804
+ if valid {
805
+ result.Code = 200
806
+ } else {
807
+ result.Code = 30000
808
+ }
809
+
810
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
811
+ results = append(results, result)
812
+ results = append(results, subResults...)
813
+
814
+ return results, nil
815
+ }
816
+ var REQUIRED_CONTEXT_TTL = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
817
+
818
+ if input.Config.SkipTestsDict != nil {
819
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_CONTEXT_TTL"]; skip {
820
+ return []validationutils.ValidationOutput{}, nil
821
+ }
822
+ }
823
+
824
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
825
+
826
+ subResults := make([]validationutils.ValidationOutput, 0)
827
+ valid := true
828
+ configureDebugInfo := ""
829
+ for _, testObjMap := range scope {
830
+ validationutils.UnusedFunction(testObjMap)
831
+
832
+ attr := validationutils.GetJsonPath(testObjMap, "$.context.ttl", true)
833
+ validationutils.UnusedFunction(attr)
834
+
835
+ validate := validationutils.ArePresent(attr)
836
+
837
+ configureDebugInfo = `{"_NAME_":"REQUIRED_CONTEXT_TTL","attr":"$.context.ttl","_RETURN_":"attr are present"}`
838
+
839
+ if !validate {
840
+ result := validationutils.ValidationOutput{
841
+ TestName: "REQUIRED_CONTEXT_TTL",
842
+ Valid: false,
843
+ Code: 30000,
844
+ Description: `#### **REQUIRED_CONTEXT_TTL**
845
+
846
+ - $.context.ttl must be present in the payload`,
847
+ DebugInfo: &validationutils.DebugInfo{
848
+ FedConfig: configureDebugInfo,
849
+ },
850
+ }
851
+ return []validationutils.ValidationOutput{result}, nil
852
+ }
853
+
854
+ }
855
+
856
+ result := validationutils.ValidationOutput{
857
+ TestName: "REQUIRED_CONTEXT_TTL",
858
+ Valid: valid,
859
+ Code: 0,
860
+ DebugInfo: &validationutils.DebugInfo{
861
+ FedConfig: configureDebugInfo,
862
+ },
863
+ }
864
+
865
+ if valid {
866
+ result.Code = 200
867
+ } else {
868
+ result.Code = 30000
869
+ }
870
+
871
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
872
+ results = append(results, result)
873
+ results = append(results, subResults...)
874
+
875
+ return results, nil
876
+ }
877
+ var REQUIRED_MESSAGE_ORDER_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
878
+
879
+ if input.Config.SkipTestsDict != nil {
880
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_ORDER_ID"]; skip {
881
+ return []validationutils.ValidationOutput{}, nil
882
+ }
883
+ }
884
+
885
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
886
+
887
+ subResults := make([]validationutils.ValidationOutput, 0)
888
+ valid := true
889
+ configureDebugInfo := ""
890
+ for _, testObjMap := range scope {
891
+ validationutils.UnusedFunction(testObjMap)
892
+
893
+ attr := validationutils.GetJsonPath(testObjMap, "$.message.order_id", true)
894
+ validationutils.UnusedFunction(attr)
895
+
896
+ validate := validationutils.ArePresent(attr)
897
+
898
+ configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_ORDER_ID","attr":"$.message.order_id","_RETURN_":"attr are present"}`
899
+
900
+ if !validate {
901
+ result := validationutils.ValidationOutput{
902
+ TestName: "REQUIRED_MESSAGE_ORDER_ID",
903
+ Valid: false,
904
+ Code: 30000,
905
+ Description: `#### **REQUIRED_MESSAGE_ORDER_ID**
906
+
907
+ - $.message.order_id must be present in the payload`,
908
+ DebugInfo: &validationutils.DebugInfo{
909
+ FedConfig: configureDebugInfo,
910
+ },
911
+ }
912
+ return []validationutils.ValidationOutput{result}, nil
913
+ }
914
+
915
+ }
916
+
917
+ result := validationutils.ValidationOutput{
918
+ TestName: "REQUIRED_MESSAGE_ORDER_ID",
919
+ Valid: valid,
920
+ Code: 0,
921
+ DebugInfo: &validationutils.DebugInfo{
922
+ FedConfig: configureDebugInfo,
923
+ },
924
+ }
925
+
926
+ if valid {
927
+ result.Code = 200
928
+ } else {
929
+ result.Code = 30000
930
+ }
931
+
932
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
933
+ results = append(results, result)
934
+ results = append(results, subResults...)
935
+
936
+ return results, nil
937
+ }
938
+ var REQUIRED_MESSAGE_CANCELLATION_REASON_ID = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
939
+
940
+ if input.Config.SkipTestsDict != nil {
941
+ if _, skip := input.Config.SkipTestsDict["REQUIRED_MESSAGE_CANCELLATION_REASON_ID"]; skip {
942
+ return []validationutils.ValidationOutput{}, nil
943
+ }
944
+ }
945
+
946
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
947
+
948
+ subResults := make([]validationutils.ValidationOutput, 0)
949
+ valid := true
950
+ configureDebugInfo := ""
951
+ for _, testObjMap := range scope {
952
+ validationutils.UnusedFunction(testObjMap)
953
+
954
+ attr := validationutils.GetJsonPath(testObjMap, "$.message.cancellation_reason_id", true)
955
+ validationutils.UnusedFunction(attr)
956
+
957
+ validate := validationutils.ArePresent(attr)
958
+
959
+ configureDebugInfo = `{"_NAME_":"REQUIRED_MESSAGE_CANCELLATION_REASON_ID","attr":"$.message.cancellation_reason_id","_RETURN_":"attr are present"}`
960
+
961
+ if !validate {
962
+ result := validationutils.ValidationOutput{
963
+ TestName: "REQUIRED_MESSAGE_CANCELLATION_REASON_ID",
964
+ Valid: false,
965
+ Code: 30000,
966
+ Description: `#### **REQUIRED_MESSAGE_CANCELLATION_REASON_ID**
967
+
968
+ - $.message.cancellation_reason_id must be present in the payload`,
969
+ DebugInfo: &validationutils.DebugInfo{
970
+ FedConfig: configureDebugInfo,
971
+ },
972
+ }
973
+ return []validationutils.ValidationOutput{result}, nil
974
+ }
975
+
976
+ }
977
+
978
+ result := validationutils.ValidationOutput{
979
+ TestName: "REQUIRED_MESSAGE_CANCELLATION_REASON_ID",
980
+ Valid: valid,
981
+ Code: 0,
982
+ DebugInfo: &validationutils.DebugInfo{
983
+ FedConfig: configureDebugInfo,
984
+ },
985
+ }
986
+
987
+ if valid {
988
+ result.Code = 200
989
+ } else {
990
+ result.Code = 30000
991
+ }
992
+
993
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
994
+ results = append(results, result)
995
+ results = append(results, subResults...)
996
+
997
+ return results, nil
998
+ }
999
+ var VALID_ENUM_CONTEXT_DOMAIN = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1000
+
1001
+ if input.Config.SkipTestsDict != nil {
1002
+ if _, skip := input.Config.SkipTestsDict["VALID_ENUM_CONTEXT_DOMAIN"]; skip {
1003
+ return []validationutils.ValidationOutput{}, nil
1004
+ }
1005
+ }
1006
+
1007
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
1008
+
1009
+ subResults := make([]validationutils.ValidationOutput, 0)
1010
+ valid := true
1011
+ configureDebugInfo := ""
1012
+ for _, testObjMap := range scope {
1013
+ validationutils.UnusedFunction(testObjMap)
1014
+
1015
+ enumList := validationutils.StringSliceToInterface([]string{`ONDC:LOG10`, `ONDC:LOG11`, `nic2004:60232`})
1016
+ validationutils.UnusedFunction(enumList)
1017
+ enumPath := validationutils.GetJsonPath(testObjMap, "$.context.domain", true)
1018
+ validationutils.UnusedFunction(enumPath)
1019
+
1020
+ skipCheck := !(validationutils.ArePresent(enumPath))
1021
+ if skipCheck {
1022
+ continue
1023
+ }
1024
+
1025
+ validate := validationutils.AllIn(enumPath, enumList)
1026
+
1027
+ configureDebugInfo = `{"_NAME_":"VALID_ENUM_CONTEXT_DOMAIN","enumList":["ONDC:LOG10","ONDC:LOG11","nic2004:60232"],"enumPath":"$.context.domain","_CONTINUE_":"!(enumPath are present)","_RETURN_":"enumPath all in enumList"}`
1028
+
1029
+ if !validate {
1030
+ result := validationutils.ValidationOutput{
1031
+ TestName: "VALID_ENUM_CONTEXT_DOMAIN",
1032
+ Valid: false,
1033
+ Code: 30000,
1034
+ Description: `#### **VALID_ENUM_CONTEXT_DOMAIN**
1035
+
1036
+ - All elements of $.context.domain must be in ["ONDC:LOG10", "ONDC:LOG11", "nic2004:60232"]
1037
+
1038
+ > **Skip if:**
1039
+ >
1040
+ > - $.context.domain is not in the payload`,
1041
+ DebugInfo: &validationutils.DebugInfo{
1042
+ FedConfig: configureDebugInfo,
1043
+ },
1044
+ }
1045
+ return []validationutils.ValidationOutput{result}, nil
1046
+ }
1047
+
1048
+ }
1049
+
1050
+ result := validationutils.ValidationOutput{
1051
+ TestName: "VALID_ENUM_CONTEXT_DOMAIN",
1052
+ Valid: valid,
1053
+ Code: 0,
1054
+ DebugInfo: &validationutils.DebugInfo{
1055
+ FedConfig: configureDebugInfo,
1056
+ },
1057
+ }
1058
+
1059
+ if valid {
1060
+ result.Code = 200
1061
+ } else {
1062
+ result.Code = 30000
1063
+ }
1064
+
1065
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1066
+ results = append(results, result)
1067
+ results = append(results, subResults...)
1068
+
1069
+ return results, nil
1070
+ }
1071
+ var Validate_cancellation_codes_log10 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1072
+
1073
+ if input.Config.SkipTestsDict != nil {
1074
+ if _, skip := input.Config.SkipTestsDict["Validate_cancellation_codes_log10"]; skip {
1075
+ return []validationutils.ValidationOutput{}, nil
1076
+ }
1077
+ }
1078
+
1079
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
1080
+
1081
+ subResults := make([]validationutils.ValidationOutput, 0)
1082
+ valid := true
1083
+ configureDebugInfo := ""
1084
+ for _, testObjMap := range scope {
1085
+ validationutils.UnusedFunction(testObjMap)
1086
+
1087
+ domain := validationutils.GetJsonPath(testObjMap, "$.context.domain", true)
1088
+ validationutils.UnusedFunction(domain)
1089
+ p2pCancellationCodes := validationutils.StringSliceToInterface([]string{`004`, `005`, `007`, `150`, `151`, `152`, `153`, `154`, `155`, `156`, `175`, `996`, `994`})
1090
+ validationutils.UnusedFunction(p2pCancellationCodes)
1091
+ domainList := validationutils.StringSliceToInterface([]string{`ONDC:LOG10`})
1092
+ validationutils.UnusedFunction(domainList)
1093
+ cancellationId := validationutils.GetJsonPath(testObjMap, "$.message.cancellation_reason_id", true)
1094
+ validationutils.UnusedFunction(cancellationId)
1095
+
1096
+ skipCheck := !(validationutils.AllIn(domain, domainList))
1097
+ if skipCheck {
1098
+ continue
1099
+ }
1100
+
1101
+ validate := validationutils.AllIn(cancellationId, p2pCancellationCodes)
1102
+
1103
+ configureDebugInfo = `{"_NAME_":"validate_cancellation_codes_log10","_DESCRIPTION_":"Appropriate cancellation code should be used by LBNP","domain":"$.context.domain","p2pCancellationCodes":["004","005","007","150","151","152","153","154","155","156","175","996","994"],"domainList":["ONDC:LOG10"],"cancellationId":"$.message.cancellation_reason_id","_CONTINUE_":"!(domain all in domainList)","_RETURN_":"cancellationId all in p2pCancellationCodes"}`
1104
+
1105
+ if !validate {
1106
+ result := validationutils.ValidationOutput{
1107
+ TestName: "validate_cancellation_codes_log10",
1108
+ Valid: false,
1109
+ Code: 30000,
1110
+ Description: `#### **validate_cancellation_codes_log10**
1111
+
1112
+ Appropriate cancellation code should be used by LBNP
1113
+
1114
+ > **Skip if:**
1115
+ >
1116
+ > - not all elements of $.context.domain are in ["ONDC:LOG10"]`,
1117
+ DebugInfo: &validationutils.DebugInfo{
1118
+ FedConfig: configureDebugInfo,
1119
+ },
1120
+ }
1121
+ return []validationutils.ValidationOutput{result}, nil
1122
+ }
1123
+
1124
+ }
1125
+
1126
+ result := validationutils.ValidationOutput{
1127
+ TestName: "Validate_cancellation_codes_log10",
1128
+ Valid: valid,
1129
+ Code: 0,
1130
+ DebugInfo: &validationutils.DebugInfo{
1131
+ FedConfig: configureDebugInfo,
1132
+ },
1133
+ }
1134
+
1135
+ if valid {
1136
+ result.Code = 200
1137
+ } else {
1138
+ result.Code = 30000
1139
+ }
1140
+
1141
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1142
+ results = append(results, result)
1143
+ results = append(results, subResults...)
1144
+
1145
+ return results, nil
1146
+ }
1147
+ var Validate_cancellation_codes_log11 = func(input validationutils.ValidationInput) ([]validationutils.ValidationOutput, error) {
1148
+
1149
+ if input.Config.SkipTestsDict != nil {
1150
+ if _, skip := input.Config.SkipTestsDict["Validate_cancellation_codes_log11"]; skip {
1151
+ return []validationutils.ValidationOutput{}, nil
1152
+ }
1153
+ }
1154
+
1155
+ scope := validationutils.GetJsonPath(input.Payload, "$", true)
1156
+
1157
+ subResults := make([]validationutils.ValidationOutput, 0)
1158
+ valid := true
1159
+ configureDebugInfo := ""
1160
+ for _, testObjMap := range scope {
1161
+ validationutils.UnusedFunction(testObjMap)
1162
+
1163
+ domain := validationutils.GetJsonPath(testObjMap, "$.context.domain", true)
1164
+ validationutils.UnusedFunction(domain)
1165
+ p2h2pCancellationCodes := validationutils.StringSliceToInterface([]string{`004`, `005`, `007`, `250`, `251`, `252`, `275`, `996`, `994`})
1166
+ validationutils.UnusedFunction(p2h2pCancellationCodes)
1167
+ domainList := validationutils.StringSliceToInterface([]string{`ONDC:LOG11`})
1168
+ validationutils.UnusedFunction(domainList)
1169
+ cancellationId := validationutils.GetJsonPath(testObjMap, "$.message.cancellation_reason_id", true)
1170
+ validationutils.UnusedFunction(cancellationId)
1171
+
1172
+ skipCheck := !(validationutils.AllIn(domain, domainList))
1173
+ if skipCheck {
1174
+ continue
1175
+ }
1176
+
1177
+ validate := validationutils.AllIn(cancellationId, p2h2pCancellationCodes)
1178
+
1179
+ configureDebugInfo = `{"_NAME_":"validate_cancellation_codes_log11","_DESCRIPTION_":"Appropriate cancellation code should be used by LBNP","domain":"$.context.domain","p2h2pCancellationCodes":["004","005","007","250","251","252","275","996","994"],"domainList":["ONDC:LOG11"],"cancellationId":"$.message.cancellation_reason_id","_CONTINUE_":"!(domain all in domainList)","_RETURN_":"cancellationId all in p2h2pCancellationCodes"}`
1180
+
1181
+ if !validate {
1182
+ result := validationutils.ValidationOutput{
1183
+ TestName: "validate_cancellation_codes_log11",
1184
+ Valid: false,
1185
+ Code: 30000,
1186
+ Description: `#### **validate_cancellation_codes_log11**
1187
+
1188
+ Appropriate cancellation code should be used by LBNP
1189
+
1190
+ > **Skip if:**
1191
+ >
1192
+ > - not all elements of $.context.domain are in ["ONDC:LOG11"]`,
1193
+ DebugInfo: &validationutils.DebugInfo{
1194
+ FedConfig: configureDebugInfo,
1195
+ },
1196
+ }
1197
+ return []validationutils.ValidationOutput{result}, nil
1198
+ }
1199
+
1200
+ }
1201
+
1202
+ result := validationutils.ValidationOutput{
1203
+ TestName: "Validate_cancellation_codes_log11",
1204
+ Valid: valid,
1205
+ Code: 0,
1206
+ DebugInfo: &validationutils.DebugInfo{
1207
+ FedConfig: configureDebugInfo,
1208
+ },
1209
+ }
1210
+
1211
+ if valid {
1212
+ result.Code = 200
1213
+ } else {
1214
+ result.Code = 30000
1215
+ }
1216
+
1217
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1218
+ results = append(results, result)
1219
+ results = append(results, subResults...)
1220
+
1221
+ return results, nil
1222
+ }
1223
+
1224
+ var testFunctions = validationutils.TestFunctionArray{
1225
+ REQUIRED_CONTEXT_DOMAIN,
1226
+ REQUIRED_CONTEXT_COUNTRY,
1227
+ REQUIRED_CONTEXT_CITY,
1228
+ REQUIRED_CONTEXT_ACTION,
1229
+ REQUIRED_CONTEXT_CORE_VERSION,
1230
+ REQUIRED_CONTEXT_BAP_ID,
1231
+ REQUIRED_CONTEXT_BAP_URI,
1232
+ REQUIRED_CONTEXT_BPP_ID,
1233
+ REQUIRED_CONTEXT_BPP_URI,
1234
+ REQUIRED_CONTEXT_TRANSACTION_ID,
1235
+ REQUIRED_CONTEXT_MESSAGE_ID,
1236
+ REQUIRED_CONTEXT_TIMESTAMP,
1237
+ REQUIRED_CONTEXT_TTL,
1238
+ REQUIRED_MESSAGE_ORDER_ID,
1239
+ REQUIRED_MESSAGE_CANCELLATION_REASON_ID,
1240
+ VALID_ENUM_CONTEXT_DOMAIN,
1241
+ Validate_cancellation_codes_log10,
1242
+ Validate_cancellation_codes_log11,
1243
+ }
1244
+
1245
+ allResults := make([]validationutils.ValidationOutput, 0)
1246
+
1247
+ for _, testFunc := range testFunctions {
1248
+ results, err := testFunc(input)
1249
+ if err != nil {
1250
+ return nil, err
1251
+ }
1252
+ allResults = append(allResults, results...)
1253
+ }
1254
+
1255
+ subResults = allResults
1256
+ // if all subResults are valid, then valid is true
1257
+ valid = true
1258
+ for _, res := range subResults {
1259
+ if !res.Valid {
1260
+ valid = false
1261
+ break
1262
+ }
1263
+ }
1264
+
1265
+ configureDebugInfo = `NESTED_TEST_OBJECT`
1266
+
1267
+ }
1268
+
1269
+ result := validationutils.ValidationOutput{
1270
+ TestName: "CancelValidations",
1271
+ Valid: valid,
1272
+ Code: 0,
1273
+ DebugInfo: &validationutils.DebugInfo{
1274
+ FedConfig: configureDebugInfo,
1275
+ },
1276
+ }
1277
+
1278
+ if valid {
1279
+ result.Code = 200
1280
+ } else {
1281
+ result.Code = 30000
1282
+ }
1283
+
1284
+ results := make([]validationutils.ValidationOutput, 0, len(subResults)+1)
1285
+ results = append(results, result)
1286
+ results = append(results, subResults...)
1287
+
1288
+ return results, nil
1289
+ }