/
proc
/
self
/
root
/
proc
/
self
/
root
/
opt
/
golang
/
1.22.0
/
src
/
internal
/
poll
/
up file
home
// Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package poll_test import ( "internal/poll" "reflect" "testing" ) func TestConsume(t *testing.T) { tests := []struct { in [][]byte consume int64 want [][]byte }{ { in: [][]byte{[]byte("foo"), []byte("bar")}, consume: 0, want: [][]byte{[]byte("foo"), []byte("bar")}, }, { in: [][]byte{[]byte("foo"), []byte("bar")}, consume: 2, want: [][]byte{[]byte("o"), []byte("bar")}, }, { in: [][]byte{[]byte("foo"), []byte("bar")}, consume: 3, want: [][]byte{[]byte("bar")}, }, { in: [][]byte{[]byte("foo"), []byte("bar")}, consume: 4, want: [][]byte{[]byte("ar")}, }, { in: [][]byte{nil, nil, nil, []byte("bar")}, consume: 1, want: [][]byte{[]byte("ar")}, }, { in: [][]byte{nil, nil, nil, []byte("foo")}, consume: 0, want: [][]byte{[]byte("foo")}, }, { in: [][]byte{nil, nil, nil}, consume: 0, want: [][]byte{}, }, } for i, tt := range tests { in := tt.in poll.Consume(&in, tt.consume) if !reflect.DeepEqual(in, tt.want) { t.Errorf("%d. after consume(%d) = %+v, want %+v", i, tt.consume, in, tt.want) } } }