diff options
author | 2021-12-07 13:31:39 +0100 | |
---|---|---|
committer | 2021-12-07 13:31:39 +0100 | |
commit | 0884f89431cd26bcc9674b3b7ab628b090f5881e (patch) | |
tree | cdd3b3f77f780a8b59d075dbcc3d4d013811e405 /internal/processing/user | |
parent | Update dependencies (#333) (diff) | |
download | gotosocial-0884f89431cd26bcc9674b3b7ab628b090f5881e.tar.xz |
Implement Cobra CLI tooling, Viper config tooling (#336)
* start pulling out + replacing urfave and config
* replace many many instances of config
* move more stuff => viper
* properly remove urfave
* move some flags to root command
* add testrig commands to root
* alias config file keys
* start adding cli parsing tests
* reorder viper init
* remove config path alias
* fmt
* change config file keys to non-nested
* we're more or less in business now
* tidy up the common func
* go fmt
* get tests passing again
* add note about the cliparsing tests
* reorganize
* update docs with changes
* structure cmd dir better
* rename + move some files around
* fix dangling comma
Diffstat (limited to 'internal/processing/user')
-rw-r--r-- | internal/processing/user/emailconfirm.go | 7 | ||||
-rw-r--r-- | internal/processing/user/user.go | 5 | ||||
-rw-r--r-- | internal/processing/user/user_test.go | 7 |
3 files changed, 9 insertions, 10 deletions
diff --git a/internal/processing/user/emailconfirm.go b/internal/processing/user/emailconfirm.go index 1f9cb0a10..3e19c61d4 100644 --- a/internal/processing/user/emailconfirm.go +++ b/internal/processing/user/emailconfirm.go @@ -25,6 +25,8 @@ import ( "time" "github.com/google/uuid" + "github.com/spf13/viper" + "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/email" "github.com/superseriousbusiness/gotosocial/internal/gtserror" @@ -51,11 +53,12 @@ func (p *processor) SendConfirmEmail(ctx context.Context, user *gtsmodel.User, u // equivalent to the odds of creating a few tens of trillions of UUIDs in a // year and having one duplicate. confirmationToken := uuid.NewString() - confirmationLink := util.GenerateURIForEmailConfirm(p.config.Protocol, p.config.Host, confirmationToken) + confirmationLink := util.GenerateURIForEmailConfirm(confirmationToken) // pull our instance entry from the database so we can greet the user nicely in the email instance := >smodel.Instance{} - if err := p.db.GetWhere(ctx, []db.Where{{Key: "domain", Value: p.config.Host}}, instance); err != nil { + host := viper.GetString(config.Keys.Host) + if err := p.db.GetWhere(ctx, []db.Where{{Key: "domain", Value: host}}, instance); err != nil { return fmt.Errorf("SendConfirmEmail: error getting instance: %s", err) } diff --git a/internal/processing/user/user.go b/internal/processing/user/user.go index 73cdb4901..2ddf12d7b 100644 --- a/internal/processing/user/user.go +++ b/internal/processing/user/user.go @@ -21,7 +21,6 @@ package user import ( "context" - "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/email" "github.com/superseriousbusiness/gotosocial/internal/gtserror" @@ -40,15 +39,13 @@ type Processor interface { } type processor struct { - config *config.Config emailSender email.Sender db db.DB } // New returns a new user processor -func New(db db.DB, emailSender email.Sender, config *config.Config) Processor { +func New(db db.DB, emailSender email.Sender) Processor { return &processor{ - config: config, emailSender: emailSender, db: db, } diff --git a/internal/processing/user/user_test.go b/internal/processing/user/user_test.go index 5c3cd7597..f9514d720 100644 --- a/internal/processing/user/user_test.go +++ b/internal/processing/user/user_test.go @@ -20,7 +20,6 @@ package user_test import ( "github.com/stretchr/testify/suite" - "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/email" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" @@ -30,7 +29,6 @@ import ( type UserStandardTestSuite struct { suite.Suite - config *config.Config emailSender email.Sender db db.DB @@ -43,13 +41,14 @@ type UserStandardTestSuite struct { func (suite *UserStandardTestSuite) SetupTest() { testrig.InitTestLog() - suite.config = testrig.NewTestConfig() + testrig.InitTestConfig() + suite.db = testrig.NewTestDB() suite.sentEmails = make(map[string]string) suite.emailSender = testrig.NewEmailSender("../../../web/template/", suite.sentEmails) suite.testUsers = testrig.NewTestUsers() - suite.user = user.New(suite.db, suite.emailSender, suite.config) + suite.user = user.New(suite.db, suite.emailSender) testrig.StandardDBSetup(suite.db, nil) } |