108 references to TargetChannelValidationResult
Microsoft.DotNet.Build.Tasks.Feed (31)
src\ITargetChannelValidator.cs (1)
41
Task<
TargetChannelValidationResult
> ValidateAsync(ProductConstructionService.Client.Models.Build build, TargetChannelConfig targetChannel);
src\ProductionChannelValidator.cs (26)
40
public async Task<
TargetChannelValidationResult
> ValidateAsync(ProductConstructionService.Client.Models.Build build, TargetChannelConfig targetChannel)
51
return
TargetChannelValidationResult
.Success;
62
return ApplyValidationMode(
TargetChannelValidationResult
.Fail);
66
var
tagValidationResult = ValidateAzureDevOpsTags(build, buildInfo.Tags);
67
if (tagValidationResult !=
TargetChannelValidationResult
.Success)
76
return ApplyValidationMode(
TargetChannelValidationResult
.Fail);
80
var
branchValidationResult = await ValidateBranchIsProductionAsync(build, buildInfo);
81
if (branchValidationResult !=
TargetChannelValidationResult
.Success)
87
return
TargetChannelValidationResult
.Success;
92
return ApplyValidationMode(
TargetChannelValidationResult
.Fail);
99
private
TargetChannelValidationResult
ApplyValidationMode(
TargetChannelValidationResult
result)
101
if (_validationMode == ValidationMode.Audit && result ==
TargetChannelValidationResult
.Fail)
103
return
TargetChannelValidationResult
.AuditOnlyFailure;
169
private
TargetChannelValidationResult
ValidateAzureDevOpsTags(ProductConstructionService.Client.Models.Build build, IReadOnlyList<string> tags)
178
return
TargetChannelValidationResult
.Fail;
186
return
TargetChannelValidationResult
.Success;
191
return
TargetChannelValidationResult
.Fail;
197
return
TargetChannelValidationResult
.Fail;
201
private async Task<
TargetChannelValidationResult
> ValidateBranchIsProductionAsync(ProductConstructionService.Client.Models.Build build, AzureDevOpsBuildInfo buildInfo)
211
return
TargetChannelValidationResult
.Fail;
220
return
TargetChannelValidationResult
.Fail;
226
return
TargetChannelValidationResult
.Fail;
244
return
TargetChannelValidationResult
.Success;
249
return
TargetChannelValidationResult
.Fail;
259
return
TargetChannelValidationResult
.Fail;
src\PublishArtifactsInManifestBase.cs (4)
266
var
validationResult = await TargetChannelValidator.ValidateAsync(build, targetChannel);
270
case
TargetChannelValidationResult
.Success:
274
case
TargetChannelValidationResult
.AuditOnlyFailure:
278
case
TargetChannelValidationResult
.Fail:
Microsoft.DotNet.Build.Tasks.Feed.Tests (77)
ProductionChannelValidatorTests.cs (68)
136
var
result = await validator.ValidateAsync(build, targetChannel);
139
result.Should().Be(
TargetChannelValidationResult
.Success);
176
var
result = await validator.ValidateAsync(build, targetChannel);
179
result.Should().Be(
TargetChannelValidationResult
.Success);
185
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
186
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
187
public async Task ValidateAsync_ProductionChannel_MissingRequiredTag_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
204
var
result = await validator.ValidateAsync(build, targetChannel);
213
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
214
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
215
public async Task ValidateAsync_ProductionChannel_NonProductionBranch_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
244
var
result = await validator.ValidateAsync(build, targetChannel);
251
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
252
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
253
public async Task ValidateAsync_NonAzureDevOpsRepository_WithValidTags_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
275
var
result = await validator.ValidateAsync(build, targetChannel);
284
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
285
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
286
public async Task ValidateAsync_ProductionChannel_MissingAzureDevOpsInfo_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
299
var
result = await validator.ValidateAsync(build, targetChannel);
307
[InlineData(ValidationMode.Enforce, "main", "main",
TargetChannelValidationResult
.Success)]
308
[InlineData(ValidationMode.Enforce, "master", "master",
TargetChannelValidationResult
.Success)]
309
[InlineData(ValidationMode.Enforce, "release/6.0", "release/*",
TargetChannelValidationResult
.Success)]
310
[InlineData(ValidationMode.Enforce, "release/6.0.1", "release/*",
TargetChannelValidationResult
.Success)]
311
[InlineData(ValidationMode.Enforce, "main", "~default",
TargetChannelValidationResult
.Success)]
312
[InlineData(ValidationMode.Enforce, "master", "~default",
TargetChannelValidationResult
.Success)]
313
[InlineData(ValidationMode.Enforce, "feature/test", "main",
TargetChannelValidationResult
.Fail)]
314
[InlineData(ValidationMode.Enforce, "develop", "release/*",
TargetChannelValidationResult
.Fail)]
315
[InlineData(ValidationMode.Enforce, "feature/test", "~default",
TargetChannelValidationResult
.Fail)]
316
[InlineData(ValidationMode.Audit, "main", "main",
TargetChannelValidationResult
.Success)]
317
[InlineData(ValidationMode.Audit, "master", "master",
TargetChannelValidationResult
.Success)]
318
[InlineData(ValidationMode.Audit, "release/6.0", "release/*",
TargetChannelValidationResult
.Success)]
319
[InlineData(ValidationMode.Audit, "release/6.0.1", "release/*",
TargetChannelValidationResult
.Success)]
320
[InlineData(ValidationMode.Audit, "main", "~default",
TargetChannelValidationResult
.Success)]
321
[InlineData(ValidationMode.Audit, "master", "~default",
TargetChannelValidationResult
.Success)]
322
[InlineData(ValidationMode.Audit, "feature/test", "main",
TargetChannelValidationResult
.AuditOnlyFailure)]
323
[InlineData(ValidationMode.Audit, "develop", "release/*",
TargetChannelValidationResult
.AuditOnlyFailure)]
324
[InlineData(ValidationMode.Audit, "feature/test", "~default",
TargetChannelValidationResult
.AuditOnlyFailure)]
325
public async Task ValidateAsync_BranchPatternMatching_WorksCorrectly(ValidationMode validationMode, string branchName, string pattern,
TargetChannelValidationResult
expectedResult)
353
var
result = await validator.ValidateAsync(build, targetChannel);
360
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
361
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
362
public async Task ValidateAsync_AzureDevOpsServiceThrows_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
374
var
result = await validator.ValidateAsync(build, targetChannel);
381
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
382
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
383
public async Task ValidateAsync_BranchClassificationServiceThrows_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
404
var
result = await validator.ValidateAsync(build, targetChannel);
492
var
result = await validator.ValidateAsync(build, targetChannel);
495
result.Should().Be(
TargetChannelValidationResult
.Success);
532
var
enforceResult = await enforceValidator.ValidateAsync(build, targetChannel);
533
var
auditResult = await auditValidator.ValidateAsync(build, targetChannel);
536
enforceResult.Should().Be(
TargetChannelValidationResult
.Success);
537
auditResult.Should().Be(
TargetChannelValidationResult
.Success);
541
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
542
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
543
public async Task ValidateAsync_EmptyBranchClassifications_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
568
var
result = await validator.ValidateAsync(build, targetChannel);
575
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
576
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
577
public async Task ValidateAsync_NullBranchClassificationResponse_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
598
var
result = await validator.ValidateAsync(build, targetChannel);
605
[InlineData(ValidationMode.Enforce,
TargetChannelValidationResult
.Fail)]
606
[InlineData(ValidationMode.Audit,
TargetChannelValidationResult
.AuditOnlyFailure)]
607
public async Task ValidateAsync_UnexpectedExceptionInValidation_ReturnsExpectedResult(ValidationMode validationMode,
TargetChannelValidationResult
expectedResult)
621
var
result = await validator.ValidateAsync(build, targetChannel);
675
var
result = await defaultValidator.ValidateAsync(build, targetChannel);
678
result.Should().Be(
TargetChannelValidationResult
.Fail);
PublishArtifactsInManifestTests.cs (9)
40
private readonly
TargetChannelValidationResult
_validationResult;
43
public MockTargetChannelValidator(
TargetChannelValidationResult
validationResult, bool shouldValidate = true)
53
public Task<
TargetChannelValidationResult
> ValidateAsync(ProductConstructionService.Client.Models.Build build, TargetChannelConfig targetChannel)
189
[InlineData(
TargetChannelValidationResult
.Success)]
190
[InlineData(
TargetChannelValidationResult
.Fail)]
191
public async Task ValidateTargetChannelAsync_ProductionChannelValidation_Works(
TargetChannelValidationResult
validationResult)
219
bool expectedResult = validationResult !=
TargetChannelValidationResult
.Fail;
231
if (validationResult ==
TargetChannelValidationResult
.Fail)
237
else if (validationResult ==
TargetChannelValidationResult
.AuditOnlyFailure)