buffer_test.go 622 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package kcp_test
  2. import (
  3. "testing"
  4. "github.com/v2ray/v2ray-core/testing/assert"
  5. . "github.com/v2ray/v2ray-core/transport/internet/kcp"
  6. )
  7. func TestBuffer(t *testing.T) {
  8. assert := assert.On(t)
  9. b := NewBuffer()
  10. for i := 0; i < NumDistro; i++ {
  11. x := b.Allocate()
  12. assert.Pointer(x).IsNotNil()
  13. x.Release()
  14. }
  15. assert.Pointer(b.Allocate()).IsNil()
  16. b.Release()
  17. }
  18. func TestSingleRelease(t *testing.T) {
  19. assert := assert.On(t)
  20. b := NewBuffer()
  21. x := b.Allocate()
  22. x.Release()
  23. y := b.Allocate()
  24. assert.Pointer(y.Value).IsNotNil()
  25. b.Release()
  26. y.Release()
  27. z := b.Allocate()
  28. assert.Pointer(z).IsNil()
  29. }