Skip to content

Commit 407ebb7

Browse files
committed
make common test hooks module
1 parent 963751d commit 407ebb7

File tree

3 files changed

+16
-23
lines changed

3 files changed

+16
-23
lines changed

tests/test_core/test_layout.py

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
capture_idom_logs,
2121
)
2222
from idom.utils import Ref
23+
from tests.tooling.hooks import use_toggle
2324

2425

2526
@pytest.fixture(autouse=True)
@@ -494,11 +495,6 @@ def SomeComponent():
494495
)
495496

496497

497-
def use_toggle(init=False):
498-
state, set_state = idom.hooks.use_state(init)
499-
return state, lambda: set_state(lambda old: not old)
500-
501-
502498
async def test_model_key_preserves_callback_identity_for_common_elements(caplog):
503499
called_good_trigger = idom.Ref(False)
504500
good_handler = StaticEventHandler()
@@ -813,18 +809,13 @@ def Child(state):
813809
await layout.render()
814810

815811

816-
def use_toggle():
817-
state, set_state = idom.hooks.use_state(True)
818-
return state, lambda: set_state(not state)
819-
820-
821812
async def test_elements_and_components_with_the_same_key_can_be_interchanged():
822813
set_toggle = idom.Ref()
823814
effects = []
824815

825816
@idom.component
826817
def Root():
827-
toggle, set_toggle.current = use_toggle()
818+
toggle, set_toggle.current = use_toggle(True)
828819
if toggle:
829820
return SomeComponent("x")
830821
else:

tests/test_html.py

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,17 @@
11
import pytest
22

3-
from idom import component, config, html, use_state
3+
from idom import component, config, html
44
from idom.testing import DisplayFixture, poll
55
from idom.utils import Ref
6-
7-
8-
def use_toggle(initial=True):
9-
state, set_state = use_state(initial)
10-
return state, lambda: set_state(not state)
11-
12-
13-
def use_counter(initial_value):
14-
state, set_state = use_state(initial_value)
15-
return state, lambda: set_state(state + 1)
6+
from tests.tooling.hooks import use_counter, use_toggle
167

178

189
async def test_script_mount_unmount(display: DisplayFixture):
1910
toggle_is_mounted = Ref()
2011

2112
@component
2213
def Root():
23-
is_mounted, toggle_is_mounted.current = use_toggle()
14+
is_mounted, toggle_is_mounted.current = use_toggle(True)
2415
return html.div(
2516
html.div({"id": "mount-state", "data-value": False}),
2617
HasScript() if is_mounted else html.div(),

tests/tooling/hooks.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from idom import use_state
2+
3+
4+
def use_toggle(init=False):
5+
state, set_state = use_state(init)
6+
return state, lambda: set_state(lambda old: not old)
7+
8+
9+
def use_counter(initial_value):
10+
state, set_state = use_state(initial_value)
11+
return state, lambda: set_state(state + 1)

0 commit comments

Comments
 (0)