1
0
Fork 0
golang-github-djherbis-buffer/wrapio/wrapio_test.go
Daniel Baumann 82a6c39bcf
Adding upstream version 1.2.0.
Signed-off-by: Daniel Baumann <daniel@debian.org>
2025-05-18 16:42:16 +02:00

44 lines
873 B
Go

package wrapio
import (
"bytes"
"io"
"io/ioutil"
"os"
"testing"
)
func TestWrapper(t *testing.T) {
if file, err := ioutil.TempFile("", "wrap.test"); err == nil {
defer os.Remove(file.Name())
defer file.Close()
file.Write([]byte("abcdef"))
data := make([]byte, 12)
w := NewWrapper(file, 6, 1, 6)
if n, err := w.ReadAt(data, 1); err == nil || err == io.EOF {
if !bytes.Equal(data[:n], []byte("cdefa")) {
t.Errorf("Exp cdefa, Got %s", data[:n])
}
} else {
t.Error(err.Error())
}
}
}
func TestWrap(t *testing.T) {
if file, err := ioutil.TempFile("", "wrap.test"); err == nil {
w := NewWrapWriter(file, 0, 3)
w.Write([]byte("abcdef"))
r := NewWrapReader(file, 0, 2)
data := make([]byte, 6)
r.Read(data)
if !bytes.Equal(data, []byte("dedede")) {
t.Error("Wrapper error!")
}
file.Close()
os.Remove(file.Name())
}
}