From 87867ef8b30c84d4fde0b4dad54aa34698e12905 Mon Sep 17 00:00:00 2001 From: Robin Freyler Date: Tue, 21 Sep 2021 19:14:41 +0200 Subject: [PATCH] Move ink_lang_macro UI tests into macro-specific folders (#934) * move ink_lang_macro UI tests into macro-specific folders * fix GitLab CI formatting pass * migrate back to a single trybuild test case This is because our CI currently fails if we have multiple test cases. --- .gitlab-ci.yml | 2 +- crates/lang/macro/tests/compile_tests.rs | 84 +++++++++---------- .../fail/C-00-constructor-self-ref.rs | 0 .../fail/C-00-constructor-self-ref.stderr | 0 .../fail/C-01-constructor-self-mut.rs | 0 .../fail/C-01-constructor-self-mut.stderr | 0 .../fail/C-02-constructor-self-val.rs | 0 .../fail/C-02-constructor-self-val.stderr | 0 .../fail/C-03-constructor-missing-return.rs | 0 .../C-03-constructor-missing-return.stderr | 0 .../fail/C-04-missing-constructor.rs | 0 .../fail/C-04-missing-constructor.stderr | 0 .../fail/C-10-async-constructor.rs | 0 .../fail/C-10-async-constructor.stderr | 0 .../fail/C-11-unsafe-constructor.rs | 0 .../fail/C-11-unsafe-constructor.stderr | 0 .../fail/C-12-const-constructor.rs | 0 .../fail/C-12-const-constructor.stderr | 0 .../fail/C-13-abi-constructor.rs | 0 .../fail/C-13-abi-constructor.stderr | 0 .../fail/C-14-payable-constructor.rs | 0 .../fail/C-14-payable-constructor.stderr | 0 .../fail/C-15-payable-trait-constructor.rs | 0 .../C-15-payable-trait-constructor.stderr | 0 .../C-16-function-arg-struct-destructuring.rs | 0 ...6-function-arg-struct-destructuring.stderr | 0 .../fail/H-01-invalid-dyn-alloc.rs | 0 .../fail/H-01-invalid-dyn-alloc.stderr | 0 .../fail/H-02-invalid-as-dependency.rs | 0 .../fail/H-02-invalid-as-dependency.stderr | 0 .../fail/H-03-use-forbidden-idents.rs | 0 .../fail/H-03-use-forbidden-idents.stderr | 0 .../fail/M-01-missing-message.rs | 0 .../fail/M-01-missing-message.stderr | 0 .../fail/M-02-message-missing-self-arg.rs | 0 .../fail/M-02-message-missing-self-arg.stderr | 0 .../fail/M-03-message-returns-self.rs | 0 .../fail/M-03-message-returns-self.stderr | 0 .../fail/M-04-message-returns-non-codec.rs | 0 .../M-04-message-returns-non-codec.stderr | 0 .../fail/M-05-message-invalid-selector.rs | 0 .../fail/M-05-message-invalid-selector.stderr | 0 .../M-06-message-invalid-selector-type.rs | 0 .../M-06-message-invalid-selector-type.stderr | 0 .../fail/M-10-method-unknown-ink-marker.rs | 0 .../M-10-method-unknown-ink-marker.stderr | 0 .../fail/N-01-namespace-invalid-identifier.rs | 0 .../N-01-namespace-invalid-identifier.stderr | 0 .../fail/N-02-namespace-invalid-type.rs | 0 .../fail/N-02-namespace-invalid-type.stderr | 0 .../fail/N-03-namespace-missing-argument.rs | 0 .../N-03-namespace-missing-argument.stderr | 0 .../fail/S-01-missing-storage-struct.rs | 0 .../fail/S-01-missing-storage-struct.stderr | 0 .../fail/S-02-multiple-storage-structs.rs | 0 .../fail/S-02-multiple-storage-structs.stderr | 0 .../fail/S-03-struct-unknown-ink-marker.rs | 0 .../S-03-struct-unknown-ink-marker.stderr | 0 .../fail/S-04-non-storage-ink-impls.rs | 0 .../fail/S-04-non-storage-ink-impls.stderr | 0 .../fail/S-05-storage-as-event.rs | 0 .../fail/S-05-storage-as-event.stderr | 0 .../fail/S-06-event-as-storage.rs | 0 .../fail/S-06-event-as-storage.stderr | 0 .../{ => contract}/pass/01-noop-contract.rs | 0 .../pass/02-flipper-contract.rs | 0 .../pass/03-incrementer-contract.rs | 0 .../{ => contract}/pass/04-erc20-contract.rs | 0 .../{ => contract}/pass/05-erc721-contract.rs | 0 .../{ => contract}/pass/06-non-ink-items.rs | 0 .../pass/07-flipper-as-dependency.rs | 0 .../pass/08-flipper-as-dependency-trait.rs | 0 .../ui/{ => contract}/pass/09-static-env.rs | 0 .../pass/10-derive-for-storage.rs | 0 .../pass/11-alias-storage-struct-impl.rs | 0 75 files changed, 43 insertions(+), 43 deletions(-) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-00-constructor-self-ref.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-00-constructor-self-ref.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-01-constructor-self-mut.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-01-constructor-self-mut.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-02-constructor-self-val.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-02-constructor-self-val.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-03-constructor-missing-return.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-03-constructor-missing-return.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-04-missing-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-04-missing-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-10-async-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-10-async-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-11-unsafe-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-11-unsafe-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-12-const-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-12-const-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-13-abi-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-13-abi-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-14-payable-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-14-payable-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-15-payable-trait-constructor.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-15-payable-trait-constructor.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-16-function-arg-struct-destructuring.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/C-16-function-arg-struct-destructuring.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/H-01-invalid-dyn-alloc.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/H-01-invalid-dyn-alloc.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/H-02-invalid-as-dependency.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/H-02-invalid-as-dependency.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/H-03-use-forbidden-idents.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/H-03-use-forbidden-idents.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-01-missing-message.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-01-missing-message.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-02-message-missing-self-arg.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-02-message-missing-self-arg.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-03-message-returns-self.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-03-message-returns-self.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-04-message-returns-non-codec.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-04-message-returns-non-codec.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-05-message-invalid-selector.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-05-message-invalid-selector.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-06-message-invalid-selector-type.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-06-message-invalid-selector-type.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-10-method-unknown-ink-marker.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/M-10-method-unknown-ink-marker.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/N-01-namespace-invalid-identifier.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/N-01-namespace-invalid-identifier.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/N-02-namespace-invalid-type.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/N-02-namespace-invalid-type.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/N-03-namespace-missing-argument.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/N-03-namespace-missing-argument.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-01-missing-storage-struct.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-01-missing-storage-struct.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-02-multiple-storage-structs.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-02-multiple-storage-structs.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-03-struct-unknown-ink-marker.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-03-struct-unknown-ink-marker.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-04-non-storage-ink-impls.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-04-non-storage-ink-impls.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-05-storage-as-event.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-05-storage-as-event.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-06-event-as-storage.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/fail/S-06-event-as-storage.stderr (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/01-noop-contract.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/02-flipper-contract.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/03-incrementer-contract.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/04-erc20-contract.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/05-erc721-contract.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/06-non-ink-items.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/07-flipper-as-dependency.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/08-flipper-as-dependency-trait.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/09-static-env.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/10-derive-for-storage.rs (100%) rename crates/lang/macro/tests/ui/{ => contract}/pass/11-alias-storage-struct-impl.rs (100%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c84a50e259d..c97f5b7e601 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -287,7 +287,7 @@ fmt: script: - cargo fmt --verbose --all -- --check # For the UI tests we need to disable the license check - - cargo fmt --verbose --all -- --check --config=license_template_path="" crates/lang/macro/tests/ui/{pass,fail}/*.rs + - cargo fmt --verbose --all -- --check --config=license_template_path="" crates/lang/macro/tests/ui/contract/{pass,fail}/*.rs #### stage: examples diff --git a/crates/lang/macro/tests/compile_tests.rs b/crates/lang/macro/tests/compile_tests.rs index fc0ea55aeb8..d3cb8b10d2a 100644 --- a/crates/lang/macro/tests/compile_tests.rs +++ b/crates/lang/macro/tests/compile_tests.rs @@ -16,53 +16,53 @@ fn compile_tests() { let t = trybuild::TestCases::new(); - t.pass("tests/ui/pass/01-noop-contract.rs"); - t.pass("tests/ui/pass/02-flipper-contract.rs"); - t.pass("tests/ui/pass/03-incrementer-contract.rs"); - t.pass("tests/ui/pass/04-erc20-contract.rs"); - t.pass("tests/ui/pass/05-erc721-contract.rs"); - t.pass("tests/ui/pass/06-non-ink-items.rs"); - t.pass("tests/ui/pass/07-flipper-as-dependency.rs"); - t.pass("tests/ui/pass/08-flipper-as-dependency-trait.rs"); - t.pass("tests/ui/pass/09-static-env.rs"); - t.pass("tests/ui/pass/10-derive-for-storage.rs"); - t.pass("tests/ui/pass/11-alias-storage-struct-impl.rs"); + t.pass("tests/ui/contract/pass/01-noop-contract.rs"); + t.pass("tests/ui/contract/pass/02-flipper-contract.rs"); + t.pass("tests/ui/contract/pass/03-incrementer-contract.rs"); + t.pass("tests/ui/contract/pass/04-erc20-contract.rs"); + t.pass("tests/ui/contract/pass/05-erc721-contract.rs"); + t.pass("tests/ui/contract/pass/06-non-ink-items.rs"); + t.pass("tests/ui/contract/pass/07-flipper-as-dependency.rs"); + t.pass("tests/ui/contract/pass/08-flipper-as-dependency-trait.rs"); + t.pass("tests/ui/contract/pass/09-static-env.rs"); + t.pass("tests/ui/contract/pass/10-derive-for-storage.rs"); + t.pass("tests/ui/contract/pass/11-alias-storage-struct-impl.rs"); - t.compile_fail("tests/ui/fail/C-00-constructor-self-ref.rs"); - t.compile_fail("tests/ui/fail/C-01-constructor-self-mut.rs"); - t.compile_fail("tests/ui/fail/C-02-constructor-self-val.rs"); - t.compile_fail("tests/ui/fail/C-03-constructor-missing-return.rs"); - t.compile_fail("tests/ui/fail/C-04-missing-constructor.rs"); - t.compile_fail("tests/ui/fail/C-10-async-constructor.rs"); - t.compile_fail("tests/ui/fail/C-11-unsafe-constructor.rs"); - t.compile_fail("tests/ui/fail/C-12-const-constructor.rs"); - t.compile_fail("tests/ui/fail/C-13-abi-constructor.rs"); - t.compile_fail("tests/ui/fail/C-14-payable-constructor.rs"); - t.compile_fail("tests/ui/fail/C-15-payable-trait-constructor.rs"); - t.compile_fail("tests/ui/fail/C-16-function-arg-struct-destructuring.rs"); + t.compile_fail("tests/ui/contract/fail/C-00-constructor-self-ref.rs"); + t.compile_fail("tests/ui/contract/fail/C-01-constructor-self-mut.rs"); + t.compile_fail("tests/ui/contract/fail/C-02-constructor-self-val.rs"); + t.compile_fail("tests/ui/contract/fail/C-03-constructor-missing-return.rs"); + t.compile_fail("tests/ui/contract/fail/C-04-missing-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-10-async-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-11-unsafe-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-12-const-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-13-abi-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-14-payable-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-15-payable-trait-constructor.rs"); + t.compile_fail("tests/ui/contract/fail/C-16-function-arg-struct-destructuring.rs"); - t.compile_fail("tests/ui/fail/H-01-invalid-dyn-alloc.rs"); - t.compile_fail("tests/ui/fail/H-02-invalid-as-dependency.rs"); - t.compile_fail("tests/ui/fail/H-03-use-forbidden-idents.rs"); + t.compile_fail("tests/ui/contract/fail/H-01-invalid-dyn-alloc.rs"); + t.compile_fail("tests/ui/contract/fail/H-02-invalid-as-dependency.rs"); + t.compile_fail("tests/ui/contract/fail/H-03-use-forbidden-idents.rs"); - t.compile_fail("tests/ui/fail/M-01-missing-message.rs"); - t.compile_fail("tests/ui/fail/M-02-message-missing-self-arg.rs"); - t.compile_fail("tests/ui/fail/M-03-message-returns-self.rs"); - t.compile_fail("tests/ui/fail/M-04-message-returns-non-codec.rs"); - t.compile_fail("tests/ui/fail/M-05-message-invalid-selector.rs"); - t.compile_fail("tests/ui/fail/M-06-message-invalid-selector-type.rs"); - t.compile_fail("tests/ui/fail/M-10-method-unknown-ink-marker.rs"); + t.compile_fail("tests/ui/contract/fail/M-01-missing-message.rs"); + t.compile_fail("tests/ui/contract/fail/M-02-message-missing-self-arg.rs"); + t.compile_fail("tests/ui/contract/fail/M-03-message-returns-self.rs"); + t.compile_fail("tests/ui/contract/fail/M-04-message-returns-non-codec.rs"); + t.compile_fail("tests/ui/contract/fail/M-05-message-invalid-selector.rs"); + t.compile_fail("tests/ui/contract/fail/M-06-message-invalid-selector-type.rs"); + t.compile_fail("tests/ui/contract/fail/M-10-method-unknown-ink-marker.rs"); - t.compile_fail("tests/ui/fail/S-01-missing-storage-struct.rs"); - t.compile_fail("tests/ui/fail/S-02-multiple-storage-structs.rs"); - t.compile_fail("tests/ui/fail/S-03-struct-unknown-ink-marker.rs"); - t.compile_fail("tests/ui/fail/S-04-non-storage-ink-impls.rs"); - t.compile_fail("tests/ui/fail/S-05-storage-as-event.rs"); - t.compile_fail("tests/ui/fail/S-06-event-as-storage.rs"); + t.compile_fail("tests/ui/contract/fail/S-01-missing-storage-struct.rs"); + t.compile_fail("tests/ui/contract/fail/S-02-multiple-storage-structs.rs"); + t.compile_fail("tests/ui/contract/fail/S-03-struct-unknown-ink-marker.rs"); + t.compile_fail("tests/ui/contract/fail/S-04-non-storage-ink-impls.rs"); + t.compile_fail("tests/ui/contract/fail/S-05-storage-as-event.rs"); + t.compile_fail("tests/ui/contract/fail/S-06-event-as-storage.rs"); - t.compile_fail("tests/ui/fail/N-01-namespace-invalid-identifier.rs"); - t.compile_fail("tests/ui/fail/N-02-namespace-invalid-type.rs"); - t.compile_fail("tests/ui/fail/N-03-namespace-missing-argument.rs"); + t.compile_fail("tests/ui/contract/fail/N-01-namespace-invalid-identifier.rs"); + t.compile_fail("tests/ui/contract/fail/N-02-namespace-invalid-type.rs"); + t.compile_fail("tests/ui/contract/fail/N-03-namespace-missing-argument.rs"); t.pass("tests/ui/chain_extension/E-01-simple.rs"); } diff --git a/crates/lang/macro/tests/ui/fail/C-00-constructor-self-ref.rs b/crates/lang/macro/tests/ui/contract/fail/C-00-constructor-self-ref.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-00-constructor-self-ref.rs rename to crates/lang/macro/tests/ui/contract/fail/C-00-constructor-self-ref.rs diff --git a/crates/lang/macro/tests/ui/fail/C-00-constructor-self-ref.stderr b/crates/lang/macro/tests/ui/contract/fail/C-00-constructor-self-ref.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-00-constructor-self-ref.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-00-constructor-self-ref.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-01-constructor-self-mut.rs b/crates/lang/macro/tests/ui/contract/fail/C-01-constructor-self-mut.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-01-constructor-self-mut.rs rename to crates/lang/macro/tests/ui/contract/fail/C-01-constructor-self-mut.rs diff --git a/crates/lang/macro/tests/ui/fail/C-01-constructor-self-mut.stderr b/crates/lang/macro/tests/ui/contract/fail/C-01-constructor-self-mut.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-01-constructor-self-mut.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-01-constructor-self-mut.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-02-constructor-self-val.rs b/crates/lang/macro/tests/ui/contract/fail/C-02-constructor-self-val.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-02-constructor-self-val.rs rename to crates/lang/macro/tests/ui/contract/fail/C-02-constructor-self-val.rs diff --git a/crates/lang/macro/tests/ui/fail/C-02-constructor-self-val.stderr b/crates/lang/macro/tests/ui/contract/fail/C-02-constructor-self-val.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-02-constructor-self-val.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-02-constructor-self-val.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-03-constructor-missing-return.rs b/crates/lang/macro/tests/ui/contract/fail/C-03-constructor-missing-return.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-03-constructor-missing-return.rs rename to crates/lang/macro/tests/ui/contract/fail/C-03-constructor-missing-return.rs diff --git a/crates/lang/macro/tests/ui/fail/C-03-constructor-missing-return.stderr b/crates/lang/macro/tests/ui/contract/fail/C-03-constructor-missing-return.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-03-constructor-missing-return.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-03-constructor-missing-return.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-04-missing-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-04-missing-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-04-missing-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-04-missing-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-04-missing-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-04-missing-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-04-missing-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-04-missing-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-10-async-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-10-async-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-10-async-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-10-async-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-10-async-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-10-async-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-10-async-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-10-async-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-11-unsafe-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-11-unsafe-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-11-unsafe-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-11-unsafe-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-11-unsafe-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-11-unsafe-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-11-unsafe-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-11-unsafe-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-12-const-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-12-const-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-12-const-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-12-const-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-12-const-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-12-const-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-12-const-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-12-const-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-13-abi-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-13-abi-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-13-abi-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-13-abi-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-13-abi-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-13-abi-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-13-abi-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-13-abi-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-14-payable-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-14-payable-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-14-payable-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-14-payable-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-14-payable-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-14-payable-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-14-payable-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-14-payable-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-15-payable-trait-constructor.rs b/crates/lang/macro/tests/ui/contract/fail/C-15-payable-trait-constructor.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-15-payable-trait-constructor.rs rename to crates/lang/macro/tests/ui/contract/fail/C-15-payable-trait-constructor.rs diff --git a/crates/lang/macro/tests/ui/fail/C-15-payable-trait-constructor.stderr b/crates/lang/macro/tests/ui/contract/fail/C-15-payable-trait-constructor.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-15-payable-trait-constructor.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-15-payable-trait-constructor.stderr diff --git a/crates/lang/macro/tests/ui/fail/C-16-function-arg-struct-destructuring.rs b/crates/lang/macro/tests/ui/contract/fail/C-16-function-arg-struct-destructuring.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-16-function-arg-struct-destructuring.rs rename to crates/lang/macro/tests/ui/contract/fail/C-16-function-arg-struct-destructuring.rs diff --git a/crates/lang/macro/tests/ui/fail/C-16-function-arg-struct-destructuring.stderr b/crates/lang/macro/tests/ui/contract/fail/C-16-function-arg-struct-destructuring.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/C-16-function-arg-struct-destructuring.stderr rename to crates/lang/macro/tests/ui/contract/fail/C-16-function-arg-struct-destructuring.stderr diff --git a/crates/lang/macro/tests/ui/fail/H-01-invalid-dyn-alloc.rs b/crates/lang/macro/tests/ui/contract/fail/H-01-invalid-dyn-alloc.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/H-01-invalid-dyn-alloc.rs rename to crates/lang/macro/tests/ui/contract/fail/H-01-invalid-dyn-alloc.rs diff --git a/crates/lang/macro/tests/ui/fail/H-01-invalid-dyn-alloc.stderr b/crates/lang/macro/tests/ui/contract/fail/H-01-invalid-dyn-alloc.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/H-01-invalid-dyn-alloc.stderr rename to crates/lang/macro/tests/ui/contract/fail/H-01-invalid-dyn-alloc.stderr diff --git a/crates/lang/macro/tests/ui/fail/H-02-invalid-as-dependency.rs b/crates/lang/macro/tests/ui/contract/fail/H-02-invalid-as-dependency.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/H-02-invalid-as-dependency.rs rename to crates/lang/macro/tests/ui/contract/fail/H-02-invalid-as-dependency.rs diff --git a/crates/lang/macro/tests/ui/fail/H-02-invalid-as-dependency.stderr b/crates/lang/macro/tests/ui/contract/fail/H-02-invalid-as-dependency.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/H-02-invalid-as-dependency.stderr rename to crates/lang/macro/tests/ui/contract/fail/H-02-invalid-as-dependency.stderr diff --git a/crates/lang/macro/tests/ui/fail/H-03-use-forbidden-idents.rs b/crates/lang/macro/tests/ui/contract/fail/H-03-use-forbidden-idents.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/H-03-use-forbidden-idents.rs rename to crates/lang/macro/tests/ui/contract/fail/H-03-use-forbidden-idents.rs diff --git a/crates/lang/macro/tests/ui/fail/H-03-use-forbidden-idents.stderr b/crates/lang/macro/tests/ui/contract/fail/H-03-use-forbidden-idents.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/H-03-use-forbidden-idents.stderr rename to crates/lang/macro/tests/ui/contract/fail/H-03-use-forbidden-idents.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-01-missing-message.rs b/crates/lang/macro/tests/ui/contract/fail/M-01-missing-message.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-01-missing-message.rs rename to crates/lang/macro/tests/ui/contract/fail/M-01-missing-message.rs diff --git a/crates/lang/macro/tests/ui/fail/M-01-missing-message.stderr b/crates/lang/macro/tests/ui/contract/fail/M-01-missing-message.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-01-missing-message.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-01-missing-message.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-02-message-missing-self-arg.rs b/crates/lang/macro/tests/ui/contract/fail/M-02-message-missing-self-arg.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-02-message-missing-self-arg.rs rename to crates/lang/macro/tests/ui/contract/fail/M-02-message-missing-self-arg.rs diff --git a/crates/lang/macro/tests/ui/fail/M-02-message-missing-self-arg.stderr b/crates/lang/macro/tests/ui/contract/fail/M-02-message-missing-self-arg.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-02-message-missing-self-arg.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-02-message-missing-self-arg.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-03-message-returns-self.rs b/crates/lang/macro/tests/ui/contract/fail/M-03-message-returns-self.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-03-message-returns-self.rs rename to crates/lang/macro/tests/ui/contract/fail/M-03-message-returns-self.rs diff --git a/crates/lang/macro/tests/ui/fail/M-03-message-returns-self.stderr b/crates/lang/macro/tests/ui/contract/fail/M-03-message-returns-self.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-03-message-returns-self.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-03-message-returns-self.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-04-message-returns-non-codec.rs b/crates/lang/macro/tests/ui/contract/fail/M-04-message-returns-non-codec.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-04-message-returns-non-codec.rs rename to crates/lang/macro/tests/ui/contract/fail/M-04-message-returns-non-codec.rs diff --git a/crates/lang/macro/tests/ui/fail/M-04-message-returns-non-codec.stderr b/crates/lang/macro/tests/ui/contract/fail/M-04-message-returns-non-codec.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-04-message-returns-non-codec.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-04-message-returns-non-codec.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-05-message-invalid-selector.rs b/crates/lang/macro/tests/ui/contract/fail/M-05-message-invalid-selector.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-05-message-invalid-selector.rs rename to crates/lang/macro/tests/ui/contract/fail/M-05-message-invalid-selector.rs diff --git a/crates/lang/macro/tests/ui/fail/M-05-message-invalid-selector.stderr b/crates/lang/macro/tests/ui/contract/fail/M-05-message-invalid-selector.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-05-message-invalid-selector.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-05-message-invalid-selector.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-06-message-invalid-selector-type.rs b/crates/lang/macro/tests/ui/contract/fail/M-06-message-invalid-selector-type.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-06-message-invalid-selector-type.rs rename to crates/lang/macro/tests/ui/contract/fail/M-06-message-invalid-selector-type.rs diff --git a/crates/lang/macro/tests/ui/fail/M-06-message-invalid-selector-type.stderr b/crates/lang/macro/tests/ui/contract/fail/M-06-message-invalid-selector-type.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-06-message-invalid-selector-type.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-06-message-invalid-selector-type.stderr diff --git a/crates/lang/macro/tests/ui/fail/M-10-method-unknown-ink-marker.rs b/crates/lang/macro/tests/ui/contract/fail/M-10-method-unknown-ink-marker.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-10-method-unknown-ink-marker.rs rename to crates/lang/macro/tests/ui/contract/fail/M-10-method-unknown-ink-marker.rs diff --git a/crates/lang/macro/tests/ui/fail/M-10-method-unknown-ink-marker.stderr b/crates/lang/macro/tests/ui/contract/fail/M-10-method-unknown-ink-marker.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/M-10-method-unknown-ink-marker.stderr rename to crates/lang/macro/tests/ui/contract/fail/M-10-method-unknown-ink-marker.stderr diff --git a/crates/lang/macro/tests/ui/fail/N-01-namespace-invalid-identifier.rs b/crates/lang/macro/tests/ui/contract/fail/N-01-namespace-invalid-identifier.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/N-01-namespace-invalid-identifier.rs rename to crates/lang/macro/tests/ui/contract/fail/N-01-namespace-invalid-identifier.rs diff --git a/crates/lang/macro/tests/ui/fail/N-01-namespace-invalid-identifier.stderr b/crates/lang/macro/tests/ui/contract/fail/N-01-namespace-invalid-identifier.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/N-01-namespace-invalid-identifier.stderr rename to crates/lang/macro/tests/ui/contract/fail/N-01-namespace-invalid-identifier.stderr diff --git a/crates/lang/macro/tests/ui/fail/N-02-namespace-invalid-type.rs b/crates/lang/macro/tests/ui/contract/fail/N-02-namespace-invalid-type.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/N-02-namespace-invalid-type.rs rename to crates/lang/macro/tests/ui/contract/fail/N-02-namespace-invalid-type.rs diff --git a/crates/lang/macro/tests/ui/fail/N-02-namespace-invalid-type.stderr b/crates/lang/macro/tests/ui/contract/fail/N-02-namespace-invalid-type.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/N-02-namespace-invalid-type.stderr rename to crates/lang/macro/tests/ui/contract/fail/N-02-namespace-invalid-type.stderr diff --git a/crates/lang/macro/tests/ui/fail/N-03-namespace-missing-argument.rs b/crates/lang/macro/tests/ui/contract/fail/N-03-namespace-missing-argument.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/N-03-namespace-missing-argument.rs rename to crates/lang/macro/tests/ui/contract/fail/N-03-namespace-missing-argument.rs diff --git a/crates/lang/macro/tests/ui/fail/N-03-namespace-missing-argument.stderr b/crates/lang/macro/tests/ui/contract/fail/N-03-namespace-missing-argument.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/N-03-namespace-missing-argument.stderr rename to crates/lang/macro/tests/ui/contract/fail/N-03-namespace-missing-argument.stderr diff --git a/crates/lang/macro/tests/ui/fail/S-01-missing-storage-struct.rs b/crates/lang/macro/tests/ui/contract/fail/S-01-missing-storage-struct.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-01-missing-storage-struct.rs rename to crates/lang/macro/tests/ui/contract/fail/S-01-missing-storage-struct.rs diff --git a/crates/lang/macro/tests/ui/fail/S-01-missing-storage-struct.stderr b/crates/lang/macro/tests/ui/contract/fail/S-01-missing-storage-struct.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-01-missing-storage-struct.stderr rename to crates/lang/macro/tests/ui/contract/fail/S-01-missing-storage-struct.stderr diff --git a/crates/lang/macro/tests/ui/fail/S-02-multiple-storage-structs.rs b/crates/lang/macro/tests/ui/contract/fail/S-02-multiple-storage-structs.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-02-multiple-storage-structs.rs rename to crates/lang/macro/tests/ui/contract/fail/S-02-multiple-storage-structs.rs diff --git a/crates/lang/macro/tests/ui/fail/S-02-multiple-storage-structs.stderr b/crates/lang/macro/tests/ui/contract/fail/S-02-multiple-storage-structs.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-02-multiple-storage-structs.stderr rename to crates/lang/macro/tests/ui/contract/fail/S-02-multiple-storage-structs.stderr diff --git a/crates/lang/macro/tests/ui/fail/S-03-struct-unknown-ink-marker.rs b/crates/lang/macro/tests/ui/contract/fail/S-03-struct-unknown-ink-marker.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-03-struct-unknown-ink-marker.rs rename to crates/lang/macro/tests/ui/contract/fail/S-03-struct-unknown-ink-marker.rs diff --git a/crates/lang/macro/tests/ui/fail/S-03-struct-unknown-ink-marker.stderr b/crates/lang/macro/tests/ui/contract/fail/S-03-struct-unknown-ink-marker.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-03-struct-unknown-ink-marker.stderr rename to crates/lang/macro/tests/ui/contract/fail/S-03-struct-unknown-ink-marker.stderr diff --git a/crates/lang/macro/tests/ui/fail/S-04-non-storage-ink-impls.rs b/crates/lang/macro/tests/ui/contract/fail/S-04-non-storage-ink-impls.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-04-non-storage-ink-impls.rs rename to crates/lang/macro/tests/ui/contract/fail/S-04-non-storage-ink-impls.rs diff --git a/crates/lang/macro/tests/ui/fail/S-04-non-storage-ink-impls.stderr b/crates/lang/macro/tests/ui/contract/fail/S-04-non-storage-ink-impls.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-04-non-storage-ink-impls.stderr rename to crates/lang/macro/tests/ui/contract/fail/S-04-non-storage-ink-impls.stderr diff --git a/crates/lang/macro/tests/ui/fail/S-05-storage-as-event.rs b/crates/lang/macro/tests/ui/contract/fail/S-05-storage-as-event.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-05-storage-as-event.rs rename to crates/lang/macro/tests/ui/contract/fail/S-05-storage-as-event.rs diff --git a/crates/lang/macro/tests/ui/fail/S-05-storage-as-event.stderr b/crates/lang/macro/tests/ui/contract/fail/S-05-storage-as-event.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-05-storage-as-event.stderr rename to crates/lang/macro/tests/ui/contract/fail/S-05-storage-as-event.stderr diff --git a/crates/lang/macro/tests/ui/fail/S-06-event-as-storage.rs b/crates/lang/macro/tests/ui/contract/fail/S-06-event-as-storage.rs similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-06-event-as-storage.rs rename to crates/lang/macro/tests/ui/contract/fail/S-06-event-as-storage.rs diff --git a/crates/lang/macro/tests/ui/fail/S-06-event-as-storage.stderr b/crates/lang/macro/tests/ui/contract/fail/S-06-event-as-storage.stderr similarity index 100% rename from crates/lang/macro/tests/ui/fail/S-06-event-as-storage.stderr rename to crates/lang/macro/tests/ui/contract/fail/S-06-event-as-storage.stderr diff --git a/crates/lang/macro/tests/ui/pass/01-noop-contract.rs b/crates/lang/macro/tests/ui/contract/pass/01-noop-contract.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/01-noop-contract.rs rename to crates/lang/macro/tests/ui/contract/pass/01-noop-contract.rs diff --git a/crates/lang/macro/tests/ui/pass/02-flipper-contract.rs b/crates/lang/macro/tests/ui/contract/pass/02-flipper-contract.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/02-flipper-contract.rs rename to crates/lang/macro/tests/ui/contract/pass/02-flipper-contract.rs diff --git a/crates/lang/macro/tests/ui/pass/03-incrementer-contract.rs b/crates/lang/macro/tests/ui/contract/pass/03-incrementer-contract.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/03-incrementer-contract.rs rename to crates/lang/macro/tests/ui/contract/pass/03-incrementer-contract.rs diff --git a/crates/lang/macro/tests/ui/pass/04-erc20-contract.rs b/crates/lang/macro/tests/ui/contract/pass/04-erc20-contract.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/04-erc20-contract.rs rename to crates/lang/macro/tests/ui/contract/pass/04-erc20-contract.rs diff --git a/crates/lang/macro/tests/ui/pass/05-erc721-contract.rs b/crates/lang/macro/tests/ui/contract/pass/05-erc721-contract.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/05-erc721-contract.rs rename to crates/lang/macro/tests/ui/contract/pass/05-erc721-contract.rs diff --git a/crates/lang/macro/tests/ui/pass/06-non-ink-items.rs b/crates/lang/macro/tests/ui/contract/pass/06-non-ink-items.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/06-non-ink-items.rs rename to crates/lang/macro/tests/ui/contract/pass/06-non-ink-items.rs diff --git a/crates/lang/macro/tests/ui/pass/07-flipper-as-dependency.rs b/crates/lang/macro/tests/ui/contract/pass/07-flipper-as-dependency.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/07-flipper-as-dependency.rs rename to crates/lang/macro/tests/ui/contract/pass/07-flipper-as-dependency.rs diff --git a/crates/lang/macro/tests/ui/pass/08-flipper-as-dependency-trait.rs b/crates/lang/macro/tests/ui/contract/pass/08-flipper-as-dependency-trait.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/08-flipper-as-dependency-trait.rs rename to crates/lang/macro/tests/ui/contract/pass/08-flipper-as-dependency-trait.rs diff --git a/crates/lang/macro/tests/ui/pass/09-static-env.rs b/crates/lang/macro/tests/ui/contract/pass/09-static-env.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/09-static-env.rs rename to crates/lang/macro/tests/ui/contract/pass/09-static-env.rs diff --git a/crates/lang/macro/tests/ui/pass/10-derive-for-storage.rs b/crates/lang/macro/tests/ui/contract/pass/10-derive-for-storage.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/10-derive-for-storage.rs rename to crates/lang/macro/tests/ui/contract/pass/10-derive-for-storage.rs diff --git a/crates/lang/macro/tests/ui/pass/11-alias-storage-struct-impl.rs b/crates/lang/macro/tests/ui/contract/pass/11-alias-storage-struct-impl.rs similarity index 100% rename from crates/lang/macro/tests/ui/pass/11-alias-storage-struct-impl.rs rename to crates/lang/macro/tests/ui/contract/pass/11-alias-storage-struct-impl.rs