test_banner.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. from reflex.components.core.banner import (
  2. ConnectionBanner,
  3. ConnectionModal,
  4. ConnectionPulser,
  5. WebsocketTargetURL,
  6. )
  7. from reflex.components.radix.themes.typography.text import Text
  8. def test_websocket_target_url():
  9. url = WebsocketTargetURL.create()
  10. _imports = url._get_all_imports()
  11. assert [i.library for i in _imports] == ["/utils/state", "/env.json"]
  12. def test_connection_banner():
  13. banner = ConnectionBanner.create()
  14. _imports = banner._get_all_imports().collapse()
  15. assert list(_imports) == [
  16. "react",
  17. "/utils/context",
  18. "/utils/state",
  19. "@radix-ui/themes@^3.0.0",
  20. "/env.json",
  21. ]
  22. msg = "Connection error"
  23. custom_banner = ConnectionBanner.create(Text.create(msg))
  24. assert msg in str(custom_banner.render())
  25. def test_connection_modal():
  26. modal = ConnectionModal.create()
  27. _imports = modal._get_all_imports().collapse()
  28. assert list(_imports) == [
  29. "react",
  30. "/utils/context",
  31. "/utils/state",
  32. "@radix-ui/themes@^3.0.0",
  33. "/env.json",
  34. ]
  35. msg = "Connection error"
  36. custom_modal = ConnectionModal.create(Text.create(msg))
  37. assert msg in str(custom_modal.render())
  38. def test_connection_pulser():
  39. pulser = ConnectionPulser.create()
  40. _custom_code = pulser._get_all_custom_code()
  41. _imports = pulser._get_all_imports()