impl NewRam().Fill() to load testdata
parent
c0977a6b7a
commit
b6526b8360
28
driver.go
28
driver.go
|
|
@ -6,6 +6,7 @@ import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
|
"os"
|
||||||
"path"
|
"path"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
@ -161,6 +162,33 @@ func NewRAM() RAM {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (ram RAM) Fill() error {
|
||||||
|
d := "./testdata/slack_events"
|
||||||
|
entries, err := os.ReadDir(d)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
for _, entry := range entries {
|
||||||
|
if entry.IsDir() {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
b, err := os.ReadFile(path.Join(d, entry.Name()))
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
m, err := ParseSlack(b)
|
||||||
|
if errors.Is(err, ErrIrrelevantMessage) {
|
||||||
|
continue
|
||||||
|
} else if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := ram.Set(nil, "m", m.ID, m.Serialize()); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (ram RAM) Close() error {
|
func (ram RAM) Close() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,21 @@ func TestDriverRAM(t *testing.T) {
|
||||||
testDriver(t, NewRAM())
|
testDriver(t, NewRAM())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestRAMFillTestdata(t *testing.T) {
|
||||||
|
ram := NewRAM()
|
||||||
|
if err := ram.Fill(); err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
n := 0
|
||||||
|
if err := ram.ForEach(context.Background(), "m", func(_ string, _ []byte) error {
|
||||||
|
n += 1
|
||||||
|
return nil
|
||||||
|
}); err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
t.Log(n)
|
||||||
|
}
|
||||||
|
|
||||||
func TestDriverBBolt(t *testing.T) {
|
func TestDriverBBolt(t *testing.T) {
|
||||||
testDriver(t, NewTestDBIn(t.TempDir()))
|
testDriver(t, NewTestDBIn(t.TempDir()))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue