fix integration test

This commit is contained in:
Masen Furer 2024-10-04 12:15:20 -07:00
parent b5cf96121c
commit 6a2f603ac3
No known key found for this signature in database
GPG Key ID: B0008AD22B3B3A95

View File

@ -5,6 +5,7 @@ from typing import Generator
import pytest import pytest
from selenium.webdriver.common.by import By from selenium.webdriver.common.by import By
from reflex.state import State, _substate_key
from reflex.testing import AppHarness from reflex.testing import AppHarness
from . import utils from . import utils
@ -96,6 +97,7 @@ async def test_component_state_app(component_state_app: AppHarness):
ss = utils.SessionStorage(driver) ss = utils.SessionStorage(driver)
assert AppHarness._poll_for(lambda: ss.get("token") is not None), "token not found" assert AppHarness._poll_for(lambda: ss.get("token") is not None), "token not found"
root_state_token = _substate_key(ss.get("token"), State)
count_a = driver.find_element(By.ID, "count-a") count_a = driver.find_element(By.ID, "count-a")
count_b = driver.find_element(By.ID, "count-b") count_b = driver.find_element(By.ID, "count-b")
@ -106,7 +108,7 @@ async def test_component_state_app(component_state_app: AppHarness):
# Check that backend vars in mixins are okay # Check that backend vars in mixins are okay
a_state_name = driver.find_element(By.ID, "a_state_name").text a_state_name = driver.find_element(By.ID, "a_state_name").text
b_state_name = driver.find_element(By.ID, "b_state_name").text b_state_name = driver.find_element(By.ID, "b_state_name").text
root_state = await component_state_app.get_state(ss.get("token")) root_state = await component_state_app.get_state(root_state_token)
a_state = root_state.substates[a_state_name] a_state = root_state.substates[a_state_name]
b_state = root_state.substates[b_state_name] b_state = root_state.substates[b_state_name]
assert a_state._backend_vars == a_state.backend_vars assert a_state._backend_vars == a_state.backend_vars
@ -126,7 +128,7 @@ async def test_component_state_app(component_state_app: AppHarness):
button_inc_a.click() button_inc_a.click()
assert component_state_app.poll_for_content(count_a, exp_not_equal="2") == "3" assert component_state_app.poll_for_content(count_a, exp_not_equal="2") == "3"
root_state = await component_state_app.get_state(ss.get("token")) root_state = await component_state_app.get_state(root_state_token)
a_state = root_state.substates[a_state_name] a_state = root_state.substates[a_state_name]
b_state = root_state.substates[b_state_name] b_state = root_state.substates[b_state_name]
assert a_state._backend_vars != a_state.backend_vars assert a_state._backend_vars != a_state.backend_vars
@ -142,7 +144,7 @@ async def test_component_state_app(component_state_app: AppHarness):
button_b.click() button_b.click()
assert component_state_app.poll_for_content(count_b, exp_not_equal="1") == "2" assert component_state_app.poll_for_content(count_b, exp_not_equal="1") == "2"
root_state = await component_state_app.get_state(ss.get("token")) root_state = await component_state_app.get_state(root_state_token)
a_state = root_state.substates[a_state_name] a_state = root_state.substates[a_state_name]
b_state = root_state.substates[b_state_name] b_state = root_state.substates[b_state_name]
assert b_state._backend_vars != b_state.backend_vars assert b_state._backend_vars != b_state.backend_vars