Fix almost all tests

This commit is contained in:
binwiederhier 2022-12-27 22:14:14 -05:00
parent 95a8e64fbb
commit d9722a9825
17 changed files with 197 additions and 253 deletions

View file

@ -71,7 +71,7 @@ func execUserAccess(c *cli.Context) error {
if c.NArg() > 3 {
return errors.New("too many arguments, please check 'ntfy access --help' for usage details")
}
manager, err := createAuthManager(c)
manager, err := createUserManager(c)
if err != nil {
return err
}
@ -96,7 +96,7 @@ func execUserAccess(c *cli.Context) error {
return changeAccess(c, manager, username, topic, perms)
}
func changeAccess(c *cli.Context, manager user.Manager, username string, topic string, perms string) error {
func changeAccess(c *cli.Context, manager *user.Manager, username string, topic string, perms string) error {
if !util.Contains([]string{"", "read-write", "rw", "read-only", "read", "ro", "write-only", "write", "wo", "none", "deny"}, perms) {
return errors.New("permission must be one of: read-write, read-only, write-only, or deny (or the aliases: read, ro, write, wo, none)")
}
@ -123,7 +123,7 @@ func changeAccess(c *cli.Context, manager user.Manager, username string, topic s
return showUserAccess(c, manager, username)
}
func resetAccess(c *cli.Context, manager user.Manager, username, topic string) error {
func resetAccess(c *cli.Context, manager *user.Manager, username, topic string) error {
if username == "" {
return resetAllAccess(c, manager)
} else if topic == "" {
@ -132,7 +132,7 @@ func resetAccess(c *cli.Context, manager user.Manager, username, topic string) e
return resetUserTopicAccess(c, manager, username, topic)
}
func resetAllAccess(c *cli.Context, manager user.Manager) error {
func resetAllAccess(c *cli.Context, manager *user.Manager) error {
if err := manager.ResetAccess("", ""); err != nil {
return err
}
@ -140,7 +140,7 @@ func resetAllAccess(c *cli.Context, manager user.Manager) error {
return nil
}
func resetUserAccess(c *cli.Context, manager user.Manager, username string) error {
func resetUserAccess(c *cli.Context, manager *user.Manager, username string) error {
if err := manager.ResetAccess(username, ""); err != nil {
return err
}
@ -148,7 +148,7 @@ func resetUserAccess(c *cli.Context, manager user.Manager, username string) erro
return showUserAccess(c, manager, username)
}
func resetUserTopicAccess(c *cli.Context, manager user.Manager, username string, topic string) error {
func resetUserTopicAccess(c *cli.Context, manager *user.Manager, username string, topic string) error {
if err := manager.ResetAccess(username, topic); err != nil {
return err
}
@ -156,14 +156,14 @@ func resetUserTopicAccess(c *cli.Context, manager user.Manager, username string,
return showUserAccess(c, manager, username)
}
func showAccess(c *cli.Context, manager user.Manager, username string) error {
func showAccess(c *cli.Context, manager *user.Manager, username string) error {
if username == "" {
return showAllAccess(c, manager)
}
return showUserAccess(c, manager, username)
}
func showAllAccess(c *cli.Context, manager user.Manager) error {
func showAllAccess(c *cli.Context, manager *user.Manager) error {
users, err := manager.Users()
if err != nil {
return err
@ -171,7 +171,7 @@ func showAllAccess(c *cli.Context, manager user.Manager) error {
return showUsers(c, manager, users)
}
func showUserAccess(c *cli.Context, manager user.Manager, username string) error {
func showUserAccess(c *cli.Context, manager *user.Manager, username string) error {
users, err := manager.User(username)
if err == user.ErrNotFound {
return fmt.Errorf("user %s does not exist", username)
@ -181,7 +181,7 @@ func showUserAccess(c *cli.Context, manager user.Manager, username string) error
return showUsers(c, manager, []*user.User{users})
}
func showUsers(c *cli.Context, manager user.Manager, users []*user.User) error {
func showUsers(c *cli.Context, manager *user.Manager, users []*user.User) error {
for _, u := range users {
fmt.Fprintf(c.App.ErrWriter, "user %s (%s)\n", u.Name, u.Role)
if u.Role == user.RoleAdmin {

View file

@ -1,5 +1,4 @@
//go:build linux || dragonfly || freebsd || netbsd || openbsd
// +build linux dragonfly freebsd netbsd openbsd
package cmd

View file

@ -161,7 +161,7 @@ func execUserAdd(c *cli.Context) error {
} else if !user.AllowedRole(role) {
return errors.New("role must be either 'user' or 'admin'")
}
manager, err := createAuthManager(c)
manager, err := createUserManager(c)
if err != nil {
return err
}
@ -190,7 +190,7 @@ func execUserDel(c *cli.Context) error {
} else if username == userEveryone {
return errors.New("username not allowed")
}
manager, err := createAuthManager(c)
manager, err := createUserManager(c)
if err != nil {
return err
}
@ -212,7 +212,7 @@ func execUserChangePass(c *cli.Context) error {
} else if username == userEveryone {
return errors.New("username not allowed")
}
manager, err := createAuthManager(c)
manager, err := createUserManager(c)
if err != nil {
return err
}
@ -240,7 +240,7 @@ func execUserChangeRole(c *cli.Context) error {
} else if username == userEveryone {
return errors.New("username not allowed")
}
manager, err := createAuthManager(c)
manager, err := createUserManager(c)
if err != nil {
return err
}
@ -255,7 +255,7 @@ func execUserChangeRole(c *cli.Context) error {
}
func execUserList(c *cli.Context) error {
manager, err := createAuthManager(c)
manager, err := createUserManager(c)
if err != nil {
return err
}
@ -266,7 +266,7 @@ func execUserList(c *cli.Context) error {
return showUsers(c, manager, users)
}
func createAuthManager(c *cli.Context) (user.Manager, error) {
func createUserManager(c *cli.Context) (*user.Manager, error) {
authFile := c.String("auth-file")
authDefaultAccess := c.String("auth-default-access")
if authFile == "" {
@ -278,7 +278,7 @@ func createAuthManager(c *cli.Context) (user.Manager, error) {
}
authDefaultRead := authDefaultAccess == "read-write" || authDefaultAccess == "read-only"
authDefaultWrite := authDefaultAccess == "read-write" || authDefaultAccess == "write-only"
return user.NewSQLiteAuthManager(authFile, authDefaultRead, authDefaultWrite)
return user.NewManager(authFile, authDefaultRead, authDefaultWrite)
}
func readPasswordAndConfirm(c *cli.Context) (string, error) {