impl NewRam().Fill() to load testdata

main
Bel LaPointe 2024-04-12 13:33:06 -06:00
parent c0977a6b7a
commit b6526b8360
2 changed files with 43 additions and 0 deletions

View File

@ -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
} }

View File

@ -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()))
} }