whx_test.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package whx
  2. import (
  3. "testing"
  4. )
  5. type tester struct {
  6. t *testing.T
  7. hx *WuiHx
  8. }
  9. func TestWhx(t *testing.T) {
  10. sf := &tester{
  11. t: t,
  12. }
  13. sf.new()
  14. sf.str()
  15. }
  16. // Получает строку атрибутов.
  17. func (sf *tester) str() {
  18. sf.t.Log("str")
  19. sf.hx.Url().Method().Set("hx-put")
  20. sf.hx.Trigger().Set("load")
  21. sf.hx.Target().Set("#main")
  22. sf.hx.Swap().Set("before")
  23. sf.hx.Oob().Set("true")
  24. sf.hx.Vals().Set("test", 3)
  25. str := sf.hx.String()
  26. _str := `hx-put="/wui/click/123"
  27. hx-trigger="load"
  28. hx-target="#main"
  29. hx-swap="before"
  30. hx-swap-oob="true"
  31. hx-vals='{"test":3}'`
  32. if str != _str {
  33. sf.t.Fatalf("str(): \n\t%v\n\t%v", str, _str)
  34. }
  35. }
  36. // Создаёт новые тэги HTMX.
  37. func (sf *tester) new() {
  38. sf.t.Log("new")
  39. hx := NewWuiHx("/wui/click/123")
  40. if hx == nil {
  41. sf.t.Fatalf("new(): IWuiHx==nil")
  42. }
  43. if vals := hx.Vals(); vals == nil {
  44. sf.t.Fatalf("new(): vals==nil")
  45. }
  46. if url := hx.Url(); url == nil {
  47. sf.t.Fatalf("new(): url==nil")
  48. }
  49. if trig := hx.Trigger(); trig == nil {
  50. sf.t.Fatalf("trig(): trig==nil")
  51. }
  52. if targ := hx.Target(); targ == nil {
  53. sf.t.Fatalf("trig(): targ==nil")
  54. }
  55. if targ := hx.Target(); targ == nil {
  56. sf.t.Fatalf("trig(): targ==nil")
  57. }
  58. if oob := hx.Oob(); oob == nil {
  59. sf.t.Fatalf("trig(): oob==nil")
  60. }
  61. if swap := hx.Swap(); swap == nil {
  62. sf.t.Fatalf("trig(): swap==nil")
  63. }
  64. sf.hx = hx
  65. }