Specify test group names in github summary for compile fail tests (#14330)
# Objective The github action summary titles every compile test group as `compile_fail_utils`.  ## Solution Manually specify group names for compile fail tests. ## Testing - Wait for compile fail tests to run. - Observe the generated summary.
This commit is contained in:
parent
d276525350
commit
6522795889
@ -1,4 +1,4 @@
|
|||||||
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
||||||
compile_fail_utils::test_multiple(["tests/deref_derive", "tests/deref_mut_derive"])
|
compile_fail_utils::test_multiple("derive_deref", ["tests/deref_derive", "tests/deref_mut_derive"])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
||||||
compile_fail_utils::test("tests/ui")
|
compile_fail_utils::test("ecs_ui", "tests/ui")
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
||||||
compile_fail_utils::test("tests/reflect_derive")
|
compile_fail_utils::test("reflect_derive", "tests/reflect_derive")
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
fn main() -> compile_fail_utils::ui_test::Result<()> {
|
||||||
compile_fail_utils::test("tests/into_function")
|
compile_fail_utils::test("reflect_into_function", "tests/into_function")
|
||||||
}
|
}
|
||||||
|
@ -66,43 +66,40 @@ fn basic_config(root_dir: impl Into<PathBuf>, args: &Args) -> Config {
|
|||||||
/// Runs ui tests for a single directory.
|
/// Runs ui tests for a single directory.
|
||||||
///
|
///
|
||||||
/// `root_dir` is the directory your tests are contained in. Needs to be a path from crate root.
|
/// `root_dir` is the directory your tests are contained in. Needs to be a path from crate root.
|
||||||
pub fn test(test_root: impl Into<PathBuf>) -> ui_test::Result<()> {
|
pub fn test(test_name: impl Into<String>, test_root: impl Into<PathBuf>) -> ui_test::Result<()> {
|
||||||
test_multiple([test_root])
|
test_multiple(test_name, [test_root])
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Run ui tests with the given config
|
/// Run ui tests with the given config
|
||||||
pub fn test_with_config(config: Config) -> ui_test::Result<()> {
|
pub fn test_with_config(test_name: impl Into<String>, config: Config) -> ui_test::Result<()> {
|
||||||
test_with_multiple_configs([config])
|
test_with_multiple_configs(test_name, [config])
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Runs ui tests for a multiple directories.
|
/// Runs ui tests for a multiple directories.
|
||||||
///
|
///
|
||||||
/// `root_dirs` paths need to come from crate root.
|
/// `root_dirs` paths need to come from crate root.
|
||||||
pub fn test_multiple(
|
pub fn test_multiple(
|
||||||
|
test_name: impl Into<String>,
|
||||||
test_roots: impl IntoIterator<Item = impl Into<PathBuf>>,
|
test_roots: impl IntoIterator<Item = impl Into<PathBuf>>,
|
||||||
) -> ui_test::Result<()> {
|
) -> ui_test::Result<()> {
|
||||||
let args = Args::test()?;
|
let args = Args::test()?;
|
||||||
|
|
||||||
let configs = test_roots.into_iter().map(|root| basic_config(root, &args));
|
let configs = test_roots.into_iter().map(|root| basic_config(root, &args));
|
||||||
|
|
||||||
test_with_multiple_configs(configs)
|
test_with_multiple_configs(test_name, configs)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Run ui test with the given configs.
|
/// Run ui test with the given configs.
|
||||||
///
|
///
|
||||||
/// Tests for configs are run in parallel.
|
/// Tests for configs are run in parallel.
|
||||||
pub fn test_with_multiple_configs(
|
pub fn test_with_multiple_configs(
|
||||||
|
test_name: impl Into<String>,
|
||||||
configs: impl IntoIterator<Item = Config>,
|
configs: impl IntoIterator<Item = Config>,
|
||||||
) -> ui_test::Result<()> {
|
) -> ui_test::Result<()> {
|
||||||
let configs = configs.into_iter().collect();
|
let configs = configs.into_iter().collect();
|
||||||
|
|
||||||
let emitter: Box<dyn StatusEmitter + Send> = if env::var_os("CI").is_some() {
|
let emitter: Box<dyn StatusEmitter + Send> = if env::var_os("CI").is_some() {
|
||||||
Box::new((
|
Box::new((Text::verbose(), Gha::<true> { name: test_name.into() }))
|
||||||
Text::verbose(),
|
|
||||||
Gha::<true> {
|
|
||||||
name: env!("CARGO_PKG_NAME").to_string(),
|
|
||||||
},
|
|
||||||
))
|
|
||||||
} else {
|
} else {
|
||||||
Box::new(Text::quiet())
|
Box::new(Text::quiet())
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user