Adding upstream version 0.28.1.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
88f1d47ab6
commit
e28c88ef14
933 changed files with 194711 additions and 0 deletions
147
tests/dynamic_stubs.go
Normal file
147
tests/dynamic_stubs.go
Normal file
|
@ -0,0 +1,147 @@
|
|||
package tests
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"github.com/pocketbase/pocketbase/core"
|
||||
"github.com/pocketbase/pocketbase/tools/types"
|
||||
)
|
||||
|
||||
func StubOTPRecords(app core.App) error {
|
||||
superuser2, err := app.FindAuthRecordByEmail(core.CollectionNameSuperusers, "test2@example.com")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
superuser2.SetRaw("stubId", "superuser2")
|
||||
|
||||
superuser3, err := app.FindAuthRecordByEmail(core.CollectionNameSuperusers, "test3@example.com")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
superuser3.SetRaw("stubId", "superuser3")
|
||||
|
||||
user1, err := app.FindAuthRecordByEmail("users", "test@example.com")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
user1.SetRaw("stubId", "user1")
|
||||
|
||||
now := types.NowDateTime()
|
||||
old := types.NowDateTime().Add(-1 * time.Hour)
|
||||
|
||||
stubs := map[*core.Record][]types.DateTime{
|
||||
superuser2: {now, now.Add(-1 * time.Millisecond), old, now.Add(-2 * time.Millisecond), old.Add(-1 * time.Millisecond)},
|
||||
superuser3: {now.Add(-3 * time.Millisecond), now.Add(-2 * time.Minute)},
|
||||
user1: {old},
|
||||
}
|
||||
for record, idDates := range stubs {
|
||||
for i, date := range idDates {
|
||||
otp := core.NewOTP(app)
|
||||
otp.Id = record.GetString("stubId") + "_" + strconv.Itoa(i)
|
||||
otp.SetRecordRef(record.Id)
|
||||
otp.SetCollectionRef(record.Collection().Id)
|
||||
otp.SetPassword("test123")
|
||||
otp.SetRaw("created", date)
|
||||
if err := app.SaveNoValidate(otp); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func StubMFARecords(app core.App) error {
|
||||
superuser2, err := app.FindAuthRecordByEmail(core.CollectionNameSuperusers, "test2@example.com")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
superuser2.SetRaw("stubId", "superuser2")
|
||||
|
||||
superuser3, err := app.FindAuthRecordByEmail(core.CollectionNameSuperusers, "test3@example.com")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
superuser3.SetRaw("stubId", "superuser3")
|
||||
|
||||
user1, err := app.FindAuthRecordByEmail("users", "test@example.com")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
user1.SetRaw("stubId", "user1")
|
||||
|
||||
now := types.NowDateTime()
|
||||
old := types.NowDateTime().Add(-1 * time.Hour)
|
||||
|
||||
type mfaData struct {
|
||||
method string
|
||||
date types.DateTime
|
||||
}
|
||||
|
||||
stubs := map[*core.Record][]mfaData{
|
||||
superuser2: {
|
||||
{core.MFAMethodOTP, now},
|
||||
{core.MFAMethodOTP, old},
|
||||
{core.MFAMethodPassword, now.Add(-2 * time.Minute)},
|
||||
{core.MFAMethodPassword, now.Add(-1 * time.Millisecond)},
|
||||
{core.MFAMethodOAuth2, old.Add(-1 * time.Millisecond)},
|
||||
},
|
||||
superuser3: {
|
||||
{core.MFAMethodOAuth2, now.Add(-3 * time.Millisecond)},
|
||||
{core.MFAMethodPassword, now.Add(-3 * time.Minute)},
|
||||
},
|
||||
user1: {
|
||||
{core.MFAMethodOAuth2, old},
|
||||
},
|
||||
}
|
||||
for record, idDates := range stubs {
|
||||
for i, data := range idDates {
|
||||
otp := core.NewMFA(app)
|
||||
otp.Id = record.GetString("stubId") + "_" + strconv.Itoa(i)
|
||||
otp.SetRecordRef(record.Id)
|
||||
otp.SetCollectionRef(record.Collection().Id)
|
||||
otp.SetMethod(data.method)
|
||||
otp.SetRaw("created", data.date)
|
||||
if err := app.SaveNoValidate(otp); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func StubLogsData(app *TestApp) error {
|
||||
_, err := app.AuxDB().NewQuery(`
|
||||
delete from {{_logs}};
|
||||
|
||||
insert into {{_logs}} (
|
||||
[[id]],
|
||||
[[level]],
|
||||
[[message]],
|
||||
[[data]],
|
||||
[[created]],
|
||||
[[updated]]
|
||||
)
|
||||
values
|
||||
(
|
||||
"873f2133-9f38-44fb-bf82-c8f53b310d91",
|
||||
0,
|
||||
"test_message1",
|
||||
'{"status":200}',
|
||||
"2022-05-01 10:00:00.123Z",
|
||||
"2022-05-01 10:00:00.123Z"
|
||||
),
|
||||
(
|
||||
"f2133873-44fb-9f38-bf82-c918f53b310d",
|
||||
8,
|
||||
"test_message2",
|
||||
'{"status":400}',
|
||||
"2022-05-02 10:00:00.123Z",
|
||||
"2022-05-02 10:00:00.123Z"
|
||||
);
|
||||
`).Execute()
|
||||
|
||||
return err
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue