From: Sebastian Pipping Date: Sat, 9 Sep 2017 15:54:18 +0000 (+0200) Subject: udiffer.py: Improve overall structure X-Git-Tag: R_2_2_5~17^2~6 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3efafceb600e94cf0d2a69e4d246c960cb43b250;p=libexpat udiffer.py: Improve overall structure --- diff --git a/expat/tests/udiffer.py b/expat/tests/udiffer.py index 4f7f7599..6fb91be7 100755 --- a/expat/tests/udiffer.py +++ b/expat/tests/udiffer.py @@ -28,8 +28,9 @@ # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE # USE OR OTHER DEALINGS IN THE SOFTWARE. -import sys +import argparse import difflib +import sys def _read_lines(filename): @@ -41,14 +42,21 @@ def _read_lines(filename): return f.readlines() -if len(sys.argv) != 3: - sys.exit(2) +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('first', metavar='FILE') + parser.add_argument('second', metavar='FILE') + config = parser.parse_args() + + first = _read_lines(config.first) + second = _read_lines(config.second) + + diffs = list(difflib.unified_diff(first, second, fromfile=config.first, + tofile=config.second)) + if diffs: + sys.stdout.writelines(diffs) + sys.exit(1) -first = _read_lines(sys.argv[1]) -second = _read_lines(sys.argv[2]) -diffs = list(difflib.unified_diff(first, second, - fromfile=sys.argv[1], tofile=sys.argv[2])) -if diffs: - sys.stdout.writelines(diffs) - sys.exit(1) +if __name__ == '__main__': + main()