mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-09 15:20:56 -06:00
Tests: Always load presets schema as UTF-8
We know the encoding of the schema file, so we should specify it when we open it for reading. Previously, by not specifying it, the test was open to using an encoding based on the active locale when running the test. We may have been enforcing a "C" locale at a higher level, but we don't need to rely on that here, we can force correct behavior without that assumption. Issue: #24679
This commit is contained in:
@@ -4,13 +4,13 @@ import os.path
|
||||
import sys
|
||||
|
||||
|
||||
with open(sys.argv[1], "rb") as f:
|
||||
contents = json.loads(f.read().decode("utf-8-sig"))
|
||||
with open(sys.argv[1], "r", encoding="utf-8-sig") as f:
|
||||
contents = json.load(f)
|
||||
|
||||
schema_file = os.path.join(
|
||||
os.path.dirname(__file__),
|
||||
"..", "..", "..", "Help", "manual", "presets", "schema.json")
|
||||
with open(schema_file) as f:
|
||||
with open(schema_file, "r", encoding="utf-8") as f:
|
||||
schema = json.load(f)
|
||||
|
||||
jsonschema.validate(contents, schema)
|
||||
|
||||
Reference in New Issue
Block a user