from .object import buildObject, buildObject2 from .path import buildPath from .headers import buildHeaders #import os def buildRequest(definition, outputs, resolved): path = buildPath(definition.path, outputs, resolved) request = { "method": definition.method, "path": path, } if hasattr(definition, "keys"): request["object"] = buildObject(definition.keys, outputs, resolved) if hasattr(definition, "headers"): request["headers"] = buildHeaders(definition, request, outputs, resolved) if hasattr(definition, "requestdata"): ###To potentially test moving requestdata to an outputs dict instead of a string if isinstance(definition.requestdata, str): request["data"] = outputs[definition.requestdata] else: request["data"] = buildObject2( definition.requestdata, outputs, resolved ) # resolveddata = definition.requestdata # # if isinstance(resolveddata, dict): # request["data"] = { # "mediaType": "30", # "emailId": {resolved["path"]} # } # else: # request["data"] = outputs[resolveddata] if hasattr(definition, "requestfile"): bytes = outputs[definition.requestfile] request["files"] = { "image": ( "image.jpg", bytes, "image/jpeg", ), } return request