def METHOD_NAME(testsuite1, testsuite2):
    # dict from testcase's name to each testcase itself for fast access
    testscases1_map = dict()
    for testcase in testsuite1["testscases"]:
        testkey = _concat_classname_and_name(testcase)
        testscases1_map[testkey] = testcase
    for testcase in testsuite2["testscases"]:
        testkey2 = _concat_classname_and_name(testcase)
        # this is a new test then ignore it
        if testkey2 not in testscases1_map:
            continue
        prev_testcase = testscases1_map[testkey2]
        # if switch from success to failure then its a regression
        if testcase["action"] == "failure":
            if prev_testcase["action"] == "passed" or prev_testcase["regression"]:
                testcase["regression"] = True
                testsuite2["regressions"] += 1
        # if switch from either failure/regression to success its successfix
        elif testcase["action"] == "passed":
            if prev_testcase["action"] == "failure" or prev_testcase["regression"]:
                testcase["successfix"] = True
                testsuite2["successfixes"] += 1
    return testsuite2