def METHOD_NAME(self, file_name):
    checks = TESTS[file_name]
    test_file = checks['test_file']
    # Apply without making any changes to the file
    (errors, nodes_changed) = lint_i18n_strings.lint_file(test_file,
        apply_fix=False, verbose=False)
    self.assertEqual(nodes_changed, checks['nodes_changed'],
        '# of nodes changed differ in %s' % test_file)
    self.assertEqual(errors, checks['errors'],
        'Errors reported differ in %s' % test_file)
    self.assertEqual(_slurp(test_file), checks['original'],
        'Make sure that the output of the file did not change with '
        'apply_fix=False.')
    # Test again with apply_fix=True
    (errors, nodes_changed) = lint_i18n_strings.lint_file(test_file,
        apply_fix=True, verbose=False)
    self.assertEqual(nodes_changed, checks['nodes_changed'],
        '# of nodes changed differ in %s' % test_file)
    real_errors = checks['errors']
    # If there are nodes changed, then the last error line disappears when
    # run with apply_fix
    if checks['nodes_changed'] != 0:
        real_errors = real_errors[:-1]
    self.assertEqual(errors, real_errors,
        'These should be no errors in %s' % test_file)
    self.assertEqual(_slurp(test_file), _slurp(checks['output_file']),
        'Make sure that the output of the file matches the expected '
        'output.')