def ParseJSONFile()

in framework/resources/Functional/odbcTest.py [0:0]


def ParseJSONFile(json_file):
    with open(json_file, 'r') as json_data:
       parse_json = json.load(json_data)

    # extract query file extension from JSON file
    queryFile = parse_json["matrices"][0]["query-file"]
    queryFileRegex = re.compile("\.\*(.*)")
    queryFileRegexSearch = queryFileRegex.search(queryFile)
    queryFileExt = ""
    if queryFileRegexSearch:
       queryFileExt = queryFileRegexSearch.group(1)

    # extract expected file extension from JSON file
    expectedFile = parse_json["matrices"][0]["expected-file"]
    expectedFileRegex = re.compile("\.\*(.*)")
    expectedFileRegexSearch = expectedFileRegex.search(expectedFile)
    expectedFileExt = ""
    if expectedFileRegexSearch:
       expectedFileExt = expectedFileRegexSearch.group(1)

    # extract schema from JSON file.  convert from unicode
    # to utf-8
    schema_string = parse_json["matrices"][0]["schema"]
    schema = schema_string.encode('utf-8')

    try:
       outputFile = parse_json["matrices"][0]["output-file"]
       outputFileRegex = re.compile("\.\*(.*)")
       outputFileExt = outputFileRegex.search(outputFile).group(1)
    except KeyError:
       outputFileExt = ".o"

    return (queryFile, queryFileExt, expectedFile, expectedFileExt, schema,
            outputFileExt)