From 555ea8edfb2c30d149b3ca6cb0fbe53f2798c7bc Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Thu, 9 Sep 2021 16:15:25 +0200 Subject: Import export (#194) * start with export/import code * messing about with decoding/encoding * some more fiddling * stuff is WORKING * working pretty alright! * go fmt * fix up tests, add docs * start backup/restore doc * tweaks * credits * update advancedVisibility settings * update bun library -> v1.0.4 Signed-off-by: kim (grufwub) * update oauth library -> v4.3.1-SSB Signed-off-by: kim (grufwub) * handle oauth token scope, fix user.SigninCount + token.UserID Signed-off-by: kim (grufwub) * update oauth library --> v4.3.2-SSB Signed-off-by: kim (grufwub) * update sqlite library -> v1.13.0 Signed-off-by: kim (grufwub) * review changes * start with export/import code * messing about with decoding/encoding * some more fiddling * stuff is WORKING * working pretty alright! * go fmt * fix up tests, add docs * start backup/restore doc * tweaks * credits * update advancedVisibility settings * review changes Co-authored-by: kim (grufwub) Co-authored-by: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> --- testrig/db.go | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) (limited to 'testrig/db.go') 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) -- cgit v1.2.3