diff --git a/Cargo.lock b/Cargo.lock index 477d534..fcbde29 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19,9 +19,9 @@ checksum = "76f4e7e5cab3f073c5b74e264cd4059249411a0f767af2c3047f26c9271f6bc1" [[package]] name = "anstyle" -version = "1.0.8" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" [[package]] name = "aria-query" @@ -31,15 +31,15 @@ checksum = "e4c6e6778de8b9abfa42ebcc484b7295a2e53da985c428bdb473a7bddf124fd7" [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "cc" -version = "1.1.18" +version = "1.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62ac837cdb5cb22e10a256099b4fc502b1dfe560cb282963a974d7abd80e476" +checksum = "525046617d8376e3db1deffb079e91cef90a89fc3ca5c185bbf8c9ecdd15cd5c" dependencies = [ "shlex", ] @@ -68,9 +68,9 @@ checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" [[package]] name = "fragile" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" +checksum = "28dd6caf6059519a65843af8fe2a3ae298b14b80179855aeb4adc2c1934ee619" [[package]] name = "indoc" @@ -102,9 +102,9 @@ checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "minicov" -version = "0.3.5" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c71e683cd655513b99affab7d317deb690528255a0d5f717f1024093c12b169" +checksum = "f27fe9f1cc3c22e1687f9446c2083c4c5fc7f0bcf1c7a86bdbded14985895b4b" dependencies = [ "cc", "walkdir", @@ -138,9 +138,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.19.0" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "paste" @@ -150,9 +150,9 @@ checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] name = "predicates" -version = "3.1.2" +version = "3.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" +checksum = "a5d19ee57562043d37e82899fade9a22ebab7be9cef5026b07fda9cdd4293573" dependencies = [ "anstyle", "predicates-core", @@ -160,15 +160,15 @@ dependencies = [ [[package]] name = "predicates-core" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931" +checksum = "727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa" [[package]] name = "predicates-tree" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13" +checksum = "72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c" dependencies = [ "predicates-core", "termtree", @@ -186,18 +186,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.93" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.37" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] @@ -233,9 +233,9 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rustversion" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] name = "same-file" @@ -254,9 +254,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.96" +version = "2.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" +checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" dependencies = [ "proc-macro2", "quote", @@ -265,9 +265,9 @@ dependencies = [ [[package]] name = "termtree" -version = "0.4.1" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" +checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" [[package]] name = "testing-library-dom" @@ -309,9 +309,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "walkdir" diff --git a/Cargo.toml b/Cargo.toml index 49ad371..3f18231 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,7 @@ resolver = "2" [workspace.package] authors = ["Rust For Web "] -edition = "2021" +edition = "2024" license = "MIT" repository = "https://github.com/RustForWeb/testing-library" version = "0.0.1" diff --git a/book/book.toml b/book/book.toml index b61d841..114f3fa 100644 --- a/book/book.toml +++ b/book/book.toml @@ -19,4 +19,4 @@ git-repository-url = "https://github.com/RustForWeb/testing-library" serve = true [rust] -edition = "2021" +edition = "2024" diff --git a/packages/dom/src/get_queries_for_element.rs b/packages/dom/src/get_queries_for_element.rs index eb6ba1c..3ea40da 100644 --- a/packages/dom/src/get_queries_for_element.rs +++ b/packages/dom/src/get_queries_for_element.rs @@ -1,10 +1,10 @@ use web_sys::HtmlElement; use crate::{ + ByRoleMatcher, ByRoleOptions, error::QueryError, queries::*, types::{Matcher, MatcherOptions, SelectorMatcherOptions, WaitForOptions}, - ByRoleMatcher, ByRoleOptions, }; pub fn get_queries_for_element(element: HtmlElement) -> BoundFunctions { diff --git a/packages/dom/src/helpers.rs b/packages/dom/src/helpers.rs index 0a66520..449009c 100644 --- a/packages/dom/src/helpers.rs +++ b/packages/dom/src/helpers.rs @@ -1,4 +1,4 @@ -use web_sys::{window, Document}; +use web_sys::{Document, window}; pub fn get_document() -> Document { window() diff --git a/packages/dom/src/matches.rs b/packages/dom/src/matches.rs index 9a92875..5a2d0dd 100644 --- a/packages/dom/src/matches.rs +++ b/packages/dom/src/matches.rs @@ -4,7 +4,7 @@ use regex::Regex; use web_sys::Element; use crate::{ - error::QueryError, DefaultNormalizerOptions, Matcher, NormalizerFn, NormalizerOptions, + DefaultNormalizerOptions, Matcher, NormalizerFn, NormalizerOptions, error::QueryError, }; pub fn fuzzy_matches( diff --git a/packages/dom/src/queries/role.rs b/packages/dom/src/queries/role.rs index f855e01..0f5c08b 100644 --- a/packages/dom/src/queries/role.rs +++ b/packages/dom/src/queries/role.rs @@ -1,8 +1,8 @@ use std::collections::HashSet; -use aria_query::{AriaProperty, AriaRole, ROLES, ROLE_ELEMENTS}; +use aria_query::{AriaProperty, AriaRole, ROLE_ELEMENTS, ROLES}; use dom_accessibility_api::{ - compute_accessible_description, compute_accessible_name, ComputeTextAlternativeOptions, + ComputeTextAlternativeOptions, compute_accessible_description, compute_accessible_name, }; use web_sys::HtmlElement; diff --git a/packages/dom/src/query_helpers.rs b/packages/dom/src/query_helpers.rs index c3eb2f0..ca54a07 100644 --- a/packages/dom/src/query_helpers.rs +++ b/packages/dom/src/query_helpers.rs @@ -1,11 +1,11 @@ use web_sys::{Element, HtmlElement}; use crate::{ + Matcher, MatcherOptions, NormalizerOptions, config::get_config, error::QueryError, matches::{fuzzy_matches, make_normalizer, matches}, util::node_list_to_vec, - Matcher, MatcherOptions, NormalizerOptions, }; pub fn get_element_error(message: Option, container: Element) -> QueryError { @@ -13,7 +13,12 @@ pub fn get_element_error(message: Option, container: Element) -> QueryEr } pub fn get_multiple_elements_found_error(message: String, container: Element) -> QueryError { - get_element_error(Some(format!("{message}\n\n(If this is intentional, then use the `*_all_by_*` variant of the query (like `query_all_by_text`, `get_all_by_text`, or `find_all_by_text`)).")), container) + get_element_error( + Some(format!( + "{message}\n\n(If this is intentional, then use the `*_all_by_*` variant of the query (like `query_all_by_text`, `get_all_by_text`, or `find_all_by_text`))." + )), + container, + ) } pub fn query_all_by_attribute>( @@ -165,7 +170,7 @@ macro_rules! make_find_query { #[macro_export] macro_rules! wrap_single_query_with_suggestion { - ($query:ident, $query_by_all_name:expr, $variant:expr, $name:ident, $matcher_type:ty, $options_type:ty) => { + ($query:ident, $query_by_all_name:expr_2021, $variant:expr_2021, $name:ident, $matcher_type:ty, $options_type:ty) => { pub fn $name>( container: &HtmlElement, matcher: M, @@ -195,7 +200,7 @@ macro_rules! wrap_single_query_with_suggestion { #[macro_export] macro_rules! wrap_all_by_query_with_suggestion { - ($query:ident, $query_by_all_name:expr, $variant:expr, $name:ident, $matcher_type:ty, $options_type:ty) => { + ($query:ident, $query_by_all_name:expr_2021, $variant:expr_2021, $name:ident, $matcher_type:ty, $options_type:ty) => { pub fn $name>( container: &HtmlElement, matcher: M, diff --git a/packages/dom/src/role_helpers.rs b/packages/dom/src/role_helpers.rs index b623880..b38d475 100644 --- a/packages/dom/src/role_helpers.rs +++ b/packages/dom/src/role_helpers.rs @@ -5,7 +5,7 @@ use aria_query::{ ELEMENT_ROLES, }; use dom_accessibility_api::{ - compute_accessible_description, compute_accessible_name, ComputeTextAlternativeOptions, + ComputeTextAlternativeOptions, compute_accessible_description, compute_accessible_name, }; use wasm_bindgen::JsCast; use web_sys::{Element, HtmlElement, HtmlInputElement, HtmlOptionElement}; diff --git a/packages/dom/src/suggestions.rs b/packages/dom/src/suggestions.rs index b6b263e..1473820 100644 --- a/packages/dom/src/suggestions.rs +++ b/packages/dom/src/suggestions.rs @@ -1,8 +1,8 @@ use web_sys::HtmlElement; use crate::{ - types::{Method, Suggestion, Variant}, MatcherOptions, + types::{Method, Suggestion, Variant}, }; fn make_suggestion( diff --git a/packages/dom/tests/config.rs b/packages/dom/tests/config.rs index c9cc209..cdaf947 100644 --- a/packages/dom/tests/config.rs +++ b/packages/dom/tests/config.rs @@ -1,6 +1,6 @@ use std::sync::{Arc, LazyLock, Mutex, MutexGuard}; -use testing_library_dom::{configure, get_config, ConfigFnOrPartial, PartialConfig}; +use testing_library_dom::{ConfigFnOrPartial, PartialConfig, configure, get_config}; static CONFIG_LOCK: Mutex<()> = Mutex::new(()); static ORIGINAL_CONFIG: LazyLock>> = diff --git a/packages/dom/tests/element_queries.rs b/packages/dom/tests/element_queries.rs index 661d39f..04992f3 100644 --- a/packages/dom/tests/element_queries.rs +++ b/packages/dom/tests/element_queries.rs @@ -6,11 +6,11 @@ use std::sync::{Arc, LazyLock, Mutex}; use indoc::indoc; use testing_library_dom::{ - configure, ConfigFnOrPartial, MatcherOptions, PartialConfig, QueryError, SelectorMatcherOptions, + ConfigFnOrPartial, MatcherOptions, PartialConfig, QueryError, SelectorMatcherOptions, configure, }; use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure}; -use self::helpers::test_utils::{render, RenderReturn}; +use self::helpers::test_utils::{RenderReturn, render}; wasm_bindgen_test_configure!(run_in_browser); @@ -46,24 +46,36 @@ fn query_can_return_none() -> Result<(), QueryError> { container_queries, .. } = render("
", None); - assert!(container_queries - .query_by_test_id("LucyRicardo", MatcherOptions::default())? - .is_none()); - assert!(container_queries - .query_by_label_text("LucyRicardo", SelectorMatcherOptions::default())? - .is_none()); - assert!(container_queries - .query_by_display_value("LucyRicardo", MatcherOptions::default())? - .is_none()); - assert!(container_queries - .query_by_placeholder_text("LucyRicardo", MatcherOptions::default())? - .is_none()); - assert!(container_queries - .query_by_text("LucyRicardo", SelectorMatcherOptions::default())? - .is_none()); - assert!(container_queries - .query_by_alt_text("LucyRicardo", MatcherOptions::default())? - .is_none()); + assert!( + container_queries + .query_by_test_id("LucyRicardo", MatcherOptions::default())? + .is_none() + ); + assert!( + container_queries + .query_by_label_text("LucyRicardo", SelectorMatcherOptions::default())? + .is_none() + ); + assert!( + container_queries + .query_by_display_value("LucyRicardo", MatcherOptions::default())? + .is_none() + ); + assert!( + container_queries + .query_by_placeholder_text("LucyRicardo", MatcherOptions::default())? + .is_none() + ); + assert!( + container_queries + .query_by_text("LucyRicardo", SelectorMatcherOptions::default())? + .is_none() + ); + assert!( + container_queries + .query_by_alt_text("LucyRicardo", MatcherOptions::default())? + .is_none() + ); after_each(); @@ -76,7 +88,10 @@ fn get_throws_a_useful_error_message() -> Result<(), QueryError> { let RenderReturn { container_queries, .. - } = render("
", None); + } = render( + "
", + None, + ); assert_eq!( Err(QueryError::Element( diff --git a/packages/dom/tests/get_node_text.rs b/packages/dom/tests/get_node_text.rs index 3c234b7..77066b1 100644 --- a/packages/dom/tests/get_node_text.rs +++ b/packages/dom/tests/get_node_text.rs @@ -5,7 +5,7 @@ mod helpers; use testing_library_dom::get_node_text; use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure}; -use self::helpers::test_utils::{render, RenderReturn}; +use self::helpers::test_utils::{RenderReturn, render}; wasm_bindgen_test_configure!(run_in_browser); diff --git a/packages/dom/tests/helpers/test_utils.rs b/packages/dom/tests/helpers/test_utils.rs index 7fee8ef..41b6cb8 100644 --- a/packages/dom/tests/helpers/test_utils.rs +++ b/packages/dom/tests/helpers/test_utils.rs @@ -1,9 +1,9 @@ // TODO: remove #![allow(dead_code)] -use testing_library_dom::{get_queries_for_element, BoundFunctions}; +use testing_library_dom::{BoundFunctions, get_queries_for_element}; use wasm_bindgen::JsCast; -use web_sys::{window, Document, Element, HtmlElement}; +use web_sys::{Document, Element, HtmlElement, window}; pub fn document() -> Document { window() diff --git a/packages/dom/tests/pretty_dom.rs b/packages/dom/tests/pretty_dom.rs index 0794fb0..5c4a496 100644 --- a/packages/dom/tests/pretty_dom.rs +++ b/packages/dom/tests/pretty_dom.rs @@ -7,7 +7,7 @@ use indoc::indoc; use testing_library_dom::pretty_dom; use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure}; -use self::helpers::test_utils::{render, RenderReturn}; +use self::helpers::test_utils::{RenderReturn, render}; wasm_bindgen_test_configure!(run_in_browser); diff --git a/packages/dom/tests/query_helpers.rs b/packages/dom/tests/query_helpers.rs index 665f064..78fcfc8 100644 --- a/packages/dom/tests/query_helpers.rs +++ b/packages/dom/tests/query_helpers.rs @@ -4,7 +4,7 @@ use std::sync::Arc; use mockall::automock; use testing_library_dom::{ - configure, get_element_error, ConfigFnOrPartial, PartialConfig, QueryError, + ConfigFnOrPartial, PartialConfig, QueryError, configure, get_element_error, }; use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure}; use web_sys::{Document, Element};