Skip to content

Commit

Permalink
Replace sleep usage with one provided by the platform.
Browse files Browse the repository at this point in the history
  • Loading branch information
futursolo committed Jul 19, 2022
1 parent 50aecd6 commit b1d9c5a
Show file tree
Hide file tree
Showing 19 changed files with 52 additions and 52 deletions.
2 changes: 1 addition & 1 deletion packages/yew-router/tests/basename.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use std::time::Duration;

use gloo::timers::future::sleep;
use serde::{Deserialize, Serialize};
use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure};
use yew::functional::function_component;
use yew::platform::time::sleep;
use yew::prelude::*;
use yew_router::prelude::*;

Expand Down
2 changes: 1 addition & 1 deletion packages/yew-router/tests/browser_router.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use std::time::Duration;

use gloo::timers::future::sleep;
use serde::{Deserialize, Serialize};
use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure};
use yew::functional::function_component;
use yew::platform::time::sleep;
use yew::prelude::*;
use yew_router::prelude::*;

Expand Down
2 changes: 1 addition & 1 deletion packages/yew-router/tests/hash_router.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use std::time::Duration;

use gloo::timers::future::sleep;
use serde::{Deserialize, Serialize};
use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure};
use yew::functional::function_component;
use yew::platform::time::sleep;
use yew::prelude::*;
use yew_router::prelude::*;

Expand Down
2 changes: 1 addition & 1 deletion packages/yew-router/tests/link.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use std::time::Duration;

use gloo::timers::future::sleep;
use serde::{Deserialize, Serialize};
use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure};
use yew::functional::function_component;
use yew::platform::time::sleep;
use yew::prelude::*;
use yew_router::prelude::*;

Expand Down
2 changes: 1 addition & 1 deletion packages/yew/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ features = [
]

[features]
tokio = ["tokio/rt", "dep:num_cpus", "dep:tokio-util"]
tokio = ["tokio/rt", "tokio/time", "dep:num_cpus", "dep:tokio-util"]
ssr = ["dep:html-escape", "dep:base64ct", "dep:bincode"]
csr = []
hydration = ["csr", "dep:bincode"]
Expand Down
2 changes: 1 addition & 1 deletion packages/yew/src/virtual_dom/vsuspense.rs
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,8 @@ mod ssr_tests {

use tokio::task::{spawn_local, LocalSet};
use tokio::test;
use tokio::time::sleep;

use crate::platform::time::sleep;
use crate::prelude::*;
use crate::suspense::{Suspension, SuspensionResult};
use crate::ServerRenderer;
Expand Down
4 changes: 2 additions & 2 deletions packages/yew/tests/hydration.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ use std::time::Duration;
mod common;

use common::{obtain_result, obtain_result_by_id};
use gloo::timers::future::sleep;
use wasm_bindgen::JsCast;
use wasm_bindgen_futures::spawn_local;
use wasm_bindgen_test::*;
use web_sys::{HtmlElement, HtmlTextAreaElement};
use yew::platform::time::sleep;
use yew::prelude::*;
use yew::suspense::{use_future, Suspension, SuspensionResult};
use yew::{Renderer, ServerRenderer};
Expand Down Expand Up @@ -769,7 +769,7 @@ async fn hydration_suspense_no_flickering() {
#[hook]
pub fn use_suspend() -> SuspensionResult<()> {
use_future(|| async {
gloo::timers::future::sleep(std::time::Duration::from_millis(200)).await;
yew::platform::time::sleep(std::time::Duration::from_millis(200)).await;
})?;
Ok(())
}
Expand Down
2 changes: 1 addition & 1 deletion packages/yew/tests/layout.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser);
use std::time::Duration;

use common::obtain_result;
use gloo::timers::future::sleep;
use wasm_bindgen_futures::spawn_local;
use wasm_bindgen_test::*;
use yew::platform::time::sleep;
use yew::prelude::*;

#[wasm_bindgen_test]
Expand Down
2 changes: 1 addition & 1 deletion packages/yew/tests/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ mod common;
use std::time::Duration;

use common::obtain_result;
use gloo::timers::future::sleep;
use wasm_bindgen_test::*;
use yew::platform::time::sleep;
use yew::prelude::*;

wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser);
Expand Down
66 changes: 33 additions & 33 deletions packages/yew/tests/suspense.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser);
use std::cell::RefCell;
use std::rc::Rc;

use gloo::timers::future::TimeoutFuture;
use wasm_bindgen::JsCast;
use wasm_bindgen_futures::spawn_local;
use web_sys::{HtmlElement, HtmlTextAreaElement};
use yew::platform::time::sleep;
use yew::suspense::{use_future, use_future_with_deps, Suspension, SuspensionResult};

#[wasm_bindgen_test]
Expand All @@ -29,7 +29,7 @@ async fn suspense_works() {
let (s, handle) = Suspension::new();

spawn_local(async move {
TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

handle.resume();
});
Expand Down Expand Up @@ -100,19 +100,19 @@ async fn suspense_works() {
yew::Renderer::<App>::with_root(gloo_utils::document().get_element_by_id("output").unwrap())
.render();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
result.as_str(),
r#"<div class="content-area"><div class="actual-result">0</div><button class="increase">increase</button><div class="action-area"><button class="take-a-break">Take a break!</button></div></div>"#
);

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;

gloo_utils::document()
.query_selector(".increase")
Expand All @@ -122,7 +122,7 @@ async fn suspense_works() {
.unwrap()
.click();

TimeoutFuture::new(0).await;
sleep(Duration::ZERO).await;

gloo_utils::document()
.query_selector(".increase")
Expand All @@ -132,7 +132,7 @@ async fn suspense_works() {
.unwrap()
.click();

TimeoutFuture::new(1).await;
sleep(Duration::from_millis(1)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -148,11 +148,11 @@ async fn suspense_works() {
.unwrap()
.click();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
Expand Down Expand Up @@ -181,7 +181,7 @@ async fn suspense_not_suspended_at_start() {
let (s, handle) = Suspension::new();

spawn_local(async move {
TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

handle.resume();
});
Expand Down Expand Up @@ -250,7 +250,7 @@ async fn suspense_not_suspended_at_start() {
yew::Renderer::<App>::with_root(gloo_utils::document().get_element_by_id("output").unwrap())
.render();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -265,11 +265,11 @@ async fn suspense_not_suspended_at_start() {
.unwrap()
.click();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -290,7 +290,7 @@ async fn suspense_nested_suspense_works() {
let (s, handle) = Suspension::new();

spawn_local(async move {
TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

handle.resume();
});
Expand Down Expand Up @@ -369,19 +369,19 @@ async fn suspense_nested_suspense_works() {
yew::Renderer::<App>::with_root(gloo_utils::document().get_element_by_id("output").unwrap())
.render();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...(outer)</div>");

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
result.as_str(),
r#"<div class="content-area"><div class="action-area"><button class="take-a-break">Take a break!</button></div><div>wait...(inner)</div></div>"#
);

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -397,14 +397,14 @@ async fn suspense_nested_suspense_works() {
.unwrap()
.click();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(
result.as_str(),
r#"<div class="content-area"><div class="action-area"><button class="take-a-break">Take a break!</button></div><div>wait...(inner)</div></div>"#
);

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -425,7 +425,7 @@ async fn effects_not_run_when_suspended() {
let (s, handle) = Suspension::new();

spawn_local(async move {
TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

handle.resume();
});
Expand Down Expand Up @@ -528,12 +528,12 @@ async fn effects_not_run_when_suspended() {
)
.render();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");
assert_eq!(*counter.borrow(), 0); // effects not called.

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -542,7 +542,7 @@ async fn effects_not_run_when_suspended() {
);
assert_eq!(*counter.borrow(), 1); // effects ran 1 time.

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;

gloo_utils::document()
.query_selector(".increase")
Expand All @@ -552,7 +552,7 @@ async fn effects_not_run_when_suspended() {
.unwrap()
.click();

TimeoutFuture::new(0).await;
sleep(Duration::ZERO).await;

gloo_utils::document()
.query_selector(".increase")
Expand All @@ -562,7 +562,7 @@ async fn effects_not_run_when_suspended() {
.unwrap()
.click();

TimeoutFuture::new(0).await;
sleep(Duration::from_millis(0)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -579,12 +579,12 @@ async fn effects_not_run_when_suspended() {
.unwrap()
.click();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");
assert_eq!(*counter.borrow(), 3); // effects ran 3 times.

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(
Expand All @@ -599,7 +599,7 @@ async fn use_suspending_future_works() {
#[function_component(Content)]
fn content() -> HtmlResult {
let _sleep_handle = use_future(|| async move {
TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;
})?;

Ok(html! {
Expand All @@ -625,11 +625,11 @@ async fn use_suspending_future_works() {
yew::Renderer::<App>::with_root(gloo_utils::document().get_element_by_id("output").unwrap())
.render();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(result.as_str(), r#"<div>Content</div>"#);
Expand All @@ -646,7 +646,7 @@ async fn use_suspending_future_with_deps_works() {
fn content(ContentProps { delay_millis }: &ContentProps) -> HtmlResult {
let delayed_result = use_future_with_deps(
|delay_millis| async move {
TimeoutFuture::new(*delay_millis).await;
sleep(Duration::from_millis(*delay_millis)).await;
42
},
*delay_millis,
Expand Down Expand Up @@ -675,11 +675,11 @@ async fn use_suspending_future_with_deps_works() {
yew::Renderer::<App>::with_root(gloo_utils::document().get_element_by_id("output").unwrap())
.render();

TimeoutFuture::new(10).await;
sleep(Duration::from_millis(10)).await;
let result = obtain_result();
assert_eq!(result.as_str(), "<div>wait...</div>");

TimeoutFuture::new(50).await;
sleep(Duration::from_millis(50)).await;

let result = obtain_result();
assert_eq!(result.as_str(), r#"<div>42</div>"#);
Expand Down
2 changes: 1 addition & 1 deletion packages/yew/tests/use_callback.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ mod common;
use std::time::Duration;

use common::obtain_result;
use gloo::timers::future::sleep;
use wasm_bindgen_test::*;
use yew::platform::time::sleep;
use yew::prelude::*;

wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser);
Expand Down
2 changes: 1 addition & 1 deletion packages/yew/tests/use_context.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ use std::rc::Rc;
use std::time::Duration;

use common::obtain_result_by_id;
use gloo::timers::future::sleep;
use wasm_bindgen_test::*;
use yew::platform::time::sleep;
use yew::prelude::*;

wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser);
Expand Down

0 comments on commit b1d9c5a

Please sign in to comment.