test_banner.py 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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 sorted(tuple(_imports)) == sorted(
  19. (
  20. "react",
  21. "$/utils/context",
  22. "$/utils/state",
  23. "@radix-ui/themes@^3.0.0",
  24. "$/env.json",
  25. )
  26. )
  27. msg = "Connection error"
  28. custom_banner = ConnectionBanner.create(Text.create(msg))
  29. assert msg in str(custom_banner.render())
  30. def test_connection_modal():
  31. modal = ConnectionModal.create()
  32. _imports = modal._get_all_imports(collapse=True)
  33. assert sorted(tuple(_imports)) == sorted(
  34. (
  35. "react",
  36. "$/utils/context",
  37. "$/utils/state",
  38. "@radix-ui/themes@^3.0.0",
  39. "$/env.json",
  40. )
  41. )
  42. msg = "Connection error"
  43. custom_modal = ConnectionModal.create(Text.create(msg))
  44. assert msg in str(custom_modal.render())
  45. def test_connection_pulser():
  46. pulser = ConnectionPulser.create()
  47. _custom_code = pulser._get_all_custom_code()
  48. _imports = pulser._get_all_imports(collapse=True)