results_max = performance.max(axis=0)
exportCaseSummary(testBuildDirectory, caseName, results, results_max,
                  tolerance)

# failing case
if not pass_fail.passRegressionTest(normalizedNorm, tolerance):
    if plotError:
        from errorPlotting import finalizePlotDirectory, plotOpenfastError
        ixFailChannels = [
            i for i in range(len(testInfo["attribute_names"]))
            if normalizedNorm[i] > tolerance
        ]
        failChannels = [
            channel for i, channel in enumerate(testInfo["attribute_names"])
            if i in ixFailChannels
        ]
        failResults = [
            res for i, res in enumerate(results) if i in ixFailChannels
        ]
        for channel in failChannels:
            try:
                plotOpenfastError(localOutFile, baselineOutFile, channel)
            except:
                error = sys.exc_info()[1]
                print("Error generating plots: {}".format(error.msg))
        finalizePlotDirectory(localOutFile, failChannels, caseName)
    sys.exit(1)

# passing case
sys.exit(0)
rtl.validateFileOrExit(baselineOutFile)

testData, testInfo, testPack = pass_fail.readFASTOut(localOutFile)
baselineData, baselineInfo, _ = pass_fail.readFASTOut(baselineOutFile)
performance = pass_fail.calculateNorms(testData, baselineData)
normalizedNorm = performance[:, 1]

# export all case summaries
results = list(zip(testInfo["attribute_names"], [*performance]))
results_max = performance.max(axis=0)
exportCaseSummary(testBuildDirectory, caseName, results, results_max,
                  tolerance)

# failing case
if not pass_fail.passRegressionTest(normalizedNorm, tolerance):
    if plotError:
        from errorPlotting import finalizePlotDirectory, plotOpenfastError
        for channel in testInfo["attribute_names"]:
            try:
                plotOpenfastError(localOutFile, baselineOutFile, channel)
            except:
                error = sys.exc_info()[1]
                print("Error generating plots: {}".format(error))
        finalizePlotDirectory(localOutFile, testInfo["attribute_names"],
                              caseName)

    sys.exit(1)

# passing case
sys.exit(0)