From 4b31c13cf77c5c256df0ab9809c8732058e2128a Mon Sep 17 00:00:00 2001 From: Luca Casonato Date: Tue, 11 Jul 2023 17:18:32 +0200 Subject: [PATCH] Move debugger_visualizer tests to separate crate To prevent having to raise MSRV again, we move the debugger_visualizer to a separate crate. This crate is only compiled when the feature `debugger_visualizer` is enabled, because only then the `debugger_visualizer` test is added as a compile target. --- .github/workflows/main.yml | 2 +- Cargo.toml | 9 +++++++- url/Cargo.toml | 11 +--------- url_debug_tests/Cargo.toml | 21 +++++++++++++++++++ .../tests/debugger_visualizer.rs | 3 +++ 5 files changed, 34 insertions(+), 12 deletions(-) create mode 100644 url_debug_tests/Cargo.toml rename {url => url_debug_tests}/tests/debugger_visualizer.rs (98%) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c05ee1f89..cd36f9804 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -46,7 +46,7 @@ jobs: if: | matrix.os == 'windows-latest' && matrix.rust == 'nightly' - run: cargo test --test debugger_visualizer --features "url/serde,url/debugger_visualizer" -- --test-threads=1 + run: cargo test --test debugger_visualizer --features "url/debugger_visualizer,url_debug_tests/debugger_visualizer" -- --test-threads=1 - name: Test `no_std` support run: cargo test --no-default-features --features=alloc diff --git a/Cargo.toml b/Cargo.toml index a07a3b7b8..9ecf07c31 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,2 +1,9 @@ [workspace] -members = ["url", "form_urlencoded", "idna", "percent_encoding", "data-url"] +members = [ + "url", + "form_urlencoded", + "idna", + "percent_encoding", + "data-url", + "url_debug_tests", +] diff --git a/url/Cargo.toml b/url/Cargo.toml index ddfbc6cff..276024125 100644 --- a/url/Cargo.toml +++ b/url/Cargo.toml @@ -23,15 +23,12 @@ appveyor = { repository = "Manishearth/rust-url" } [dev-dependencies] serde_json = "1.0" bencher = "0.1" -# To test debugger visualizers defined for the url crate such as url.natvis -debugger_test = "0.1" -debugger_test_parser = "0.1" [dependencies] form_urlencoded = { version = "1.2.0", path = "../form_urlencoded" } idna = { version = "0.4.0", path = "../idna" } percent-encoding = { version = "2.3.0", path = "../percent_encoding" } -serde = {version = "1.0", optional = true, features = ["derive"]} +serde = { version = "1.0", optional = true, features = ["derive"] } [features] default = [] @@ -46,12 +43,6 @@ name = "parse_url" path = "benches/parse_url.rs" harness = false -[[test]] -name = "debugger_visualizer" -path = "tests/debugger_visualizer.rs" -required-features = ["debugger_visualizer"] -test = false - [package.metadata.docs.rs] features = ["serde"] diff --git a/url_debug_tests/Cargo.toml b/url_debug_tests/Cargo.toml new file mode 100644 index 000000000..ca9b16b81 --- /dev/null +++ b/url_debug_tests/Cargo.toml @@ -0,0 +1,21 @@ +[package] + +name = "url_debug_tests" +version = "0.0.0" +description = "Tests for debugger visualizers defined for the url crate such as url.natvis" +publish = false +rust-version = "1.60" + +[dev-dependencies] +url = { path = "../url" } +debugger_test = "0.1" +debugger_test_parser = "0.1" + +[features] +debugger_visualizer = [] + +[[test]] +name = "debugger_visualizer" +path = "tests/debugger_visualizer.rs" +required-features = ["debugger_visualizer"] +test = false diff --git a/url/tests/debugger_visualizer.rs b/url_debug_tests/tests/debugger_visualizer.rs similarity index 98% rename from url/tests/debugger_visualizer.rs rename to url_debug_tests/tests/debugger_visualizer.rs index 4558e0701..b03d1386c 100644 --- a/url/tests/debugger_visualizer.rs +++ b/url_debug_tests/tests/debugger_visualizer.rs @@ -1,3 +1,6 @@ +extern crate debugger_test; +extern crate url; + use debugger_test::debugger_test; use url::Url;