summaryrefslogtreecommitdiff
path: root/decode_test.go
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2023-02-07 13:24:02 -0700
committerLuke Shumaker <lukeshu@lukeshu.com>2023-02-07 14:05:18 -0700
commitc25137b6d7d5945ae5cde2349a002d84c50d0e59 (patch)
treef785e55f00ebcd273486140ad6d3797e817304bf /decode_test.go
parentad615abffa4c215858624e9d2cf06a7207e427ac (diff)
decode: Fix decoding an actively growing file
Diffstat (limited to 'decode_test.go')
-rw-r--r--decode_test.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/decode_test.go b/decode_test.go
index 73ce903..456f363 100644
--- a/decode_test.go
+++ b/decode_test.go
@@ -5,6 +5,7 @@
package lowmemjson
import (
+ "bytes"
"io"
"strings"
"testing"
@@ -34,3 +35,16 @@ func TestDecodeObject(t *testing.T) {
})
assert.ErrorContains(t, err, "did not consume entire")
}
+
+func TestDecodeGrowing(t *testing.T) {
+ t.Parallel()
+ var buf bytes.Buffer
+ dec := NewDecoder(&buf)
+ var x any
+ assert.ErrorIs(t, dec.Decode(&x), io.EOF)
+ buf.WriteString("1\n")
+ assert.NoError(t, dec.Decode(&x))
+ buf.WriteString("1\n")
+ assert.NoError(t, dec.Decode(&x))
+ assert.ErrorIs(t, dec.Decode(&x), io.EOF)
+}