test_banner.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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. var_data = url._get_all_var_data()
  11. assert var_data is not None
  12. assert sorted(tuple((key for key, _ in var_data.imports))) == sorted(
  13. ("/utils/state", "/env.json")
  14. )
  15. def test_connection_banner():
  16. banner = ConnectionBanner.create()
  17. _imports = banner._get_all_imports(collapse=True)
  18. assert tuple(_imports) == (
  19. "react",
  20. "/utils/context",
  21. "/utils/state",
  22. "@radix-ui/themes@^3.0.0",
  23. "/env.json",
  24. )
  25. msg = "Connection error"
  26. custom_banner = ConnectionBanner.create(Text.create(msg))
  27. assert msg in str(custom_banner.render())
  28. def test_connection_modal():
  29. modal = ConnectionModal.create()
  30. _imports = modal._get_all_imports(collapse=True)
  31. assert tuple(_imports) == (
  32. "react",
  33. "/utils/context",
  34. "/utils/state",
  35. "@radix-ui/themes@^3.0.0",
  36. "/env.json",
  37. )
  38. msg = "Connection error"
  39. custom_modal = ConnectionModal.create(Text.create(msg))
  40. assert msg in str(custom_modal.render())
  41. def test_connection_pulser():
  42. pulser = ConnectionPulser.create()
  43. _custom_code = pulser._get_all_custom_code()
  44. _imports = pulser._get_all_imports(collapse=True)