diff options
Diffstat (limited to 'testrig/db.go')
-rw-r--r-- | testrig/db.go | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/testrig/db.go b/testrig/db.go index 7cb4f7645..268ba16b7 100644 --- a/testrig/db.go +++ b/testrig/db.go @@ -72,6 +72,16 @@ func NewTestDB() db.DB { return testDB } +// CreateTestTables creates prerequisite test tables in the database, but doesn't populate them. +func CreateTestTables(db db.DB) { + ctx := context.Background() + for _, m := range testModels { + if err := db.CreateTable(ctx, m); err != nil { + logrus.Panicf("error creating table for %+v: %s", m, err) + } + } +} + // StandardDBSetup populates a given db with all the necessary tables/models for perfoming tests. // // The accounts parameter is provided in case the db should be populated with a certain set of accounts. @@ -85,13 +95,9 @@ func StandardDBSetup(db db.DB, accounts map[string]*gtsmodel.Account) { logrus.Panic("db setup: db was nil") } - ctx := context.Background() + CreateTestTables(db) - for _, m := range testModels { - if err := db.CreateTable(ctx, m); err != nil { - logrus.Panicf("error creating table for %+v: %s", m, err) - } - } + ctx := context.Background() for _, v := range NewTestTokens() { if err := db.Put(ctx, v); err != nil { @@ -111,6 +117,18 @@ func StandardDBSetup(db db.DB, accounts map[string]*gtsmodel.Account) { } } + for _, v := range NewTestBlocks() { + if err := db.Put(ctx, v); err != nil { + logrus.Panic(err) + } + } + + for _, v := range NewTestDomainBlocks() { + if err := db.Put(ctx, v); err != nil { + logrus.Panic(err) + } + } + for _, v := range NewTestUsers() { if err := db.Put(ctx, v); err != nil { logrus.Panic(err) |