From ebbc1fa3caeac1b3f420d0deda9ca83c525277dc Mon Sep 17 00:00:00 2001 From: Michael George Date: Mon, 24 Feb 2025 11:32:20 -0500 Subject: [PATCH] finished tests --- .../tests/test_sources/implicits/README.md | 16 +- .../tests/test_sources/implicits/c/Move.toml | 6 + .../tests/test_sources/implicits/d/Move.toml | 6 + .../implicits/override_dep_1/Move.implicits | 2 + .../implicits/override_dep_1/Move.resolved | 0 .../implicits/override_dep_1/Move.toml | 6 + .../override_dep_1/Move@resolved.snap | 286 ++++++++++++++++++ .../implicits/override_dep_2/Move.implicits | 2 + .../implicits/override_dep_2/Move.resolved | 0 .../implicits/override_dep_2/Move.toml | 6 + .../override_dep_2/Move@resolved.snap | 286 ++++++++++++++++++ 11 files changed, 608 insertions(+), 8 deletions(-) create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/c/Move.toml create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/d/Move.toml create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.implicits create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.resolved create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.toml create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move@resolved.snap create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.implicits create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.resolved create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.toml create mode 100644 external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move@resolved.snap diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/README.md b/external-crates/move/crates/move-package/tests/test_sources/implicits/README.md index 19dec230a4903..ef4b4beab4192 100644 --- a/external-crates/move/crates/move-package/tests/test_sources/implicits/README.md +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/README.md @@ -161,7 +161,7 @@ Expected: - note difference between situation when `b` has no deps: no dep from `b` to `i2` ``` -a ───→ b +a ───→ c │└────┼┐ │┌────┘│ ↓↓ ↓ @@ -172,21 +172,21 @@ i1 ──→ i2 ``` a: - B: b + D: d -b: - I1: i1' +d: + I2: i2a -i1': no deps +i2a: no deps ``` Expected: - implicits added for `a` - - no implicits added for `b`, but `i1'` is replaced with `i1` because of implicit override in `a` - - note difference between situation when `b` has no deps: no dep from `b` to `i2` + - no implicits added for `d`, but `i2a` is replaced with `i2` because of implicit override in `a` + - note difference between situation when `d` has no deps: no dep from `d` to `i1` ``` -a ───→ b +a ───→ d │└────┐│ │ ││ ↓ ↓↓ diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/c/Move.toml b/external-crates/move/crates/move-package/tests/test_sources/implicits/c/Move.toml new file mode 100644 index 0000000000000..e702d655d68d1 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/c/Move.toml @@ -0,0 +1,6 @@ +[package] +name = "C" +edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move + +[dependencies] +I1 = { local = "../i1a", override = true } diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/d/Move.toml b/external-crates/move/crates/move-package/tests/test_sources/implicits/d/Move.toml new file mode 100644 index 0000000000000..3175982903061 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/d/Move.toml @@ -0,0 +1,6 @@ +[package] +name = "D" +edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move + +[dependencies] +I2 = { local = "../i2a", override = true } diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.implicits b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.implicits new file mode 100644 index 0000000000000..9e3873fe4ba75 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.implicits @@ -0,0 +1,2 @@ +I1 = { local = "../i1", override = true } +I2 = { local = "../i2", override = true } diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.resolved b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.resolved new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.toml b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.toml new file mode 100644 index 0000000000000..4e16bb29b8128 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move.toml @@ -0,0 +1,6 @@ +[package] +name = "A" +edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move + +[dependencies] +C = { local = "../c" } diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move@resolved.snap b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move@resolved.snap new file mode 100644 index 0000000000000..310f0116236c4 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_1/Move@resolved.snap @@ -0,0 +1,286 @@ +--- +source: crates/move-package/tests/test_runner.rs +--- +ResolvedGraph { + graph: DependencyGraph { + root_path: "tests/test_sources/implicits/override_dep_1", + root_package_id: "A", + root_package_name: "A", + package_graph: { + "A": [ + ( + "C", + Outgoing, + ), + ( + "I1", + Outgoing, + ), + ( + "I2", + Outgoing, + ), + ], + "C": [ + ( + "A", + Incoming, + ), + ( + "I1", + Outgoing, + ), + ], + "I1": [ + ( + "C", + Incoming, + ), + ( + "A", + Incoming, + ), + ( + "I2", + Outgoing, + ), + ], + "I2": [ + ( + "I1", + Incoming, + ), + ( + "A", + Incoming, + ), + ], + }, + package_table: { + "C": Package { + kind: Local( + "../c", + ), + version: None, + resolver: None, + }, + "I1": Package { + kind: Local( + "../i1", + ), + version: None, + resolver: None, + }, + "I2": Package { + kind: Local( + "../i2", + ), + version: None, + resolver: None, + }, + }, + always_deps: { + "A", + "C", + "I1", + "I2", + }, + manifest_digest: "00046EB6A71A0C93A0F85E7AB9B2BDFDA13E48676C184A1057BABD1B3ACE3C27", + deps_digest: "060AD7E57DFB13104F21BE5F5C3759D03F0553FC3229247D9A7A6B45F50D03A3", + }, + build_options: BuildConfig { + dev_mode: true, + test_mode: false, + generate_docs: false, + save_disassembly: false, + install_dir: Some( + "ELIDED_FOR_TEST", + ), + force_recompilation: false, + lock_file: Some( + "ELIDED_FOR_TEST", + ), + fetch_deps_only: false, + skip_fetch_latest_git_deps: false, + default_flavor: None, + default_edition: None, + deps_as_root: false, + silence_warnings: false, + warnings_are_errors: false, + json_errors: false, + additional_named_addresses: {}, + lint_flag: LintFlag { + no_lint: false, + lint: false, + }, + implicit_dependencies: { + "I1": Internal( + InternalDependency { + kind: Local( + "../i1", + ), + subst: None, + digest: None, + dep_override: true, + }, + ), + "I2": Internal( + InternalDependency { + kind: Local( + "../i2", + ), + subst: None, + digest: None, + dep_override: true, + }, + ), + }, + }, + package_table: { + "A": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "A", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: { + "C": Internal( + InternalDependency { + kind: Local( + "../c", + ), + subst: None, + digest: None, + dep_override: false, + }, + ), + }, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + "C": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "C", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: { + "I1": Internal( + InternalDependency { + kind: Local( + "../i1a", + ), + subst: None, + digest: None, + dep_override: true, + }, + ), + }, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + "I1": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "I1", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: { + "I2": Internal( + InternalDependency { + kind: Local( + "../i2", + ), + subst: None, + digest: None, + dep_override: false, + }, + ), + }, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + "I2": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "I2", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: {}, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + }, +} diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.implicits b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.implicits new file mode 100644 index 0000000000000..9e3873fe4ba75 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.implicits @@ -0,0 +1,2 @@ +I1 = { local = "../i1", override = true } +I2 = { local = "../i2", override = true } diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.resolved b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.resolved new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.toml b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.toml new file mode 100644 index 0000000000000..9bc7611f55815 --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move.toml @@ -0,0 +1,6 @@ +[package] +name = "A" +edition = "2024.beta" # edition = "legacy" to use legacy (pre-2024) Move + +[dependencies] +D = { local = "../d" } diff --git a/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move@resolved.snap b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move@resolved.snap new file mode 100644 index 0000000000000..dede119d57cca --- /dev/null +++ b/external-crates/move/crates/move-package/tests/test_sources/implicits/override_dep_2/Move@resolved.snap @@ -0,0 +1,286 @@ +--- +source: crates/move-package/tests/test_runner.rs +--- +ResolvedGraph { + graph: DependencyGraph { + root_path: "tests/test_sources/implicits/override_dep_2", + root_package_id: "A", + root_package_name: "A", + package_graph: { + "A": [ + ( + "D", + Outgoing, + ), + ( + "I1", + Outgoing, + ), + ( + "I2", + Outgoing, + ), + ], + "D": [ + ( + "A", + Incoming, + ), + ( + "I2", + Outgoing, + ), + ], + "I2": [ + ( + "D", + Incoming, + ), + ( + "I1", + Incoming, + ), + ( + "A", + Incoming, + ), + ], + "I1": [ + ( + "A", + Incoming, + ), + ( + "I2", + Outgoing, + ), + ], + }, + package_table: { + "D": Package { + kind: Local( + "../d", + ), + version: None, + resolver: None, + }, + "I1": Package { + kind: Local( + "../i1", + ), + version: None, + resolver: None, + }, + "I2": Package { + kind: Local( + "../i2", + ), + version: None, + resolver: None, + }, + }, + always_deps: { + "A", + "D", + "I1", + "I2", + }, + manifest_digest: "D44B41A1A0BBFF120EA7D51477561A95C813574AE7A5C4FA9A05771675B57537", + deps_digest: "060AD7E57DFB13104F21BE5F5C3759D03F0553FC3229247D9A7A6B45F50D03A3", + }, + build_options: BuildConfig { + dev_mode: true, + test_mode: false, + generate_docs: false, + save_disassembly: false, + install_dir: Some( + "ELIDED_FOR_TEST", + ), + force_recompilation: false, + lock_file: Some( + "ELIDED_FOR_TEST", + ), + fetch_deps_only: false, + skip_fetch_latest_git_deps: false, + default_flavor: None, + default_edition: None, + deps_as_root: false, + silence_warnings: false, + warnings_are_errors: false, + json_errors: false, + additional_named_addresses: {}, + lint_flag: LintFlag { + no_lint: false, + lint: false, + }, + implicit_dependencies: { + "I1": Internal( + InternalDependency { + kind: Local( + "../i1", + ), + subst: None, + digest: None, + dep_override: true, + }, + ), + "I2": Internal( + InternalDependency { + kind: Local( + "../i2", + ), + subst: None, + digest: None, + dep_override: true, + }, + ), + }, + }, + package_table: { + "A": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "A", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: { + "D": Internal( + InternalDependency { + kind: Local( + "../d", + ), + subst: None, + digest: None, + dep_override: false, + }, + ), + }, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + "D": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "D", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: { + "I2": Internal( + InternalDependency { + kind: Local( + "../i2a", + ), + subst: None, + digest: None, + dep_override: true, + }, + ), + }, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + "I1": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "I1", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: { + "I2": Internal( + InternalDependency { + kind: Local( + "../i2", + ), + subst: None, + digest: None, + dep_override: false, + }, + ), + }, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + "I2": Package { + source_package: SourceManifest { + package: PackageInfo { + name: "I2", + authors: [], + license: None, + edition: Some( + Edition { + edition: "2024", + release: Some( + "beta", + ), + }, + ), + flavor: None, + custom_properties: {}, + }, + addresses: None, + dev_address_assignments: None, + build: None, + dependencies: {}, + dev_dependencies: {}, + }, + package_path: "ELIDED_FOR_TEST", + renaming: {}, + resolved_table: {}, + source_digest: "ELIDED_FOR_TEST", + }, + }, +}