Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/scripts
diff options
context:
space:
mode:
authorTom Hughes2018-04-06 13:59:08 +0100
committerMartin Hořeňovský2018-04-16 21:19:13 +0200
commitdc6b83bec9bdcc149db08711cc9dfd555a8620fa (patch)
treea9db908a0a8a9cb2ce88203be7b786d4a560f486 /scripts
parentf00257e374a25b5f19106699cdc8ef0e6a63de02 (diff)
downloadcatch3-dc6b83bec9bdcc149db08711cc9dfd555a8620fa.tar.gz
Support Python3 in approval tests
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/approvalTests.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/scripts/approvalTests.py b/scripts/approvalTests.py
index a2ab5d5a..16cc7b7d 100755
--- a/scripts/approvalTests.py
+++ b/scripts/approvalTests.py
@@ -72,10 +72,17 @@ else:
overallResult = 0
+def openFile(file, mode):
+ try:
+ return open(file, mode, encoding='utf-8', errors='surrogateescape')
+ except TypeError:
+ import io
+ return io.open(file, mode, encoding='utf-8', errors='surrogateescape')
+
def diffFiles(fileA, fileB):
- with open(fileA, 'r') as file:
+ with openFile(fileA, 'r') as file:
aLines = [line.rstrip() for line in file.readlines()]
- with open(fileB, 'r') as file:
+ with openFile(fileB, 'r') as file:
bLines = [line.rstrip() for line in file.readlines()]
shortenedFilenameA = fileA.rsplit(os.sep, 1)[-1]
@@ -139,8 +146,8 @@ def approve(baseName, args):
subprocess.call(args, stdout=f, stderr=f)
f.close()
- rawFile = open(rawResultsPath, 'r')
- filteredFile = open(filteredResultsPath, 'w')
+ rawFile = openFile(rawResultsPath, 'r')
+ filteredFile = openFile(filteredResultsPath, 'w')
for line in rawFile:
filteredFile.write(filterLine(line).rstrip() + "\n")
filteredFile.close()