diff options
author | 2020-10-15 04:28:42 +1100 | |
---|---|---|
committer | 2020-10-15 04:28:42 +1100 | |
commit | d256f069a5aa30bf5ffcfc4b73047ce0f372ea10 (patch) | |
tree | 8df1bd2e70d7e15e59928203d0eb687c82307bff /3rdparty/expat/tests/udiffer.py | |
parent | 13850f3011e000307925aefd918efe2f0ce6649d (diff) |
-3rdparty/expat: Update to 2.2.10."
-Fixed tiny build (missing s11c_bg_device) and unused lambda capture in emu/rendlay.cpp.
Diffstat (limited to '3rdparty/expat/tests/udiffer.py')
-rwxr-xr-x | 3rdparty/expat/tests/udiffer.py | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/3rdparty/expat/tests/udiffer.py b/3rdparty/expat/tests/udiffer.py new file mode 100755 index 00000000000..6fb91be7e3d --- /dev/null +++ b/3rdparty/expat/tests/udiffer.py @@ -0,0 +1,62 @@ +#! /usr/bin/env python3 +# __ __ _ +# ___\ \/ /_ __ __ _| |_ +# / _ \\ /| '_ \ / _` | __| +# | __// \| |_) | (_| | |_ +# \___/_/\_\ .__/ \__,_|\__| +# |_| XML parser +# +# Copyright (c) 2017 Expat development team +# Licensed under the MIT license: +# +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to permit +# persons to whom the Software is furnished to do so, subject to the +# following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +# NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +# USE OR OTHER DEALINGS IN THE SOFTWARE. + +import argparse +import difflib +import sys + + +def _read_lines(filename): + try: + with open(filename) as f: + return f.readlines() + except UnicodeDecodeError: + with open(filename, encoding='utf_16') as f: + return f.readlines() + + +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) + + +if __name__ == '__main__': + main() |