multi_buffer_test.go 587 B

1234567891011121314151617181920212223242526272829303132333435
  1. package buf_test
  2. import (
  3. "testing"
  4. . "v2ray.com/core/common/buf"
  5. . "v2ray.com/ext/assert"
  6. )
  7. func TestMultiBufferRead(t *testing.T) {
  8. assert := With(t)
  9. b1 := New()
  10. b1.AppendBytes('a', 'b')
  11. b2 := New()
  12. b2.AppendBytes('c', 'd')
  13. mb := NewMultiBufferValue(b1, b2)
  14. bs := make([]byte, 32)
  15. nBytes, err := mb.Read(bs)
  16. assert(err, IsNil)
  17. assert(nBytes, Equals, 4)
  18. assert(bs[:nBytes], Equals, []byte("abcd"))
  19. }
  20. func TestMultiBufferAppend(t *testing.T) {
  21. assert := With(t)
  22. var mb MultiBuffer
  23. b := New()
  24. b.AppendBytes('a', 'b')
  25. mb.Append(b)
  26. assert(mb.Len(), Equals, 2)
  27. }