notifier.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package apitest
  2. import (
  3. "github.com/porter-dev/porter/internal/notifier"
  4. )
  5. // FakeUserNotifier just stores data about a single notification,
  6. // without sending the data anywhere
  7. type FakeUserNotifier struct {
  8. lastPWResetOpts *notifier.SendPasswordResetEmailOpts
  9. lastGHResetOpts *notifier.SendGithubRelinkEmailOpts
  10. lastEmailVerOpts *notifier.SendEmailVerificationOpts
  11. lastProjInvOpts *notifier.SendProjectInviteEmailOpts
  12. lastDeleteProjectOpts *notifier.SendProjectDeleteEmailOpts
  13. }
  14. func NewFakeUserNotifier() notifier.UserNotifier {
  15. return &FakeUserNotifier{}
  16. }
  17. func (f *FakeUserNotifier) SendPasswordResetEmail(opts *notifier.SendPasswordResetEmailOpts) error {
  18. f.lastPWResetOpts = opts
  19. return nil
  20. }
  21. func (f *FakeUserNotifier) GetPasswordResetEmailLastOpts() *notifier.SendPasswordResetEmailOpts {
  22. return f.lastPWResetOpts
  23. }
  24. func (f *FakeUserNotifier) SendGithubRelinkEmail(opts *notifier.SendGithubRelinkEmailOpts) error {
  25. f.lastGHResetOpts = opts
  26. return nil
  27. }
  28. func (f *FakeUserNotifier) GetGithubRelinkEmailLastOpts() *notifier.SendGithubRelinkEmailOpts {
  29. return f.lastGHResetOpts
  30. }
  31. func (f *FakeUserNotifier) SendEmailVerification(opts *notifier.SendEmailVerificationOpts) error {
  32. f.lastEmailVerOpts = opts
  33. return nil
  34. }
  35. func (f *FakeUserNotifier) GetSendEmailVerificationLastOpts() *notifier.SendEmailVerificationOpts {
  36. return f.lastEmailVerOpts
  37. }
  38. func (f *FakeUserNotifier) SendProjectInviteEmail(opts *notifier.SendProjectInviteEmailOpts) error {
  39. f.lastProjInvOpts = opts
  40. return nil
  41. }
  42. func (f *FakeUserNotifier) GetSendProjectInviteEmailLastOpts() *notifier.SendProjectInviteEmailOpts {
  43. return f.lastProjInvOpts
  44. }
  45. func (f *FakeUserNotifier) SendProjectDeleteEmail(opts *notifier.SendProjectDeleteEmailOpts) error {
  46. f.lastDeleteProjectOpts = opts
  47. return nil
  48. }