diff options
author | 2021-11-17 13:40:09 +0100 | |
---|---|---|
committer | 2021-11-17 13:40:09 +0100 | |
commit | ff7c96caa312858fd253454993e363937155c608 (patch) | |
tree | 7673c976c3639d2b82341c37e5b256729803e4cd /internal/db/bundb/admin_test.go | |
parent | Update docs with better config + installation instructions (#300) (diff) | |
download | gotosocial-ff7c96caa312858fd253454993e363937155c608.tar.xz |
Fix instance account not being created (#310)
* Rework 'CreateInstanceAccount' with better checking logic
* add test for create instance account
Diffstat (limited to 'internal/db/bundb/admin_test.go')
-rw-r--r-- | internal/db/bundb/admin_test.go | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/internal/db/bundb/admin_test.go b/internal/db/bundb/admin_test.go new file mode 100644 index 000000000..a4c380c03 --- /dev/null +++ b/internal/db/bundb/admin_test.go @@ -0,0 +1,56 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +package bundb_test + +import ( + "context" + "testing" + + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type AdminTestSuite struct { + BunDBStandardTestSuite +} + +func (suite *AdminTestSuite) TestCreateInstanceAccount() { + // we need to take an empty db for this... + testrig.StandardDBTeardown(suite.db) + // ...with tables created but no data + testrig.CreateTestTables(suite.db) + + // make sure there's no instance account in the db yet + acct, err := suite.db.GetInstanceAccount(context.Background(), suite.config.Host) + suite.Error(err) + suite.Nil(acct) + + // create it + err = suite.db.CreateInstanceAccount(context.Background()) + suite.NoError(err) + + // and now check it exists + acct, err = suite.db.GetInstanceAccount(context.Background(), suite.config.Host) + suite.NoError(err) + suite.NotNil(acct) +} + +func TestAdminTestSuite(t *testing.T) { + suite.Run(t, new(AdminTestSuite)) +} |