53 references to JobClassification
AnalyzeCiFailure (28)
AnalysisValidator.cs (1)
58
if (proposal.Jobs.Single(decision => decision.JobId == job.Id).Classification !=
JobClassification
.TransientInfrastructure)
CiFailureJson.cs (1)
29
new ExactEnumConverter<
JobClassification
>(),
Models\RunSummaryContracts.cs (2)
33
public
JobClassification
? Classification { get; init; }
120
public
JobClassification
? Classification { get; init; }
Models\TransientContracts.cs (1)
201
public required
JobClassification
Classification { get; init; }
TransientJson.cs (1)
30
new StrictEnumConverter<
JobClassification
>(),
ValidationRules.cs (22)
32
if (!(analysis.Jobs.Length > 0 && analysis.Jobs.All(j => j.Classification is
JobClassification
.TransientInfrastructure or
JobClassification
.FlakyTest or
JobClassification
.CodeIssue or
JobClassification
.MainRepositoryBreakage)))
44
if (analysis.Jobs.Any(j => (run.Scope == RunScope.Main && j.Classification ==
JobClassification
.CodeIssue) ||
45
(run.Scope == RunScope.PullRequest && j.Classification ==
JobClassification
.MainRepositoryBreakage)))
92
CauseType.InfrastructureFailure => classification ==
JobClassification
.TransientInfrastructure,
93
CauseType.MainRepositoryBreakage => classification ==
JobClassification
.MainRepositoryBreakage,
94
CauseType.FlakyTest => classification ==
JobClassification
.FlakyTest ||
95
(classification is
JobClassification
.CodeIssue or
JobClassification
.MainRepositoryBreakage && hasFlakyTestInJob),
125
var infraJobs = analysis.Jobs.Count(j => j.Classification ==
JobClassification
.TransientInfrastructure);
126
var flakyJobs = analysis.Jobs.Count(j => j.Classification ==
JobClassification
.FlakyTest);
127
var codeJobs = analysis.Jobs.Count(j => j.Classification ==
JobClassification
.CodeIssue);
128
var mainJobs = analysis.Jobs.Count(j => j.Classification ==
JobClassification
.MainRepositoryBreakage);
195
var infraJobs = analysis.Jobs.Count(job => job.Classification ==
JobClassification
.TransientInfrastructure);
196
var mainJobs = analysis.Jobs.Count(job => job.Classification ==
JobClassification
.MainRepositoryBreakage);
197
var hasFlakyEvidence = analysis.Jobs.Any(job => job.Classification ==
JobClassification
.FlakyTest) ||
214
if (!analysis.Jobs.Any(job => job.NormalizedId == test.NormalizedJobId && job.Classification ==
JobClassification
.TransientInfrastructure) ||
224
JobClassification
.TransientInfrastructure => CauseType.InfrastructureFailure,
225
JobClassification
.FlakyTest => CauseType.FlakyTest,
226
JobClassification
.MainRepositoryBreakage => CauseType.MainRepositoryBreakage,
AnalyzeCiFailure.Tests (25)
AnalyzeCiFailureBestEffortTests.cs (1)
26
Jobs = [new ProposedJobDecision { JobId = 123, Classification =
JobClassification
.MainRepositoryBreakage, Reason = "Claimed repository failure" }],
AnalyzeCiFailureCSharpRerunTests.cs (1)
84
proposal = proposal with { Jobs = [proposal.Jobs[0] with { Classification =
JobClassification
.CodeIssue }], Causes = [] };
AnalyzeCiFailureEnumTests.cs (2)
40
Assert.ThrowsAny<JsonException>(() => CiFailureJson.ToContract<
JobClassification
>(value));
55
jobs = Enum.GetValues<
JobClassification
>(),
AnalyzeCiFailureFixtures.cs (2)
40
Jobs = evidence.Jobs.Select(job => new ProposedJobDecision { JobId = job.Id, Classification =
JobClassification
.TransientInfrastructure, Reason = "Runner lost" }).ToImmutableArray(),
233
Classification = CiFailureJson.ReadEnum<
JobClassification
>(CiFailureJson.Text(job?["classification"]), "Job classification is invalid"),
AnalyzeCiFailureMigrationTests.cs (3)
46
Jobs = [new ProposedJobDecision { JobId = 123, Classification =
JobClassification
.FlakyTest, Reason = "Timeout" }],
159
Jobs = [new ProposedJobDecision { JobId = 123, Classification =
JobClassification
.FlakyTest, Reason = "Timeout" }],
520
Jobs = evidence.Jobs.Select(job => new ProposedJobDecision { JobId = job.Id, Classification =
JobClassification
.FlakyTest, Reason = "Current timeout" }).ToImmutableArray(),
AnalyzeCiFailureOverflowTests.cs (1)
269
Jobs = [new ProposedJobDecision { JobId = 123, Classification =
JobClassification
.FlakyTest, Reason = "Independent timeouts" }],
AnalyzeCiFailureRuleTests.cs (1)
560
private static AnalysisJob Job(string id, string classification) => new() { Id = CiFailureJson.ToContract<System.Text.Json.JsonElement>(CiFailureJson.Parse(id)), Classification = Value<
JobClassification
>(classification) };
AnalyzeCiFailureTemplateTests.cs (4)
22
var
classification = verdict switch
24
"TransientInfrastructure" =>
JobClassification
.TransientInfrastructure,
25
"CodeIssue" =>
JobClassification
.CodeIssue,
26
_ =>
JobClassification
.FlakyTest,
AnalyzeCiFailureTransientContractTests.cs (1)
203
Jobs = [proposal.Jobs[0] with { Classification =
JobClassification
.TransientInfrastructure }],
AnalyzeCiFailureVerdictMatrixTests.cs (9)
22
foreach (
var
first in Enum.GetValues<
JobClassification
>())
24
foreach (var second in Enum.GetValues<
JobClassification
>().Select(value => (
JobClassification
?)value).Prepend(element: null))
44
.Where(item => item.jobClass !=
JobClassification
.CodeIssue)
50
JobClassification
.TransientInfrastructure => CauseType.InfrastructureFailure,
51
JobClassification
.FlakyTest => CauseType.FlakyTest,
55
item.jobClass ==
JobClassification
.FlakyTest
60
if (testClass == TestClassification.Flaky && first !=
JobClassification
.FlakyTest)