Skip to content

Commit 1d9fb69

Browse files
committed
add test
1 parent b83bb4c commit 1d9fb69

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

tests/test_core.py

+32
Original file line numberDiff line numberDiff line change
@@ -151,3 +151,35 @@ def sample():
151151
expected_query = {"hello": ["world"], "thing": ["1", "2"]}
152152
await display.goto("?hello=world&thing=1&thing=2")
153153
await display.page.wait_for_selector("#success")
154+
155+
156+
async def test_browser_popstate(display: DisplayFixture):
157+
@component
158+
def sample():
159+
return simple.router(
160+
route("/", link("Root", to="/a", id="root")),
161+
route("/a", link("A", to="/b", id="a")),
162+
route("/b", link("B", to="/c", id="b")),
163+
route("/c", link("C", to="/default", id="c")),
164+
route("/{path:path}", html.h1({"id": "default"}, "Default")),
165+
)
166+
167+
await display.show(sample)
168+
169+
for link_selector in ["#root", "#a", "#b", "#c"]:
170+
lnk = await display.page.wait_for_selector(link_selector)
171+
await lnk.click()
172+
173+
await display.page.wait_for_selector("#default")
174+
175+
await display.page.go_back()
176+
await display.page.wait_for_selector("#c")
177+
178+
await display.page.go_back()
179+
await display.page.wait_for_selector("#b")
180+
181+
await display.page.go_back()
182+
await display.page.wait_for_selector("#a")
183+
184+
await display.page.go_back()
185+
await display.page.wait_for_selector("#root")

0 commit comments

Comments
 (0)