blob: b9711caeab246375e26f59b4b2a0ad5eae9ba8a6 [file] [log] [blame]
giolekva7be17df2020-03-21 13:57:02 +04001package chunk
2
giolekvac5126d92020-03-21 16:39:56 +04003import (
4 "bytes"
5 "testing"
6)
giolekva7be17df2020-03-21 13:57:02 +04007
8func TestConcurrentReads(t *testing.T) {
giolekva1f6577a2020-03-25 12:53:06 +04009 c := InMemoryChunkFactory{}.New(4)
10 if _, err := c.WriterAt().WriteAt([]byte("abcd"), 0); err != nil {
giolekva7be17df2020-03-21 13:57:02 +040011 panic(err)
12 }
13 d1 := make([]byte, 2)
14 d2 := make([]byte, 3)
giolekva1f6577a2020-03-25 12:53:06 +040015 if _, err := c.ReaderAt().ReadAt(d1, 0); err != nil {
giolekva7be17df2020-03-21 13:57:02 +040016 t.Error(err)
17 }
18 if bytes.Compare(d1, []byte("ab")) != 0 {
19 t.Errorf("Expected: %s\nActual: %s", "ab", d1)
20 }
giolekva1f6577a2020-03-25 12:53:06 +040021 if _, err := c.ReaderAt().ReadAt(d2, 0); err != nil {
giolekva7be17df2020-03-21 13:57:02 +040022 t.Error(err)
23 }
24 if bytes.Compare(d2, []byte("abc")) != 0 {
25 t.Errorf("Expected: %s\nActual: %s", "abc", d2)
26 }
27}