move FillWithTestdata from RAM method to function
parent
b6526b8360
commit
d5b84da8f5
54
driver.go
54
driver.go
|
|
@ -23,6 +23,33 @@ type Driver interface {
|
|||
Set(context.Context, string, string, []byte) error
|
||||
}
|
||||
|
||||
func FillWithTestdata(ctx context.Context, driver Driver) 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 := driver.Set(nil, "m", m.ID, m.Serialize()); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type Postgres struct {
|
||||
db *sql.DB
|
||||
}
|
||||
|
|
@ -162,33 +189,6 @@ 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 {
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,9 +28,12 @@ func TestDriverRAM(t *testing.T) {
|
|||
testDriver(t, NewRAM())
|
||||
}
|
||||
|
||||
func TestRAMFillTestdata(t *testing.T) {
|
||||
func TestFillTestdata(t *testing.T) {
|
||||
ctx, can := context.WithTimeout(context.Background(), time.Second*15)
|
||||
defer can()
|
||||
|
||||
ram := NewRAM()
|
||||
if err := ram.Fill(); err != nil {
|
||||
if err := FillWithTestdata(ctx, ram); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
n := 0
|
||||
|
|
|
|||
Loading…
Reference in New Issue