Skip to content

Commit

Permalink
add coverage for explicit stage fields
Browse files Browse the repository at this point in the history
Signed-off-by: onur-ozkan <work@onurozkan.dev>
  • Loading branch information
onur-ozkan committed Feb 24, 2025
1 parent 37b18f8 commit cf6dc74
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions src/bootstrap/src/core/config/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -454,3 +454,60 @@ fn check_rustc_if_unchanged_paths() {
assert!(config.src.join(p).exists(), "{p} doesn't exist.");
}
}

#[test]
fn test_explicit_stage() {
let config = Config::parse_inner(
Flags::parse(&["check".to_owned(), "--config=/does/not/exist".to_owned()]),
|&_| {
toml::from_str(
r#"
[build]
test-stage = 1
"#,
)
},
);

assert!(!config.explicit_stage_from_cli);
assert!(config.explicit_stage_from_config);

let config = Config::parse_inner(
Flags::parse(&[
"check".to_owned(),
"--stage=2".to_owned(),
"--config=/does/not/exist".to_owned(),
]),
|&_| toml::from_str(""),
);

assert!(config.explicit_stage_from_cli);
assert!(!config.explicit_stage_from_config);

let config = Config::parse_inner(
Flags::parse(&[
"check".to_owned(),
"--stage=2".to_owned(),
"--config=/does/not/exist".to_owned(),
]),
|&_| {
toml::from_str(
r#"
[build]
test-stage = 1
"#,
)
},
);

assert!(config.explicit_stage_from_cli);
assert!(config.explicit_stage_from_config);

let config = Config::parse_inner(
Flags::parse(&["check".to_owned(), "--config=/does/not/exist".to_owned()]),
|&_| toml::from_str(""),
);

assert!(!config.explicit_stage_from_cli);
assert!(!config.explicit_stage_from_config);
}

0 comments on commit cf6dc74

Please sign in to comment.