mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
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) <grufwub@gmail.com> * update oauth library -> v4.3.1-SSB Signed-off-by: kim (grufwub) <grufwub@gmail.com> * handle oauth token scope, fix user.SigninCount + token.UserID Signed-off-by: kim (grufwub) <grufwub@gmail.com> * update oauth library --> v4.3.2-SSB Signed-off-by: kim (grufwub) <grufwub@gmail.com> * update sqlite library -> v1.13.0 Signed-off-by: kim (grufwub) <grufwub@gmail.com> * 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) <grufwub@gmail.com> Co-authored-by: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>
This commit is contained in:
@@ -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)
|
||||
|
Reference in New Issue
Block a user