|
@@ -10,8 +10,8 @@ import (
|
|
|
)
|
|
|
|
|
|
func TestEscapeProxyRead(t *testing.T) {
|
|
|
- escapeKeys, _ := ToBytes("DEL")
|
|
|
- keys, _ := ToBytes("a,b,c,+")
|
|
|
+ escapeKeys, _ := ToBytes("")
|
|
|
+ keys, _ := ToBytes("a")
|
|
|
reader := NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
|
|
|
buf := make([]byte, len(keys))
|
|
|
nr, err := reader.Read(buf)
|
|
@@ -19,6 +19,32 @@ func TestEscapeProxyRead(t *testing.T) {
|
|
|
assert.Equal(t, nr, len(keys), fmt.Sprintf("nr %d should be equal to the number of %d", nr, len(keys)))
|
|
|
assert.DeepEqual(t, keys, buf)
|
|
|
|
|
|
+ keys, _ = ToBytes("a,b,c")
|
|
|
+ reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
|
|
|
+ buf = make([]byte, len(keys))
|
|
|
+ nr, err = reader.Read(buf)
|
|
|
+ assert.NilError(t, err)
|
|
|
+ assert.Equal(t, nr, len(keys), fmt.Sprintf("nr %d should be equal to the number of %d", nr, len(keys)))
|
|
|
+ assert.DeepEqual(t, keys, buf)
|
|
|
+
|
|
|
+ keys, _ = ToBytes("")
|
|
|
+ reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
|
|
|
+ buf = make([]byte, len(keys))
|
|
|
+ nr, err = reader.Read(buf)
|
|
|
+ assert.Assert(t, is.ErrorContains(err, ""), "Should throw error when no keys are to read")
|
|
|
+ assert.Equal(t, nr, 0, "nr should be zero")
|
|
|
+ assert.Check(t, is.Len(keys, 0))
|
|
|
+ assert.Check(t, is.Len(buf, 0))
|
|
|
+
|
|
|
+ escapeKeys, _ = ToBytes("DEL")
|
|
|
+ keys, _ = ToBytes("a,b,c,+")
|
|
|
+ reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
|
|
|
+ buf = make([]byte, len(keys))
|
|
|
+ nr, err = reader.Read(buf)
|
|
|
+ assert.NilError(t, err)
|
|
|
+ assert.Equal(t, nr, len(keys), fmt.Sprintf("nr %d should be equal to the number of %d", nr, len(keys)))
|
|
|
+ assert.DeepEqual(t, keys, buf)
|
|
|
+
|
|
|
keys, _ = ToBytes("")
|
|
|
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
|
|
|
buf = make([]byte, len(keys))
|