z_test.go 689 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package rest_websocket
  2. import (
  3. "bytes"
  4. "io"
  5. "testing"
  6. "time"
  7. "git.ali33.ru/fcg-xvii/go-tools/json"
  8. "git.ali33.ru/fcg-xvii/rest"
  9. )
  10. func TestMessage(t *testing.T) {
  11. rbuf := make([]byte, 100)
  12. fTmp := rest.NewReadCloserLen(
  13. io.NopCloser(bytes.NewReader(rbuf)),
  14. int64(len(rbuf)),
  15. )
  16. mes := NewMessage(
  17. "okko",
  18. json.Map{
  19. "one": 1,
  20. "two": 2,
  21. },
  22. map[string]rest.IReadCloserLen{
  23. "file.txt": fTmp,
  24. },
  25. time.Second,
  26. rest.RequestTypeMessage,
  27. )
  28. var buf bytes.Buffer
  29. if err := mes.Write(&buf); err != nil {
  30. t.Fatal(err)
  31. }
  32. mes2, err := ReadMessage(&buf)
  33. if err != nil {
  34. t.Fatal(err)
  35. }
  36. t.Log(mes2)
  37. t.Log(mes2.files["file.txt"].Len())
  38. mes2.Close()
  39. }