lishwist/core/internal/fixtures/login.go

39 lines
732 B
Go

package fixtures
import (
"log"
"testing"
"time"
lishwist "lishwist/core"
"github.com/ncruces/go-sqlite3/vfs/memdb"
)
func TestInit(t *testing.T) error {
uri := memdb.TestDB(t)
return lishwist.Init(uri)
}
func Login(t *testing.T, username, password string) *lishwist.Session {
uri := memdb.TestDB(t)
err := lishwist.Init(uri)
if err != nil {
log.Fatalf("Failed to init db: %s\n", err)
}
lw := lishwist.NewSessionManager(time.Second*10, 32)
_, err = lishwist.Register(username, password)
if err != nil {
log.Fatalf("Failed to register on login fixture: %s\n", err)
}
session, err := lw.Login(username, password)
if err != nil {
log.Fatalf("Failed to login on fixture: %s\n", err)
}
return session
}