--- /dev/null
+/* Copyright (c) 2019 AT&T Intellectual Property. #\r
+# #\r
+# Licensed under the Apache License, Version 2.0 (the "License"); #\r
+# you may not use this file except in compliance with the License. #\r
+# You may obtain a copy of the License at #\r
+# #\r
+# http://www.apache.org/licenses/LICENSE-2.0 #\r
+# #\r
+# Unless required by applicable law or agreed to in writing, software #\r
+# distributed under the License is distributed on an "AS IS" BASIS, #\r
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #\r
+# See the License for the specific language governing permissions and #\r
+# limitations under the License. #\r
+##############################################################################*/\r
+\r
+\r
+const YAML = require('yamljs');\r
+\r
+module.exports = function () {\r
+ function isEmpty(obj) {\r
+ for(var key in obj) {\r
+ if(obj.hasOwnProperty(key))\r
+ return false;\r
+ }\r
+ return true;\r
+ }\r
+\r
+ return async context => {\r
+ \r
+ if (context.result.length) {\r
+ for (let i = 0; i < context.result.length; i++) {\r
+ if (context.result[i].testData) {\r
+ if(isEmpty(context.result[i].testData)){\r
+ context.result[i].testDataJSON = {};\r
+ context.result[i].testData = '';\r
+ }else if(typeof context.result[i].testDate != typeof ''){\r
+ context.result[i].testDataJSON = context.result[i].testData;\r
+ context.result[i].testData = YAML.stringify(context.result[i].testData);\r
+ } \r
+ }\r
+ if (context.result[i].testConfig) {\r
+ if(isEmpty(context.result[i].testConfig)){ \r
+ context.result[i].testConfig = '';\r
+ }else{\r
+ context.result[i].testConfig = YAML.stringify(context.result[i].testConfig);\r
+ } \r
+ }\r
+ if(context.result[i].vthInputTemplate){\r
+ if(isEmpty(context.result[i].vthInputTemplate)){\r
+ context.result[i].vthInputTemplate = '';\r
+ }else{\r
+ if(typeof '' !== typeof context.result[i].vthInputTemplate){\r
+ context.result[i].vthInputTemplateJSON = context.result[i].vthInputTemplate;\r
+ context.result[i].vthInputTemplate = YAML.stringify(context.result[i].vthInputTemplate);\r
+ }\r
+ }\r
+ }\r
+ if (context.result[i].vthInput) {\r
+ context.result[i].vthInputYaml = '';\r
+ if(isEmpty(context.result[i].vthInput)){\r
+ context.result[i].vthInput = {};\r
+ }else{\r
+ context.result[i].vthInputYaml = {};\r
+ for(key in context.result[i].vthInput){\r
+ \r
+ context.result[i].vthInputYaml[key] = YAML.stringify(context.result[i].vthInput[key]);\r
+ }\r
+ }\r
+ \r
+ }\r
+ if (context.result[i].bpmnInstances) {\r
+ \r
+ //console.log("HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH");\r
+ // if(context.re)\r
+ // if(isEmpty(context.result[i].bpmnInstances[0].testHeads[0].testHeadId.vthInputTemplate)){\r
+ // context.result[i].bpmnInstances[0].testHeads[0].testHeadId.vthInputTemplate = '';\r
+ // }else{\r
+ // context.result[i].bpmnInstances[0].testHeads[0].testHeadId.vthInputTemplateJSON = context.result[i].bpmnInstances[0].testHeads[0].testHeadId.vthInputTemplate;\r
+ // context.result[i].bpmnInstances[0].testHeads[0].testHeadId.vthInputTemplate = YAML.stringify(context.result[i].bpmnInstances[0].testHeads[0].testHeadId.vthInputTemplate);\r
+ // }\r
+ \r
+ \r
+ for(let k = 0; k < context.result[i].bpmnInstances.length; k++){\r
+ \r
+ if( context.result[i].bpmnInstances[k].testHeads){\r
+ for(let h = 0; h < context.result[i].bpmnInstances[k].testHeads.length; h++){\r
+ //let head = key.testHeads[h];\r
+ //console.log("___________________________________________________________");\r
+ //console.log(context.result[i].bpmnInstances[k].testHeads[h].testHeadId);\r
+ if(typeof '' != typeof context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate){\r
+ if(isEmpty(context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate)){\r
+ context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplateJSON = {};\r
+ context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate = '';\r
+ }else if(context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate){\r
+ context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplateJSON = context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate;\r
+ context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate = YAML.stringify(context.result[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ if(isEmpty(context.result[i].bpmnInstances[k].testDataTemplate)){ \r
+ context.result[i].bpmnInstances[k].testDataTemplate = '';\r
+ context.result[i].bpmnInstances[k].testDataTemplateJSON = {};\r
+ }else if(typeof context.result[i].bpmnInstances[k].testDataTemplate !== typeof ''){\r
+ context.result[i].bpmnInstances[k].testDataTemplateJSON = context.result[i].bpmnInstances[k].testDataTemplate;\r
+ context.result[i].bpmnInstances[k].testDataTemplate = YAML.stringify(context.result[i].bpmnInstances[k].testDataTemplate);\r
+ } \r
+ //context.result[i].bpmnInstances[k] = key;\r
+ }\r
+ \r
+ }\r
+ }\r
+ } else if (context.result.total > 1) {\r
+ for (let i = 0; i < context.result.data.length; i++) {\r
+ if (context.result.data[i].testData) {\r
+ if(isEmpty(context.result.data[i].testData)){\r
+ context.result.data[i].testData = '';\r
+ context.result.data[i].testDataJSON = {};\r
+ }else if(typeof context.result.data[i].testDate != typeof ''){\r
+ context.result.data[i].testDataJSON = context.result.data[i].testData;\r
+ context.result.data[i].testData = YAML.stringify(context.result.data[i].testData);\r
+ }\r
+ \r
+ }\r
+ if (context.result.data[i].vthInput) {\r
+ context.result.data[i].vthInputYaml = '';\r
+ if(isEmpty(context.result.data[i].vthInput)){\r
+ context.result.data[i].vthInput = {};\r
+ }else{\r
+ context.result.data[i].vthInputYaml = {};\r
+ for(key in context.result.data[i].vthInput){\r
+ \r
+ context.result.data[i].vthInputYaml[key] = YAML.stringify(context.result.data[i].vthInput[key]);\r
+ }\r
+ }\r
+ \r
+ }\r
+ if (context.result.data[i].testConfig) {\r
+ if(isEmpty(context.result.data[i].testConfig)){\r
+ context.result.data[i].testConfig = '';\r
+ }else{\r
+ context.result.data[i].testConfig = YAML.stringify(context.result.data[i].testConfig);\r
+ }\r
+ }\r
+ if (context.result.data[i].testDataTemplate) {\r
+ if(isEmpty(context.result.data[i].testDataTemplate)){\r
+ context.result.data[i].testDataTemplate = '';\r
+ context.result.data[i].testDataTemplateJSON = {};\r
+ }else{\r
+ context.result.data[i].testDataTemplateJSON = context.result.data[i].testDataTemplate;\r
+ context.result.data[i].testDataTemplate = YAML.stringify(context.result.data[i].testDataTemplate);\r
+ }\r
+ }\r
+ if(context.result.data[i].bpmnInstances){\r
+ for(let k in context.result.data[i].bpmnInstances){\r
+ let key = context.result.data[i].bpmnInstances[k];\r
+ if(key.testHeads){\r
+ for(let h in key.testHeads){\r
+ let head = key.testHeads[h];\r
+ \r
+ if(typeof '' != typeof context.result.data[i].bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate){ \r
+ if(isEmpty(head.testHeadId.vthInputTemplate)){\r
+ head.testHeadId.vthInputTemplate = '';\r
+ head.testHeadId.vthInputTemplateJSON = {};\r
+ }else if(head.testHeadId.vthInputTemplate){\r
+ head.testHeadId.vthInputTemplateJSON = head.testHeadId.vthInputTemplate;\r
+ head.testHeadId.vthInputTemplate = YAML.stringify(head.testHeadId.vthInputTemplate);\r
+ }\r
+ }\r
+ key.testHeads[h] = head;\r
+ }\r
+ }\r
+ if(isEmpty(key.testDataTemplate)){ \r
+ key.testDataTemplate = '';\r
+ key.testDataTemplateJSON = {};\r
+ }else if(typeof key.testDataTemplate !== typeof ''){\r
+ key.testDataTemplateJSON = key.testDataTemplate;\r
+ key.testDataTemplate = YAML.stringify(key.testDataTemplate);\r
+ }\r
+ context.result.data[i].bpmnInstances[k] = key; \r
+ }\r
+ }\r
+ }\r
+ } else if (context.result.data) {\r
+ if (context.result.data.testData) {\r
+ if(isEmpty(context.result.data.testData)){\r
+ context.result.data.testData = '';\r
+ context.result.data.testDataJSON = {};\r
+ }else if(typeof context.result.data.testDate != typeof ''){\r
+ context.result.data.testDataJSON = context.result.data.testData;\r
+ context.result.data.testData = YAML.stringify(context.result.data.testData);\r
+ } \r
+ }\r
+ if (context.result.data.testConfig) {\r
+ if(isEmpty(context.result.data.testConfig)){\r
+ context.result.data.testConfig = '';\r
+ }else{\r
+ context.result.data.testConfig = YAML.stringify(context.result.data.testConfig);\r
+ } \r
+ }\r
+ if (context.result.data.vthInput) {\r
+ context.result.data.vthInputYaml = '';\r
+ if(isEmpty(context.result.data.vthInput)){\r
+ context.result.data.vthInput = {};\r
+ }else{\r
+ context.result.data.vthInputYaml = {};\r
+ for(key in context.result.data.vthInput){\r
+ context.result.data.vthInputYaml[key] = YAML.stringify(context.result.data.vthInput[key]);\r
+ }\r
+ }\r
+ \r
+ }\r
+ if (context.result.data.testDataTemplate) {\r
+ if(isEmpty(context.result.data.testDataTemplate)){\r
+ context.result.data.testDataTemplate = '';\r
+ context.result.data.testDataTemplateJSON = {};\r
+ }else{\r
+ context.result.data.testDataTemplateJSON = context.result.data.testDataTemplate;\r
+ context.result.data.testDataTemplate = YAML.stringify(context.result.data.testDataTemplate);\r
+ } \r
+ }\r
+ if (context.result.data.bpmnInstances){\r
+ for(let k in context.result.data.bpmnInstances){\r
+ let key = context.result.data.bpmnInstances[k];\r
+ if(key.testHeads){\r
+ for(let h in key.testHeads){\r
+ let head = key.testHeads[h];\r
+ //console.log(head.testHeadId);\r
+ if(typeof '' != typeof context.result.data.bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate){\r
+ if(isEmpty(head.testHeadId.vthInputTemplate)){\r
+ head.testHeadId.vthInputTemplate = '';\r
+ head.testHeadId.vthInputTemplateJSON = {};\r
+ }else if(head.testHeadId.vthInputTemplate){\r
+ head.testHeadId.vthInputTemplateJSON = head.testHeadId.vthInputTemplate;\r
+ head.testHeadId.vthInputTemplate = YAML.stringify(head.testHeadId.vthInputTemplate);\r
+ }\r
+ }\r
+ key.testHeads[h] = head;\r
+ }\r
+ }\r
+ if(isEmpty(key.testDataTemplate)){ \r
+ key.testDataTemplate = '';\r
+ key.testDataTemplateJSON = {};\r
+ }else if(typeof key.testDataTemplate !== typeof ''){\r
+ key.testDataTemplateJSON = key.testDataTemplate;\r
+ key.testDataTemplate = YAML.stringify(key.testDataTemplate);\r
+ }\r
+ context.result.data.bpmnInstances[k] = key; \r
+ }\r
+ }\r
+ } else {\r
+ if (context.result.testData) {\r
+ \r
+ if(isEmpty(context.result.testData)){\r
+ context.result.testData = '';\r
+ context.result.testDataJSON = {};\r
+ }else if(typeof context.result.testData != typeof ''){\r
+ context.result.testDataJSON = context.result.testData;\r
+ context.result.testData = YAML.stringify(context.result.testData);\r
+ }else if(typeof context.result.testData == typeof ''){\r
+ context.result.testDataJSON = YAML.parse(context.result.testData);\r
+ }\r
+ \r
+ }\r
+ if (context.result.testConfig) {\r
+ if(isEmpty(context.result.testConfig)){\r
+ context.result.testConfig = '';\r
+ }else{\r
+ context.result.testConfig = YAML.stringify(context.result.testConfig);\r
+ }\r
+ }\r
+ if (context.result.vthInput) {\r
+ context.result.vthInputYaml = '';\r
+ if(isEmpty(context.result.vthInput)){\r
+ context.result.vthInput = {};\r
+ }else{\r
+ context.result.vthInputYaml = {};\r
+ for(key in context.result.vthInput){\r
+ context.result.vthInputYaml[key] = YAML.stringify(context.result.vthInput[key]);\r
+ }\r
+ }\r
+ \r
+ }\r
+ if (context.result.testDataTemplate) {\r
+ if(isEmpty(context.result.testDataTemplate)){\r
+ context.result.testDataTemplate = '';\r
+ context.result.testDataTemplateJSON = {};\r
+ }else{\r
+ context.result.testDataTemplateJSON = context.result.testDataTemplate;\r
+ context.result.testDataTemplate = YAML.stringify(context.result.testDataTemplate);\r
+ }\r
+ }\r
+ if(context.result.vthInputTemplate){\r
+ if(isEmpty(context.result.vthInputTemplate)){\r
+ context.result.vthInputTemplate = '';\r
+ context.result.vthInputTemplateJSON = {};\r
+ }else{\r
+ context.result.vthInputTemplateJSON = context.result.vthInputTemplate;\r
+ context.result.vthInputTemplate = YAML.stringify(context.result.vthInputTemplate);\r
+ }\r
+ }\r
+ if(context.result.bpmnInstances){\r
+ for(let k in context.result.bpmnInstances){\r
+ let key = context.result.bpmnInstances[k];\r
+ if(key.testHeads){\r
+ for(let h in key.testHeads){\r
+ let head = key.testHeads[h];\r
+ //console.log(head.testHeadId);\r
+ if(typeof '' != typeof context.result.bpmnInstances[k].testHeads[h].testHeadId.vthInputTemplate){\r
+ if(isEmpty(head.testHeadId.vthInputTemplate)){\r
+ head.testHeadId.vthInputTemplate = '';\r
+ head.testHeadId.vthInputTemplateJSON = {};\r
+ }else if(head.testHeadId.vthInputTemplate){\r
+ head.testHeadId.vthInputTemplateJSON = head.testHeadId.vthInputTemplate;\r
+ head.testHeadId.vthInputTemplate = YAML.stringify(head.testHeadId.vthInputTemplate);\r
+ }\r
+ }\r
+ key.testHeads[h] = head;\r
+ }\r
+ }\r
+ if(isEmpty(key.testDataTemplate)){ \r
+ key.testDataTemplate = '';\r
+ key.testDataTemplateJSON = {};\r
+ }else if(typeof key.testDataTemplate !== typeof ''){\r
+ key.testDataTemplateJSON = key.testDataTemplate;\r
+ key.testDataTemplate = YAML.stringify(key.testDataTemplate);\r
+ } \r
+ context.result.bpmnInstances[k] = key;\r
+ }\r
+ }\r
+ \r
+ }\r
+ return context;\r
+ };\r
+};\r