Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Format.
  • Loading branch information
matanlurey committed Dec 23, 2024
commit fb36ba575d7a3a0e2928a342946419a3153cdb9b
74 changes: 24 additions & 50 deletions app_dart/test/model/ci_yaml/ci_yaml_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,14 @@ void main() {
'flutter-2.4-candidate.3',
<String>['flutter-\\d+\\.\\d+-candidate\\.\\d+'],
),
EnabledBranchesRegexTest('matches main when not first pattern', 'main',
<String>['dev', 'main']),
EnabledBranchesRegexTest(
'does not do partial matches', 'super-main', <String>['main'], false),
EnabledBranchesRegexTest('matches main when not first pattern', 'main', <String>['dev', 'main']),
EnabledBranchesRegexTest('does not do partial matches', 'super-main', <String>['main'], false),
];

for (EnabledBranchesRegexTest regexTest in tests) {
test(regexTest.name, () {
expect(
CiYaml.enabledBranchesMatchesCurrentBranch(
regexTest.enabledBranches, regexTest.branch),
CiYaml.enabledBranchesMatchesCurrentBranch(regexTest.enabledBranches, regexTest.branch),
regexTest.expectation,
);
});
Expand All @@ -44,11 +41,9 @@ void main() {
});
}

validatePinnedVersion(
'[{"dependency": "chrome_and_driver", "version": "version:96.2"}]');
validatePinnedVersion('[{"dependency": "chrome_and_driver", "version": "version:96.2"}]');
validatePinnedVersion('[{"dependency": "open_jdk", "version": "11"}]');
validatePinnedVersion(
'[{"dependency": "android_sdk", "version": "version:31v8"}]');
validatePinnedVersion('[{"dependency": "android_sdk", "version": "version:31v8"}]');
validatePinnedVersion(
'[{"dependency": "goldctl", "version": "git_revision:3a77d0b12c697a840ca0c7705208e8622dc94603"}]',
);
Expand All @@ -57,25 +52,20 @@ void main() {
group('Validate un-pinned version operation.', () {
void validateUnPinnedVersion(String input) {
test('$input -> returns normally', () {
expect(
() => DependencyValidator.hasVersion(dependencyJsonString: input),
throwsException);
expect(() => DependencyValidator.hasVersion(dependencyJsonString: input), throwsException);
});
}

validateUnPinnedVersion('[{"dependency": "some_sdk", "version": ""}]');
validateUnPinnedVersion('[{"dependency": "another_sdk"}]');
validateUnPinnedVersion(
'[{"dependency": "yet_another_sdk", "version": "latest"}]');
validateUnPinnedVersion('[{"dependency": "yet_another_sdk", "version": "latest"}]');
});

group('initialTargets', () {
test('targets without deps', () {
final ciYaml = exampleConfig;
final List<Target> initialTargets =
ciYaml.getInitialTargets(ciYaml.postsubmitTargets());
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<Target> initialTargets = ciYaml.getInitialTargets(ciYaml.postsubmitTargets());
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand Down Expand Up @@ -109,10 +99,8 @@ void main() {
),
},
);
final List<Target> initialTargets =
ciYaml.getInitialTargets(ciYaml.postsubmitTargets());
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<Target> initialTargets = ciYaml.getInitialTargets(ciYaml.postsubmitTargets());
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand Down Expand Up @@ -169,8 +157,7 @@ void main() {

test('filter targets removed from presubmit', () {
final List<Target> initialTargets = ciYaml.presubmitTargets;
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand All @@ -185,8 +172,7 @@ void main() {
final ciYaml = CiYaml(
type: CiType.any,
slug: Config.flutterSlug,
branch:
'gh-readonly-queue/master/pr-160481-1398dc7eecb696d302e4edb19ad79901e615ed56',
branch: 'gh-readonly-queue/master/pr-160481-1398dc7eecb696d302e4edb19ad79901e615ed56',
config: pb.SchedulerConfig(
enabledBranches: <String>[
'master',
Expand All @@ -207,9 +193,8 @@ void main() {
totConfig: totCIYaml,
);

final List<String> initialTargetNames = ciYaml.presubmitTargets
.map((Target target) => target.value.name)
.toList();
final List<String> initialTargetNames =
ciYaml.presubmitTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand All @@ -222,8 +207,7 @@ void main() {

test('filter targets removed from postsubmit', () {
final List<Target> initialTargets = ciYaml.postsubmitTargets;
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand All @@ -237,8 +221,7 @@ void main() {
test('Get backfill targets from postsubmit', () {
final ciYaml = exampleBackfillConfig;
final List<Target> backfillTargets = ciYaml.backfillTargets();
final List<String> backfillTargetNames =
backfillTargets.map((Target target) => target.value.name).toList();
final List<String> backfillTargetNames = backfillTargets.map((Target target) => target.value.name).toList();
expect(
backfillTargetNames,
containsAll(
Expand Down Expand Up @@ -276,8 +259,7 @@ void main() {
totConfig: totCIYaml,
);
final List<Target> initialTargets = releaseYaml.postsubmitTargets;
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(initialTargetNames, isEmpty);
});

Expand All @@ -304,8 +286,7 @@ void main() {
totConfig: totCIYaml,
);
final List<Target> initialTargets = releaseYaml.postsubmitTargets;
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand All @@ -316,9 +297,7 @@ void main() {
);
});

test(
'release_build and bringup targets are correctly filtered for postsubmit in fusion mode',
() {
test('release_build and bringup targets are correctly filtered for postsubmit in fusion mode', () {
final CiYaml releaseYaml = CiYaml(
type: CiType.any,
slug: Config.flutterSlug,
Expand All @@ -341,8 +320,7 @@ void main() {
isFusion: true,
);
final List<Target> initialTargets = releaseYaml.postsubmitTargets;
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
<String>[
Expand Down Expand Up @@ -424,12 +402,9 @@ void main() {
totConfig: totCIYaml,
);

test(
'presubmit true target is scheduled though TOT is with presubmit false',
() {
test('presubmit true target is scheduled though TOT is with presubmit false', () {
final List<Target> initialTargets = ciYaml.presubmitTargets;
final List<String> initialTargetNames =
initialTargets.map((Target target) => target.value.name).toList();
final List<String> initialTargetNames = initialTargets.map((Target target) => target.value.name).toList();
expect(
initialTargetNames,
containsAll(
Expand Down Expand Up @@ -794,8 +769,7 @@ void main() {

/// Wrapper class for table driven design of [CiYaml.enabledBranchesMatchesCurrentBranch].
class EnabledBranchesRegexTest {
EnabledBranchesRegexTest(this.name, this.branch, this.enabledBranches,
[this.expectation = true]);
EnabledBranchesRegexTest(this.name, this.branch, this.enabledBranches, [this.expectation = true]);

final String branch;
final List<String> enabledBranches;
Expand Down