Skip to content

Commit 1cd3485

Browse files
committed
Move error handling to separate tests
1 parent 36d27e7 commit 1cd3485

File tree

1 file changed

+37
-17
lines changed

1 file changed

+37
-17
lines changed

tests/playwright/shiny/inputs/input_selectize/test_input_selectize.py

Lines changed: 37 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -44,13 +44,6 @@ def test_input_selectize_kitchen(page: Page, local_app: ShinyAppProc) -> None:
4444
state1.set("CA")
4545
state1.expect_selected(["CA"])
4646

47-
with pytest.raises(TypeError) as err:
48-
state1.set({"a": "1"}) # pyright: ignore[reportArgumentType]
49-
assert "when setting a multiple-select input" in str(err.value)
50-
with pytest.raises(TypeError) as err:
51-
state1.set(45) # pyright: ignore[reportArgumentType]
52-
assert "value must be a" in str(err.value)
53-
5447
state1.set(["IA", "CA"])
5548
state1.expect_selected(["IA", "CA"])
5649
value1.expect_value("('IA', 'CA')")
@@ -100,16 +93,6 @@ def test_input_selectize_kitchen(page: Page, local_app: ShinyAppProc) -> None:
10093

10194
state3.set("NJ")
10295

103-
with pytest.raises(ValueError) as err:
104-
state3.set(["NJ", "NY"])
105-
assert "when setting a single-select input" in str(err.value)
106-
with pytest.raises(ValueError) as err:
107-
state3.set([])
108-
assert "when setting a single-select input" in str(err.value)
109-
with pytest.raises(TypeError) as err:
110-
state3.set(45) # pyright: ignore[reportArgumentType]
111-
assert "value must be a" in str(err.value)
112-
11396
state3.expect_selected(["NJ"])
11497
value3.expect_value("NJ")
11598

@@ -133,3 +116,40 @@ def test_input_selectize_kitchen(page: Page, local_app: ShinyAppProc) -> None:
133116

134117
state4.expect_selected(["New York"])
135118
value4.expect_value("New York")
119+
120+
# -------------------------
121+
122+
123+
def test_input_selectize_kitchen_errors_single(
124+
page: Page, local_app: ShinyAppProc
125+
) -> None:
126+
page.goto(local_app.url)
127+
128+
state3 = controller.InputSelectize(page, "state3")
129+
130+
# Single
131+
with pytest.raises(ValueError) as err:
132+
state3.set(["NJ", "NY"])
133+
assert "when setting a single-select input" in str(err.value)
134+
with pytest.raises(ValueError) as err:
135+
state3.set([])
136+
assert "when setting a single-select input" in str(err.value)
137+
with pytest.raises(TypeError) as err:
138+
state3.set(45) # pyright: ignore[reportArgumentType]
139+
assert "value must be a" in str(err.value)
140+
141+
142+
def test_input_selectize_kitchen_errors_multiple(
143+
page: Page, local_app: ShinyAppProc
144+
) -> None:
145+
page.goto(local_app.url)
146+
147+
state1 = controller.InputSelectize(page, "state1")
148+
149+
# Multiple
150+
with pytest.raises(TypeError) as err:
151+
state1.set({"a": "1"}) # pyright: ignore[reportArgumentType]
152+
assert "when setting a multiple-select input" in str(err.value)
153+
with pytest.raises(TypeError) as err:
154+
state1.set(45) # pyright: ignore[reportArgumentType]
155+
assert "value must be a" in str(err.value)

0 commit comments

Comments
 (0)