|
44 | 44 | import warnings |
45 | 45 | import coverage |
46 | 46 | import datetime |
| 47 | +import codecs |
47 | 48 | from coverage.report import Reporter |
48 | 49 | from coverage.results import Numbers |
49 | 50 | from coverage.misc import NotPython |
@@ -161,7 +162,7 @@ def save_test_results(failures, test_labels): |
161 | 162 | # results and avoid re-running tests if we've alread run them with OK |
162 | 163 | # result after the latest code changes: |
163 | 164 | topdir = os.path.dirname(os.path.dirname(settings.BASE_DIR)) |
164 | | - tfile = open(os.path.join(topdir,"testresult"), "a") |
| 165 | + tfile = codecs.open(os.path.join(topdir,"testresult"), "a", encoding='utf-8') |
165 | 166 | timestr = time.strftime("%Y-%m-%d %H:%M:%S") |
166 | 167 | if failures: |
167 | 168 | tfile.write("%s FAILED (failures=%s)\n" % (timestr, failures)) |
@@ -317,7 +318,7 @@ def setup_test_environment(self, **kwargs): |
317 | 318 | ietf.utils.mail.SMTP_ADDR['port'] = 2025 |
318 | 319 | # |
319 | 320 | if self.check_coverage: |
320 | | - with open(self.coverage_file) as file: |
| 321 | + with codecs.open(self.coverage_file, encoding='utf-8') as file: |
321 | 322 | self.coverage_master = json.load(file) |
322 | 323 | self.coverage_data = { |
323 | 324 | "time": datetime.datetime.now(pytz.utc).strftime("%Y-%m-%dT%H:%M:%SZ"), |
@@ -360,10 +361,13 @@ def teardown_test_environment(self, **kwargs): |
360 | 361 | self.smtpd_driver.stop() |
361 | 362 | if self.check_coverage: |
362 | 363 | latest_coverage_file = os.path.join(self.root_dir, settings.TEST_COVERAGE_LATEST_FILE) |
363 | | - with open(latest_coverage_file, "w") as file: |
364 | | - json.dump(self.coverage_data, file, indent=2, sort_keys=True) |
| 364 | + with codecs.open(latest_coverage_file, "w", encoding='utf-8') as file: |
| 365 | + coverage_latest = {} |
| 366 | + coverage_latest["version"] = "latest" |
| 367 | + coverage_latest["latest"] = self.coverage_data |
| 368 | + json.dump(coverage_latest, file, indent=2, sort_keys=True) |
365 | 369 | if self.save_version_coverage: |
366 | | - with open(self.coverage_file, "w") as file: |
| 370 | + with codecs.open(self.coverage_file, "w", encoding="utf-8") as file: |
367 | 371 | self.coverage_master["version"] = self.save_version_coverage |
368 | 372 | self.coverage_master[self.save_version_coverage] = self.coverage_data |
369 | 373 | json.dump(self.coverage_master, file, indent=2, sort_keys=True) |
|
0 commit comments