def compute_diff(test_case, test_case_result, output_file, base_file_path):
    """Associate the diff (if exists) with the TestCaseResult.

    Return whether or not the outputs match.

    """
    with open(File.file_path(base_file_path, test_case.expected.sha1)) as fp:
        expected_output = fp.read()
    actual_output = ''
    if os.path.isfile(output_file):
        with open('tc_{0}'.format(test_case.id)) as fp:
            actual_output = fp.read()
    unit = Diff(expected_output, actual_output)
    if not unit.outputs_match():
        test_case_result.diff = File.fetch_or_create(pickle.dumps(unit),
                                                     base_file_path)
        return False
    return True
Associate the diff (if exists) with the TestCaseResult.

    Return whether or not the outputs match.