udp_test.go 955 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package network
  2. import (
  3. "bytes"
  4. "strings"
  5. "testing"
  6. "time"
  7. )
  8. const (
  9. testUDPServerAddress = "127.0.0.1:10060"
  10. testUDPServerTimeout = time.Second
  11. testUDPServerReceiveBufferSize = 1024
  12. )
  13. func TestUDP(t *testing.T) {
  14. server := &UDPServer{}
  15. err := server.Connect(testUDPServerAddress, NewUDPServerOptions(
  16. WithUDPServerReadTimeout(testUDPServerTimeout),
  17. WithUDPServerWriteTimeout(testUDPServerTimeout),
  18. WithUDPServerReceiveBufferSize(testUDPServerReceiveBufferSize),
  19. WithUDPServerRequestCallback(func(data []byte) ([]byte, error) {
  20. responseBytes := []byte(strings.ToUpper(string(data)))
  21. responseBuffer := &bytes.Buffer{}
  22. responseReader := NewDataWriter(responseBuffer)
  23. err := responseReader.Bytes(responseBytes)
  24. if err != nil {
  25. return nil, err
  26. }
  27. return responseBuffer.Bytes(), nil
  28. }),
  29. ))
  30. if err != nil {
  31. t.Fatal(err)
  32. }
  33. defer server.Disconnect()
  34. // TODO 完成客户端后补充
  35. }