diff --git a/Cargo.toml b/Cargo.toml index 245e996a63..27bc62b1a7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,10 +15,9 @@ rust-version = "1.77.0" [workspace] exclude = [ "benches", - "crates/bevy_ecs_compile_fail_tests", - "crates/bevy_macros_compile_fail_tests", - "crates/bevy_reflect_compile_fail_tests", - "crates/bevy_compile_test_utils", + "crates/bevy_derive/compile_fail", + "crates/bevy_ecs/compile_fail", + "crates/bevy_reflect/compile_fail", ] members = [ "crates/*", diff --git a/crates/bevy_derive/compile_fail/.gitignore b/crates/bevy_derive/compile_fail/.gitignore new file mode 100644 index 0000000000..ea8c4bf7f3 --- /dev/null +++ b/crates/bevy_derive/compile_fail/.gitignore @@ -0,0 +1 @@ +/target diff --git a/crates/bevy_macros_compile_fail_tests/Cargo.toml b/crates/bevy_derive/compile_fail/Cargo.toml similarity index 68% rename from crates/bevy_macros_compile_fail_tests/Cargo.toml rename to crates/bevy_derive/compile_fail/Cargo.toml index 047511f3b6..a67a148135 100644 --- a/crates/bevy_macros_compile_fail_tests/Cargo.toml +++ b/crates/bevy_derive/compile_fail/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "bevy_macros_compile_fail_tests" +name = "bevy_derive_compile_fail" edition = "2021" description = "Compile fail tests for Bevy Engine's various macros" homepage = "https://bevyengine.org" @@ -9,10 +9,10 @@ publish = false [dependencies] # ui_test dies if we don't specify the version. See oli-obk/ui_test#211 -bevy_derive = { path = "../bevy_derive", version = "0.14.0-dev" } +bevy_derive = { path = "../", version = "0.14.0-dev" } [dev-dependencies] -bevy_compile_test_utils = { path = "../bevy_compile_test_utils" } +compile_fail_utils = { path = "../../../tools/compile_fail_utils" } [[test]] name = "derive" diff --git a/crates/bevy_macros_compile_fail_tests/README.md b/crates/bevy_derive/compile_fail/README.md similarity index 66% rename from crates/bevy_macros_compile_fail_tests/README.md rename to crates/bevy_derive/compile_fail/README.md index ad4e58f447..671c9e827b 100644 --- a/crates/bevy_macros_compile_fail_tests/README.md +++ b/crates/bevy_derive/compile_fail/README.md @@ -3,6 +3,6 @@ This crate is not part of the Bevy workspace in order to not fail `crater` tests for Bevy. The tests assert on the exact compiler errors and can easily fail for new Rust versions due to updated compiler errors (e.g. changes in spans). -The `CI` workflow executes these tests on the stable rust toolchain (see [tools/ci](../../tools/ci/src/main.rs)). +The `CI` workflow executes these tests on the stable rust toolchain (see [tools/ci](../../../tools/ci/src/main.rs)). -For information on writing tests see [bevy_compile_test_utils/README.md](../bevy_compile_test_utils/README.md). +For information on writing tests see [compile_fail_utils/README.md](../../../tools/compile_fail_utils/README.md). diff --git a/crates/bevy_ecs_compile_fail_tests/src/lib.rs b/crates/bevy_derive/compile_fail/src/lib.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/src/lib.rs rename to crates/bevy_derive/compile_fail/src/lib.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_attribute_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_derive/invalid_attribute_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_attribute_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_derive/invalid_attribute_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_attribute_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_derive/invalid_attribute_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_attribute_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_derive/invalid_attribute_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_item_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_derive/invalid_item_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_item_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_derive/invalid_item_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_item_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_derive/invalid_item_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/invalid_item_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_derive/invalid_item_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/missing_attribute_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_derive/missing_attribute_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/missing_attribute_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_derive/missing_attribute_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/missing_attribute_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_derive/missing_attribute_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/missing_attribute_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_derive/missing_attribute_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/multiple_attributes_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_derive/multiple_attributes_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/multiple_attributes_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_derive/multiple_attributes_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/multiple_attributes_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_derive/multiple_attributes_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/multiple_attributes_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_derive/multiple_attributes_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/multiple_fields_pass.rs b/crates/bevy_derive/compile_fail/tests/deref_derive/multiple_fields_pass.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/multiple_fields_pass.rs rename to crates/bevy_derive/compile_fail/tests/deref_derive/multiple_fields_pass.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_derive/single_field_pass.rs b/crates/bevy_derive/compile_fail/tests/deref_derive/single_field_pass.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_derive/single_field_pass.rs rename to crates/bevy_derive/compile_fail/tests/deref_derive/single_field_pass.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_attribute_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_attribute_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_attribute_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_attribute_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_attribute_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_attribute_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_attribute_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_attribute_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_item_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_item_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_item_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_item_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_item_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_item_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/invalid_item_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/invalid_item_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/mismatched_target_type_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/mismatched_target_type_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/mismatched_target_type_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/mismatched_target_type_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/mismatched_target_type_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/mismatched_target_type_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/mismatched_target_type_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/mismatched_target_type_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_attribute_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_attribute_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_attribute_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_attribute_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_attribute_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_attribute_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_attribute_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_attribute_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_deref_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_deref_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_deref_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_deref_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_deref_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_deref_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/missing_deref_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/missing_deref_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/multiple_attributes_fail.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/multiple_attributes_fail.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/multiple_attributes_fail.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/multiple_attributes_fail.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/multiple_attributes_fail.stderr b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/multiple_attributes_fail.stderr similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/multiple_attributes_fail.stderr rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/multiple_attributes_fail.stderr diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/multiple_fields_pass.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/multiple_fields_pass.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/multiple_fields_pass.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/multiple_fields_pass.rs diff --git a/crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/single_field_pass.rs b/crates/bevy_derive/compile_fail/tests/deref_mut_derive/single_field_pass.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/tests/deref_mut_derive/single_field_pass.rs rename to crates/bevy_derive/compile_fail/tests/deref_mut_derive/single_field_pass.rs diff --git a/crates/bevy_derive/compile_fail/tests/derive.rs b/crates/bevy_derive/compile_fail/tests/derive.rs new file mode 100644 index 0000000000..caabcbf332 --- /dev/null +++ b/crates/bevy_derive/compile_fail/tests/derive.rs @@ -0,0 +1,4 @@ +fn main() -> compile_fail_utils::ui_test::Result<()> { + compile_fail_utils::test_multiple(["tests/deref_derive", "tests/deref_mut_derive"]) +} + diff --git a/crates/bevy_ecs/compile_fail/.gitignore b/crates/bevy_ecs/compile_fail/.gitignore new file mode 100644 index 0000000000..ea8c4bf7f3 --- /dev/null +++ b/crates/bevy_ecs/compile_fail/.gitignore @@ -0,0 +1 @@ +/target diff --git a/crates/bevy_ecs_compile_fail_tests/Cargo.toml b/crates/bevy_ecs/compile_fail/Cargo.toml similarity index 70% rename from crates/bevy_ecs_compile_fail_tests/Cargo.toml rename to crates/bevy_ecs/compile_fail/Cargo.toml index 5d27ac490f..a38c4183c8 100644 --- a/crates/bevy_ecs_compile_fail_tests/Cargo.toml +++ b/crates/bevy_ecs/compile_fail/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "bevy_ecs_compile_fail_tests" +name = "bevy_ecs_compile_fail" edition = "2021" description = "Compile fail tests for Bevy Engine's entity component system" homepage = "https://bevyengine.org" @@ -9,10 +9,10 @@ publish = false [dependencies] # ui_test dies if we don't specify the version. See oli-obk/ui_test#211 -bevy_ecs = { path = "../bevy_ecs", version = "0.14.0-dev" } +bevy_ecs = { path = "../", version = "0.14.0-dev" } [dev-dependencies] -bevy_compile_test_utils = { path = "../bevy_compile_test_utils" } +compile_fail_utils = { path = "../../../tools/compile_fail_utils" } [[test]] name = "ui" diff --git a/crates/bevy_ecs_compile_fail_tests/README.md b/crates/bevy_ecs/compile_fail/README.md similarity index 68% rename from crates/bevy_ecs_compile_fail_tests/README.md rename to crates/bevy_ecs/compile_fail/README.md index 5fbdbb2ca7..8f949bbb7d 100644 --- a/crates/bevy_ecs_compile_fail_tests/README.md +++ b/crates/bevy_ecs/compile_fail/README.md @@ -2,6 +2,6 @@ This crate is separate from `bevy_ecs` and not part of the Bevy workspace in order to not fail `crater` tests for Bevy. The tests assert on the exact compiler errors and can easily fail for new Rust versions due to updated compiler errors (e.g. changes in spans). -The `CI` workflow executes these tests on the stable rust toolchain (see [tools/ci](../../tools/ci/src/main.rs)). +The `CI` workflow executes these tests on the stable rust toolchain (see [tools/ci](../../../tools/ci/src/main.rs)). -For information on writing tests see [bevy_compile_test_utils/README.md](../bevy_compile_test_utils/README.md). +For information on writing tests see [compile_fail_utils/README.md](../../../tools/compile_fail_utils/README.md). diff --git a/crates/bevy_macros_compile_fail_tests/src/lib.rs b/crates/bevy_ecs/compile_fail/src/lib.rs similarity index 100% rename from crates/bevy_macros_compile_fail_tests/src/lib.rs rename to crates/bevy_ecs/compile_fail/src/lib.rs diff --git a/crates/bevy_ecs/compile_fail/tests/ui.rs b/crates/bevy_ecs/compile_fail/tests/ui.rs new file mode 100644 index 0000000000..ad8933776a --- /dev/null +++ b/crates/bevy_ecs/compile_fail/tests/ui.rs @@ -0,0 +1,3 @@ +fn main() -> compile_fail_utils::ui_test::Result<()> { + compile_fail_utils::test("tests/ui") +} diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/entity_ref_mut_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/entity_ref_mut_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/entity_ref_mut_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/entity_ref_mut_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/entity_ref_mut_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/entity_ref_mut_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/entity_ref_mut_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/entity_ref_mut_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_exact_sized_iterator_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/query_exact_sized_iterator_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_exact_sized_iterator_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/query_exact_sized_iterator_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_exact_sized_iterator_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/query_exact_sized_iterator_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_exact_sized_iterator_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/query_exact_sized_iterator_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_combinations_mut_iterator_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/query_iter_combinations_mut_iterator_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_combinations_mut_iterator_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/query_iter_combinations_mut_iterator_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_combinations_mut_iterator_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/query_iter_combinations_mut_iterator_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_combinations_mut_iterator_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/query_iter_combinations_mut_iterator_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_many_mut_iterator_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/query_iter_many_mut_iterator_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_many_mut_iterator_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/query_iter_many_mut_iterator_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_many_mut_iterator_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/query_iter_many_mut_iterator_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_iter_many_mut_iterator_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/query_iter_many_mut_iterator_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/query_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/query_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/query_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/query_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_to_readonly.rs b/crates/bevy_ecs/compile_fail/tests/ui/query_to_readonly.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_to_readonly.rs rename to crates/bevy_ecs/compile_fail/tests/ui/query_to_readonly.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_to_readonly.stderr b/crates/bevy_ecs/compile_fail/tests/ui/query_to_readonly.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_to_readonly.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/query_to_readonly.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_transmute_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/query_transmute_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_transmute_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/query_transmute_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/query_transmute_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/query_transmute_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/query_transmute_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/query_transmute_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_param_derive_readonly.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_param_derive_readonly.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_param_derive_readonly.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_param_derive_readonly.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_param_derive_readonly.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_param_derive_readonly.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_param_derive_readonly.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_param_derive_readonly.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_get_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_get_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_get_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_get_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_mut_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_mut_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_mut_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_mut_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_mut_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_mut_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_get_many_mut_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_get_many_mut_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_many_mut_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_many_mut_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_many_mut_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_many_mut_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_many_mut_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_many_mut_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_iter_many_mut_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_iter_many_mut_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_get_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_set_get_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_get_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_set_get_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_get_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_set_get_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_get_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_set_get_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_iter_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_query_set_iter_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_iter_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_set_iter_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_iter_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_query_set_iter_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_query_set_iter_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_query_set_iter_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_get_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_state_get_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_get_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_state_get_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_get_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_state_get_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_get_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_state_get_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_lifetime_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_lifetime_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_lifetime_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_lifetime_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_lifetime_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_lifetime_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_lifetime_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_lifetime_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_mut_overlap_safety.rs b/crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_mut_overlap_safety.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_mut_overlap_safety.rs rename to crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_mut_overlap_safety.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_mut_overlap_safety.stderr b/crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_mut_overlap_safety.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/system_state_iter_mut_overlap_safety.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/system_state_iter_mut_overlap_safety.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/world_query_derive.rs b/crates/bevy_ecs/compile_fail/tests/ui/world_query_derive.rs similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/world_query_derive.rs rename to crates/bevy_ecs/compile_fail/tests/ui/world_query_derive.rs diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui/world_query_derive.stderr b/crates/bevy_ecs/compile_fail/tests/ui/world_query_derive.stderr similarity index 100% rename from crates/bevy_ecs_compile_fail_tests/tests/ui/world_query_derive.stderr rename to crates/bevy_ecs/compile_fail/tests/ui/world_query_derive.stderr diff --git a/crates/bevy_ecs_compile_fail_tests/tests/ui.rs b/crates/bevy_ecs_compile_fail_tests/tests/ui.rs deleted file mode 100644 index 4fb6e0340b..0000000000 --- a/crates/bevy_ecs_compile_fail_tests/tests/ui.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() -> bevy_compile_test_utils::ui_test::Result<()> { - bevy_compile_test_utils::test("tests/ui") -} diff --git a/crates/bevy_macros_compile_fail_tests/tests/derive.rs b/crates/bevy_macros_compile_fail_tests/tests/derive.rs deleted file mode 100644 index 6e0ceaf7a5..0000000000 --- a/crates/bevy_macros_compile_fail_tests/tests/derive.rs +++ /dev/null @@ -1,4 +0,0 @@ -fn main() -> bevy_compile_test_utils::ui_test::Result<()> { - bevy_compile_test_utils::test_multiple(["tests/deref_derive", "tests/deref_mut_derive"]) -} - diff --git a/crates/bevy_reflect/compile_fail/.gitignore b/crates/bevy_reflect/compile_fail/.gitignore new file mode 100644 index 0000000000..ea8c4bf7f3 --- /dev/null +++ b/crates/bevy_reflect/compile_fail/.gitignore @@ -0,0 +1 @@ +/target diff --git a/crates/bevy_reflect_compile_fail_tests/Cargo.toml b/crates/bevy_reflect/compile_fail/Cargo.toml similarity index 69% rename from crates/bevy_reflect_compile_fail_tests/Cargo.toml rename to crates/bevy_reflect/compile_fail/Cargo.toml index 4acf5dd05a..5a32cbcc41 100644 --- a/crates/bevy_reflect_compile_fail_tests/Cargo.toml +++ b/crates/bevy_reflect/compile_fail/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "bevy_reflect_compile_fail_tests" +name = "bevy_reflect_compile_fail" edition = "2021" description = "Compile fail tests for Bevy Engine's reflection system" homepage = "https://bevyengine.org" @@ -9,10 +9,10 @@ publish = false [dependencies] # ui_test dies if we don't specify the version. See oli-obk/ui_test#211 -bevy_reflect = { path = "../bevy_reflect", version = "0.14.0-dev" } +bevy_reflect = { path = "../", version = "0.14.0-dev" } [dev-dependencies] -bevy_compile_test_utils = { path = "../bevy_compile_test_utils" } +compile_fail_utils = { path = "../../../tools/compile_fail_utils" } [[test]] name = "derive" diff --git a/crates/bevy_reflect_compile_fail_tests/README.md b/crates/bevy_reflect/compile_fail/README.md similarity index 69% rename from crates/bevy_reflect_compile_fail_tests/README.md rename to crates/bevy_reflect/compile_fail/README.md index 79f0ee24ec..1d7da41daa 100644 --- a/crates/bevy_reflect_compile_fail_tests/README.md +++ b/crates/bevy_reflect/compile_fail/README.md @@ -4,6 +4,6 @@ This crate is separate from `bevy_reflect` and not part of the Bevy workspace in Bevy. The tests assert on the exact compiler errors and can easily fail for new Rust versions due to updated compiler errors (e.g. changes in spans). -The `CI` workflow executes these tests on the stable rust toolchain (see [tools/ci](../../tools/ci/src/main.rs)). +The `CI` workflow executes these tests on the stable rust toolchain (see [tools/ci](../../../tools/ci/src/main.rs)). -For information on writing tests see [bevy_compile_test_utils/README.md](../bevy_compile_test_utils/README.md). +For information on writing tests see [compile_fail_utils/README.md](../../../tools/compile_fail_utils/README.md). diff --git a/crates/bevy_reflect_compile_fail_tests/src/lib.rs b/crates/bevy_reflect/compile_fail/src/lib.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/src/lib.rs rename to crates/bevy_reflect/compile_fail/src/lib.rs diff --git a/crates/bevy_reflect/compile_fail/tests/derive.rs b/crates/bevy_reflect/compile_fail/tests/derive.rs new file mode 100644 index 0000000000..1b1922254c --- /dev/null +++ b/crates/bevy_reflect/compile_fail/tests/derive.rs @@ -0,0 +1,3 @@ +fn main() -> compile_fail_utils::ui_test::Result<()> { + compile_fail_utils::test("tests/reflect_derive") +} diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/bounds_pass.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/bounds_pass.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/bounds_pass.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/bounds_pass.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/custom_where_fail.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/custom_where_fail.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/custom_where_fail.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/custom_where_fail.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/custom_where_fail.stderr b/crates/bevy_reflect/compile_fail/tests/reflect_derive/custom_where_fail.stderr similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/custom_where_fail.stderr rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/custom_where_fail.stderr diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/custom_where_pass.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/custom_where_pass.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/custom_where_pass.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/custom_where_pass.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/from_reflect_fail.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/from_reflect_fail.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/from_reflect_fail.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/from_reflect_fail.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/from_reflect_fail.stderr b/crates/bevy_reflect/compile_fail/tests/reflect_derive/from_reflect_fail.stderr similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/from_reflect_fail.stderr rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/from_reflect_fail.stderr diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/from_reflect_pass.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/from_reflect_pass.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/from_reflect_pass.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/from_reflect_pass.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/generics_fail.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/generics_fail.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/generics_fail.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/generics_fail.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/generics_fail.stderr b/crates/bevy_reflect/compile_fail/tests/reflect_derive/generics_fail.stderr similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/generics_fail.stderr rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/generics_fail.stderr diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/generics_structs_pass.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/generics_structs_pass.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/generics_structs_pass.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/generics_structs_pass.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/lifetimes_pass.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/lifetimes_pass.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/lifetimes_pass.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/lifetimes_pass.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/lifetimes_pass.stderr b/crates/bevy_reflect/compile_fail/tests/reflect_derive/lifetimes_pass.stderr similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/lifetimes_pass.stderr rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/lifetimes_pass.stderr diff --git a/crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/nested_pass.rs b/crates/bevy_reflect/compile_fail/tests/reflect_derive/nested_pass.rs similarity index 100% rename from crates/bevy_reflect_compile_fail_tests/tests/reflect_derive/nested_pass.rs rename to crates/bevy_reflect/compile_fail/tests/reflect_derive/nested_pass.rs diff --git a/crates/bevy_reflect_compile_fail_tests/tests/derive.rs b/crates/bevy_reflect_compile_fail_tests/tests/derive.rs deleted file mode 100644 index 14ea5803ec..0000000000 --- a/crates/bevy_reflect_compile_fail_tests/tests/derive.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() -> bevy_compile_test_utils::ui_test::Result<()> { - bevy_compile_test_utils::test("tests/reflect_derive") -} diff --git a/tools/ci/src/commands/compile_fail.rs b/tools/ci/src/commands/compile_fail.rs index 3bb4d18a8b..65a91e6d2f 100644 --- a/tools/ci/src/commands/compile_fail.rs +++ b/tools/ci/src/commands/compile_fail.rs @@ -16,15 +16,26 @@ impl Prepare for CompileFailCommand { let mut commands = vec![]; + // Macro Compile Fail Tests + // Run tests (they do not get executed with the workspace tests) + // - See crates/bevy_macros_compile_fail_tests/README.md + commands.push( + PreparedCommand::new::( + cmd!(sh, "cargo test --target-dir ../../../target {no_fail_fast}"), + "Compiler errors of the macros compile fail tests seem to be different than expected! Check locally and compare rust versions.", + ) + .with_subdir("crates/bevy_derive/compile_fail"), + ); + // ECS Compile Fail Tests // Run UI tests (they do not get executed with the workspace tests) // - See crates/bevy_ecs_compile_fail_tests/README.md commands.push( PreparedCommand::new::( - cmd!(sh, "cargo test --target-dir ../../target {no_fail_fast}"), + cmd!(sh, "cargo test --target-dir ../../../target {no_fail_fast}"), "Compiler errors of the ECS compile fail tests seem to be different than expected! Check locally and compare rust versions.", ) - .with_subdir("crates/bevy_ecs_compile_fail_tests"), + .with_subdir("crates/bevy_ecs/compile_fail"), ); // Reflect Compile Fail Tests @@ -32,21 +43,10 @@ impl Prepare for CompileFailCommand { // - See crates/bevy_reflect_compile_fail_tests/README.md commands.push( PreparedCommand::new::( - cmd!(sh, "cargo test --target-dir ../../target {no_fail_fast}"), + cmd!(sh, "cargo test --target-dir ../../../target {no_fail_fast}"), "Compiler errors of the Reflect compile fail tests seem to be different than expected! Check locally and compare rust versions.", ) - .with_subdir("crates/bevy_reflect_compile_fail_tests"), - ); - - // Macro Compile Fail Tests - // Run tests (they do not get executed with the workspace tests) - // - See crates/bevy_macros_compile_fail_tests/README.md - commands.push( - PreparedCommand::new::( - cmd!(sh, "cargo test --target-dir ../../target {no_fail_fast}"), - "Compiler errors of the macros compile fail tests seem to be different than expected! Check locally and compare rust versions.", - ) - .with_subdir("crates/bevy_macros_compile_fail_tests"), + .with_subdir("crates/bevy_reflect/compile_fail"), ); commands diff --git a/crates/bevy_compile_test_utils/Cargo.toml b/tools/compile_fail_utils/Cargo.toml similarity index 89% rename from crates/bevy_compile_test_utils/Cargo.toml rename to tools/compile_fail_utils/Cargo.toml index a408625760..37c51619f4 100644 --- a/crates/bevy_compile_test_utils/Cargo.toml +++ b/tools/compile_fail_utils/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "bevy_compile_test_utils" +name = "compile_fail_utils" edition = "2021" description = "Utils for compile tests used in the engine" homepage = "https://bevyengine.org" diff --git a/crates/bevy_compile_test_utils/README.md b/tools/compile_fail_utils/README.md similarity index 90% rename from crates/bevy_compile_test_utils/README.md rename to tools/compile_fail_utils/README.md index a48c43012a..5d811bf317 100644 --- a/crates/bevy_compile_test_utils/README.md +++ b/tools/compile_fail_utils/README.md @@ -29,12 +29,13 @@ An example of an error annotation would be `//~v ERROR: missing trait`. This err This will be a rather involved process. You'll have to: -- Create an empty library crate in the [`crates`](..) directory. -- Add this crate as a `dev-dependency`. +- Create a subdirectory named `compile_fail` within the crate you are testing. (E.g. `bevy_ecs/compile_fail` for `bevy_ecs`.) +- Add `compile_fail_utils` as a `dev-dependency`. - Create a folder called `tests` within the new crate. - Add a test runner file to this folder. The file should contain a main function calling one of the test functions defined in this crate. - Add a `[[test]]` table to the `Cargo.toml`. This table will need to contain `harness = false` and `name = `. -- Modify the [`Ci`](../../tools/ci/) tool to run `cargo test` on this crate. +- Add the path of the new crate under `[workspace].exclude` in the root [`Cargo.toml`](../../Cargo.toml). +- Modify the [`CI`](../../tools/ci/) tool to run `cargo test` on this crate. - And finally, write your compile tests. If you have any questions, don't be scared to ask for help. diff --git a/crates/bevy_compile_test_utils/src/lib.rs b/tools/compile_fail_utils/src/lib.rs similarity index 100% rename from crates/bevy_compile_test_utils/src/lib.rs rename to tools/compile_fail_utils/src/lib.rs diff --git a/crates/bevy_compile_test_utils/tests/example.rs b/tools/compile_fail_utils/tests/example.rs similarity index 100% rename from crates/bevy_compile_test_utils/tests/example.rs rename to tools/compile_fail_utils/tests/example.rs diff --git a/crates/bevy_compile_test_utils/tests/example_tests/basic_test.rs b/tools/compile_fail_utils/tests/example_tests/basic_test.rs similarity index 100% rename from crates/bevy_compile_test_utils/tests/example_tests/basic_test.rs rename to tools/compile_fail_utils/tests/example_tests/basic_test.rs diff --git a/crates/bevy_compile_test_utils/tests/example_tests/basic_test.stderr b/tools/compile_fail_utils/tests/example_tests/basic_test.stderr similarity index 100% rename from crates/bevy_compile_test_utils/tests/example_tests/basic_test.stderr rename to tools/compile_fail_utils/tests/example_tests/basic_test.stderr diff --git a/crates/bevy_compile_test_utils/tests/example_tests/import.rs b/tools/compile_fail_utils/tests/example_tests/import.rs similarity index 100% rename from crates/bevy_compile_test_utils/tests/example_tests/import.rs rename to tools/compile_fail_utils/tests/example_tests/import.rs diff --git a/crates/bevy_compile_test_utils/tests/example_tests/import.stderr b/tools/compile_fail_utils/tests/example_tests/import.stderr similarity index 100% rename from crates/bevy_compile_test_utils/tests/example_tests/import.stderr rename to tools/compile_fail_utils/tests/example_tests/import.stderr diff --git a/crates/bevy_compile_test_utils/tests/example_tests/pass_test.rs b/tools/compile_fail_utils/tests/example_tests/pass_test.rs similarity index 100% rename from crates/bevy_compile_test_utils/tests/example_tests/pass_test.rs rename to tools/compile_fail_utils/tests/example_tests/pass_test.rs diff --git a/crates/bevy_compile_test_utils/tests/example_tests/pass_test.stderr b/tools/compile_fail_utils/tests/example_tests/pass_test.stderr similarity index 100% rename from crates/bevy_compile_test_utils/tests/example_tests/pass_test.stderr rename to tools/compile_fail_utils/tests/example_tests/pass_test.stderr