diff options
author | 2021-12-07 13:31:39 +0100 | |
---|---|---|
committer | 2021-12-07 13:31:39 +0100 | |
commit | 0884f89431cd26bcc9674b3b7ab628b090f5881e (patch) | |
tree | cdd3b3f77f780a8b59d075dbcc3d4d013811e405 /internal/router/session_test.go | |
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/router/session_test.go')
-rw-r--r-- | internal/router/session_test.go | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/internal/router/session_test.go b/internal/router/session_test.go index 7c2d324fd..31beec1ae 100644 --- a/internal/router/session_test.go +++ b/internal/router/session_test.go @@ -16,68 +16,68 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -package router +package router_test import ( "testing" + "github.com/spf13/viper" "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/router" + "github.com/superseriousbusiness/gotosocial/testrig" ) type SessionTestSuite struct { suite.Suite } +func (suite *SessionTestSuite) SetupTest() { + testrig.InitTestConfig() +} + func (suite *SessionTestSuite) TestDeriveSessionNameLocalhostWithPort() { - cfg := &config.Config{ - Protocol: "http", - Host: "localhost:8080", - } + viper.Set(config.Keys.Protocol, "http") + viper.Set(config.Keys.Host, "localhost:8080") - sessionName, err := sessionName(cfg) + sessionName, err := router.SessionName() suite.NoError(err) suite.Equal("gotosocial-localhost", sessionName) } func (suite *SessionTestSuite) TestDeriveSessionNameLocalhost() { - cfg := &config.Config{ - Protocol: "http", - Host: "localhost", - } + viper.Set(config.Keys.Protocol, "http") + viper.Set(config.Keys.Host, "localhost") - sessionName, err := sessionName(cfg) + sessionName, err := router.SessionName() suite.NoError(err) suite.Equal("gotosocial-localhost", sessionName) } func (suite *SessionTestSuite) TestDeriveSessionNoProtocol() { - cfg := &config.Config{ - Host: "localhost", - } + viper.Set(config.Keys.Protocol, "") + viper.Set(config.Keys.Host, "localhost") - sessionName, err := sessionName(cfg) + sessionName, err := router.SessionName() suite.EqualError(err, "parse \"://localhost\": missing protocol scheme") suite.Equal("", sessionName) } func (suite *SessionTestSuite) TestDeriveSessionNoHost() { - cfg := &config.Config{ - Protocol: "https", - } + viper.Set(config.Keys.Protocol, "https") + viper.Set(config.Keys.Host, "") + viper.Set(config.Keys.Port, 0) - sessionName, err := sessionName(cfg) + sessionName, err := router.SessionName() suite.EqualError(err, "could not derive hostname without port from https://") suite.Equal("", sessionName) } func (suite *SessionTestSuite) TestDeriveSessionOK() { - cfg := &config.Config{ - Protocol: "https", - Host: "example.org", - } + viper.Set(config.Keys.Protocol, "https") + viper.Set(config.Keys.Host, "example.org") - sessionName, err := sessionName(cfg) + sessionName, err := router.SessionName() suite.NoError(err) suite.Equal("gotosocial-example.org", sessionName) } |