cmCMakePresetsGraph: do not set default value for TestOutputTruncation

The `TestOutputTruncation` is an optional preset. Do not set a default
value to avoid failing the JSON schema version check.

Closes issue #23411.
This commit is contained in:
Frank Winklmeier
2022-04-12 13:41:07 +02:00
parent 6cd0eefb85
commit 7a8ca8f842
2 changed files with 4 additions and 8 deletions

View File

@@ -569,7 +569,7 @@ cmCMakePresetsGraph::ReadFileResult cmCMakePresetsGraph::ReadJSONFile(
}
// Support for TestOutputTruncation added in version 5.
if (v < 5 && preset.Output) {
if (v < 5 && preset.Output && preset.Output->TestOutputTruncation) {
return ReadFileResult::TEST_OUTPUT_TRUNCATION_UNSUPPORTED;
}

View File

@@ -58,10 +58,10 @@ auto const TestPresetOptionalOutputVerbosityHelper =
TestPresetOutputVerbosityHelper);
ReadFileResult TestPresetOutputTruncationHelper(
cmCTestTypes::TruncationMode& out, const Json::Value* value)
cm::optional<cmCTestTypes::TruncationMode>& out, const Json::Value* value)
{
if (!value) {
out = cmCTestTypes::TruncationMode::Tail;
out = cm::nullopt;
return ReadFileResult::READ_OK;
}
@@ -87,10 +87,6 @@ ReadFileResult TestPresetOutputTruncationHelper(
return ReadFileResult::INVALID_PRESET;
}
auto const TestPresetOptionalTruncationHelper =
cmJSONOptionalHelper<cmCTestTypes::TruncationMode, ReadFileResult>(
ReadFileResult::READ_OK, TestPresetOutputTruncationHelper);
auto const TestPresetOptionalOutputHelper =
cmJSONOptionalHelper<TestPreset::OutputOptions, ReadFileResult>(
ReadFileResult::READ_OK,
@@ -121,7 +117,7 @@ auto const TestPresetOptionalOutputHelper =
cmCMakePresetsGraphInternal::PresetOptionalIntHelper, false)
.Bind("testOutputTruncation"_s,
&TestPreset::OutputOptions::TestOutputTruncation,
TestPresetOptionalTruncationHelper, false)
TestPresetOutputTruncationHelper, false)
.Bind("maxTestNameWidth"_s, &TestPreset::OutputOptions::MaxTestNameWidth,
cmCMakePresetsGraphInternal::PresetOptionalIntHelper, false));