start with export/import code

This commit is contained in:
tsmethurst 2021-09-06 18:52:25 +02:00
commit ea00ba678d
12 changed files with 460 additions and 6 deletions

View file

@ -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,12 @@ 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 NewTestUsers() {
if err := db.Put(ctx, v); err != nil {
logrus.Panic(err)