@@ -39,9 +39,9 @@ public class ExecutionSettings {
3939 Collections .emptyList (),
4040 Collections .emptyList (),
4141 LineDiff .EMPTY ,
42- false );
42+ ConfigurationErrors . NONE );
4343
44- public static final ExecutionSettings REQUEST_ERROR =
44+ public static final ExecutionSettings SETTINGS_REQUEST_ERROR =
4545 new ExecutionSettings (
4646 false ,
4747 false ,
@@ -61,7 +61,7 @@ public class ExecutionSettings {
6161 Collections .emptyList (),
6262 Collections .emptyList (),
6363 LineDiff .EMPTY ,
64- true );
64+ new ConfigurationErrors ( true , false , false , false , false ) );
6565
6666 private final boolean itrEnabled ;
6767 private final boolean codeCoverageEnabled ;
@@ -78,7 +78,7 @@ public class ExecutionSettings {
7878 @ Nonnull private final Map <TestFQN , Integer > testSettings ;
7979 @ Nonnull private final Map <TestSetting , Integer > settingsCount ;
8080 @ Nonnull private final Diff pullRequestDiff ;
81- private final boolean configurationError ;
81+ @ Nonnull private final ConfigurationErrors configurationErrors ;
8282
8383 public ExecutionSettings (
8484 boolean itrEnabled ,
@@ -99,7 +99,7 @@ public ExecutionSettings(
9999 @ Nonnull Collection <TestFQN > disabledTests ,
100100 @ Nonnull Collection <TestFQN > attemptToFixTests ,
101101 @ Nonnull Diff pullRequestDiff ,
102- boolean configurationError ) {
102+ @ Nonnull ConfigurationErrors configurationErrors ) {
103103 this .itrEnabled = itrEnabled ;
104104 this .codeCoverageEnabled = codeCoverageEnabled ;
105105 this .testSkippingEnabled = testSkippingEnabled ;
@@ -113,7 +113,7 @@ public ExecutionSettings(
113113 this .skippableTests = skippableTests ;
114114 this .skippableTestsCoverage = skippableTestsCoverage ;
115115 this .pullRequestDiff = pullRequestDiff ;
116- this .configurationError = configurationError ;
116+ this .configurationErrors = configurationErrors ;
117117
118118 testSettings = new HashMap <>();
119119 if (flakyTests != null ) {
@@ -154,7 +154,7 @@ private ExecutionSettings(
154154 @ Nonnull Map <TestFQN , Integer > testSettings ,
155155 @ Nonnull EnumMap <TestSetting , Integer > settingsCount ,
156156 @ Nonnull Diff pullRequestDiff ,
157- boolean configurationError ) {
157+ @ Nonnull ConfigurationErrors configurationErrors ) {
158158 this .itrEnabled = itrEnabled ;
159159 this .codeCoverageEnabled = codeCoverageEnabled ;
160160 this .testSkippingEnabled = testSkippingEnabled ;
@@ -170,7 +170,7 @@ private ExecutionSettings(
170170 this .testSettings = testSettings ;
171171 this .settingsCount = settingsCount ;
172172 this .pullRequestDiff = pullRequestDiff ;
173- this .configurationError = configurationError ;
173+ this .configurationErrors = configurationErrors ;
174174 }
175175
176176 /**
@@ -277,8 +277,9 @@ public Diff getPullRequestDiff() {
277277 return pullRequestDiff ;
278278 }
279279
280- public boolean isConfigurationError () {
281- return configurationError ;
280+ @ Nonnull
281+ public ConfigurationErrors getConfigurationErrors () {
282+ return configurationErrors ;
282283 }
283284
284285 @ Override
@@ -305,7 +306,7 @@ public boolean equals(Object o) {
305306 && Objects .equals (testSettings , that .testSettings )
306307 && Objects .equals (settingsCount , that .settingsCount )
307308 && Objects .equals (pullRequestDiff , that .pullRequestDiff )
308- && configurationError == that .configurationError ;
309+ && Objects . equals ( configurationErrors , that .configurationErrors ) ;
309310 }
310311
311312 @ Override
@@ -326,7 +327,7 @@ public int hashCode() {
326327 testSettings ,
327328 settingsCount ,
328329 pullRequestDiff ,
329- configurationError );
330+ configurationErrors );
330331 }
331332
332333 public static class Serializer {
@@ -338,7 +339,6 @@ public static class Serializer {
338339 private static final int IMPACTED_TESTS_DETECTION_ENABLED_FLAG = 16 ;
339340 private static final int CODE_COVERAGE_REPORT_UPLOAD_ENABLED_FLAG = 32 ;
340341 private static final int FAILED_TEST_REPLAY_ENABLED_FLAG = 64 ;
341- private static final int CONFIGURATION_ERROR_FLAG = 128 ;
342342
343343 public static ByteBuffer serialize (ExecutionSettings settings ) {
344344 datadog .trace .civisibility .ipc .serialization .Serializer s =
@@ -356,10 +356,11 @@ public static ByteBuffer serialize(ExecutionSettings settings) {
356356 | (settings .codeCoverageReportUploadEnabled
357357 ? CODE_COVERAGE_REPORT_UPLOAD_ENABLED_FLAG
358358 : 0 )
359- | (settings .failedTestReplayEnabled ? FAILED_TEST_REPLAY_ENABLED_FLAG : 0 )
360- | (settings .configurationError ? CONFIGURATION_ERROR_FLAG : 0 ));
359+ | (settings .failedTestReplayEnabled ? FAILED_TEST_REPLAY_ENABLED_FLAG : 0 ));
361360 s .write (flags );
362361
362+ ConfigurationErrors .serialize (s , settings .configurationErrors );
363+
363364 EarlyFlakeDetectionSettings .Serializer .serialize (s , settings .earlyFlakeDetectionSettings );
364365
365366 TestManagementSettings .Serializer .serialize (s , settings .testManagementSettings );
@@ -399,7 +400,8 @@ public static ExecutionSettings deserialize(ByteBuffer buffer) {
399400 boolean codeCoverageReportUploadEnabled =
400401 (flags & CODE_COVERAGE_REPORT_UPLOAD_ENABLED_FLAG ) != 0 ;
401402 boolean failedTestReplayEnabled = (flags & FAILED_TEST_REPLAY_ENABLED_FLAG ) != 0 ;
402- boolean configurationError = (flags & CONFIGURATION_ERROR_FLAG ) != 0 ;
403+
404+ ConfigurationErrors configurationErrors = ConfigurationErrors .deserialize (buffer );
403405
404406 EarlyFlakeDetectionSettings earlyFlakeDetectionSettings =
405407 EarlyFlakeDetectionSettings .Serializer .deserialize (buffer );
@@ -452,7 +454,7 @@ public static ExecutionSettings deserialize(ByteBuffer buffer) {
452454 testSettings ,
453455 settingsCount ,
454456 diff ,
455- configurationError );
457+ configurationErrors );
456458 }
457459 }
458460}
0 commit comments