reflex/tests/units/components/core/test_banner.py
Masen Furer 2b7ef0dccc
Temporarily downpin @radix-ui/themes <3.1.5 (#4370)
* Temporarily downpin @radix-ui/themes <3.1.5

A visual/style regression was introduced in @radix-ui/themes 3.1.5
as described in radix-ui/themes#627 which reflex needs to avoid.

* Get expected radix library version from component
2024-11-12 12:44:59 -08:00

60 lines
1.6 KiB
Python

from reflex.components.core.banner import (
ConnectionBanner,
ConnectionModal,
ConnectionPulser,
WebsocketTargetURL,
)
from reflex.components.radix.themes.base import RadixThemesComponent
from reflex.components.radix.themes.typography.text import Text
def test_websocket_target_url():
url = WebsocketTargetURL.create()
var_data = url._get_all_var_data()
assert var_data is not None
assert sorted(tuple((key for key, _ in var_data.imports))) == sorted(
("$/utils/state", "$/env.json")
)
def test_connection_banner():
banner = ConnectionBanner.create()
_imports = banner._get_all_imports(collapse=True)
assert sorted(tuple(_imports)) == sorted(
(
"react",
"$/utils/context",
"$/utils/state",
RadixThemesComponent().library or "",
"$/env.json",
)
)
msg = "Connection error"
custom_banner = ConnectionBanner.create(Text.create(msg))
assert msg in str(custom_banner.render())
def test_connection_modal():
modal = ConnectionModal.create()
_imports = modal._get_all_imports(collapse=True)
assert sorted(tuple(_imports)) == sorted(
(
"react",
"$/utils/context",
"$/utils/state",
RadixThemesComponent().library or "",
"$/env.json",
)
)
msg = "Connection error"
custom_modal = ConnectionModal.create(Text.create(msg))
assert msg in str(custom_modal.render())
def test_connection_pulser():
pulser = ConnectionPulser.create()
_custom_code = pulser._get_all_custom_code()
_imports = pulser._get_all_imports(collapse=True)