testing.go 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package auth
  2. import "github.com/grafana/grafana/pkg/models"
  3. type FakeUserAuthTokenService struct {
  4. CreateTokenProvider func(userId int64, clientIP, userAgent string) (*models.UserToken, error)
  5. TryRotateTokenProvider func(token *models.UserToken, clientIP, userAgent string) (bool, error)
  6. LookupTokenProvider func(unhashedToken string) (*models.UserToken, error)
  7. RevokeTokenProvider func(token *models.UserToken) error
  8. RevokeAllUserTokensProvider func(userId int64) error
  9. ActiveAuthTokenCount func() (int64, error)
  10. GetUserTokenProvider func(userId, userTokenId int64) (*models.UserToken, error)
  11. GetUserTokensProvider func(userId int64) ([]*models.UserToken, error)
  12. }
  13. func NewFakeUserAuthTokenService() *FakeUserAuthTokenService {
  14. return &FakeUserAuthTokenService{
  15. CreateTokenProvider: func(userId int64, clientIP, userAgent string) (*models.UserToken, error) {
  16. return &models.UserToken{
  17. UserId: 0,
  18. UnhashedToken: "",
  19. }, nil
  20. },
  21. TryRotateTokenProvider: func(token *models.UserToken, clientIP, userAgent string) (bool, error) {
  22. return false, nil
  23. },
  24. LookupTokenProvider: func(unhashedToken string) (*models.UserToken, error) {
  25. return &models.UserToken{
  26. UserId: 0,
  27. UnhashedToken: "",
  28. }, nil
  29. },
  30. RevokeTokenProvider: func(token *models.UserToken) error {
  31. return nil
  32. },
  33. RevokeAllUserTokensProvider: func(userId int64) error {
  34. return nil
  35. },
  36. ActiveAuthTokenCount: func() (int64, error) {
  37. return 10, nil
  38. },
  39. GetUserTokenProvider: func(userId, userTokenId int64) (*models.UserToken, error) {
  40. return nil, nil
  41. },
  42. GetUserTokensProvider: func(userId int64) ([]*models.UserToken, error) {
  43. return nil, nil
  44. },
  45. }
  46. }
  47. func (s *FakeUserAuthTokenService) CreateToken(userId int64, clientIP, userAgent string) (*models.UserToken, error) {
  48. return s.CreateTokenProvider(userId, clientIP, userAgent)
  49. }
  50. func (s *FakeUserAuthTokenService) LookupToken(unhashedToken string) (*models.UserToken, error) {
  51. return s.LookupTokenProvider(unhashedToken)
  52. }
  53. func (s *FakeUserAuthTokenService) TryRotateToken(token *models.UserToken, clientIP, userAgent string) (bool, error) {
  54. return s.TryRotateTokenProvider(token, clientIP, userAgent)
  55. }
  56. func (s *FakeUserAuthTokenService) RevokeToken(token *models.UserToken) error {
  57. return s.RevokeTokenProvider(token)
  58. }
  59. func (s *FakeUserAuthTokenService) RevokeAllUserTokens(userId int64) error {
  60. return s.RevokeAllUserTokensProvider(userId)
  61. }
  62. func (s *FakeUserAuthTokenService) ActiveTokenCount() (int64, error) {
  63. return s.ActiveAuthTokenCount()
  64. }
  65. func (s *FakeUserAuthTokenService) GetUserToken(userId, userTokenId int64) (*models.UserToken, error) {
  66. return s.GetUserTokenProvider(userId, userTokenId)
  67. }
  68. func (s *FakeUserAuthTokenService) GetUserTokens(userId int64) ([]*models.UserToken, error) {
  69. return s.GetUserTokensProvider(userId)
  70. }