Remove bus from org invite api (#44530)

* Remove bus from org invite api

* Fix lint

* Remove comment
This commit is contained in:
idafurjes
2022-01-31 17:24:52 +01:00
committed by GitHub
parent 7ed82ac049
commit 12420260ef
9 changed files with 373 additions and 356 deletions

View File

@@ -66,11 +66,11 @@ func TestEmailNotifier(t *testing.T) {
require.True(t, ok)
expected := map[string]interface{}{
"subject": emailSender.Email.Subject,
"to": emailSender.Email.To,
"single_email": emailSender.Email.SingleEmail,
"template": emailSender.Email.Template,
"data": emailSender.Email.Data,
"subject": emailSender.EmailSync.Subject,
"to": emailSender.EmailSync.To,
"single_email": emailSender.EmailSync.SingleEmail,
"template": emailSender.EmailSync.Template,
"data": emailSender.EmailSync.Data,
}
require.Equal(t, map[string]interface{}{
"subject": "[FIRING:1] (AlwaysFiring warning)",

View File

@@ -29,7 +29,8 @@ func resetTimeNow() {
type notificationServiceMock struct {
Webhook models.SendWebhookSync
Email models.SendEmailCommandSync
EmailSync models.SendEmailCommandSync
Emailx models.SendEmailCommand
ShouldError error
}
@@ -38,7 +39,11 @@ func (ns *notificationServiceMock) SendWebhookSync(ctx context.Context, cmd *mod
return ns.ShouldError
}
func (ns *notificationServiceMock) SendEmailCommandHandlerSync(ctx context.Context, cmd *models.SendEmailCommandSync) error {
ns.Email = *cmd
ns.EmailSync = *cmd
return ns.ShouldError
}
func (ns *notificationServiceMock) SendEmailCommandHandler(ctx context.Context, cmd *models.SendEmailCommand) error {
ns.Emailx = *cmd
return ns.ShouldError
}

View File

@@ -8,11 +8,13 @@ import (
type NotificationServiceMock struct {
Webhook models.SendWebhookSync
Email models.SendEmailCommandSync
EmailSync models.SendEmailCommandSync
Email models.SendEmailCommand
ShouldError error
WebhookHandler func(context.Context, *models.SendWebhookSync) error
EmailHandler func(context.Context, *models.SendEmailCommandSync) error
WebhookHandler func(context.Context, *models.SendWebhookSync) error
EmailHandlerSync func(context.Context, *models.SendEmailCommandSync) error
EmailHandler func(context.Context, *models.SendEmailCommand) error
}
func (ns *NotificationServiceMock) SendWebhookSync(ctx context.Context, cmd *models.SendWebhookSync) error {
@@ -22,7 +24,16 @@ func (ns *NotificationServiceMock) SendWebhookSync(ctx context.Context, cmd *mod
}
return ns.ShouldError
}
func (ns *NotificationServiceMock) SendEmailCommandHandlerSync(ctx context.Context, cmd *models.SendEmailCommandSync) error {
ns.EmailSync = *cmd
if ns.EmailHandlerSync != nil {
return ns.EmailHandlerSync(ctx, cmd)
}
return ns.ShouldError
}
func (ns *NotificationServiceMock) SendEmailCommandHandler(ctx context.Context, cmd *models.SendEmailCommand) error {
ns.Email = *cmd
if ns.EmailHandler != nil {
return ns.EmailHandler(ctx, cmd)

View File

@@ -22,6 +22,7 @@ type WebhookSender interface {
}
type EmailSender interface {
SendEmailCommandHandlerSync(ctx context.Context, cmd *models.SendEmailCommandSync) error
SendEmailCommandHandler(ctx context.Context, cmd *models.SendEmailCommand) error
}
type Service interface {
WebhookSender
@@ -45,7 +46,7 @@ func ProvideService(bus bus.Bus, cfg *setting.Cfg, mailer Mailer) (*Notification
ns.Bus.AddHandler(ns.sendResetPasswordEmail)
ns.Bus.AddHandler(ns.validateResetPasswordCode)
ns.Bus.AddHandler(ns.sendEmailCommandHandler)
ns.Bus.AddHandler(ns.SendEmailCommandHandler)
ns.Bus.AddHandler(ns.SendEmailCommandHandlerSync)
ns.Bus.AddHandler(ns.SendWebhookSync)
@@ -151,7 +152,7 @@ func (ns *NotificationService) SendEmailCommandHandlerSync(ctx context.Context,
return err
}
func (ns *NotificationService) sendEmailCommandHandler(ctx context.Context, cmd *models.SendEmailCommand) error {
func (ns *NotificationService) SendEmailCommandHandler(ctx context.Context, cmd *models.SendEmailCommand) error {
message, err := ns.buildEmailMessage(cmd)
if err != nil {
@@ -167,7 +168,7 @@ func (ns *NotificationService) sendResetPasswordEmail(ctx context.Context, cmd *
if err != nil {
return err
}
return ns.sendEmailCommandHandler(ctx, &models.SendEmailCommand{
return ns.SendEmailCommandHandler(ctx, &models.SendEmailCommand{
To: []string{cmd.User.Email},
Template: tmplResetPassword,
Data: map[string]interface{}{
@@ -211,7 +212,7 @@ func (ns *NotificationService) signUpStartedHandler(ctx context.Context, evt *ev
return nil
}
err := ns.sendEmailCommandHandler(ctx, &models.SendEmailCommand{
err := ns.SendEmailCommandHandler(ctx, &models.SendEmailCommand{
To: []string{evt.Email},
Template: tmplSignUpStarted,
Data: map[string]interface{}{
@@ -234,7 +235,7 @@ func (ns *NotificationService) signUpCompletedHandler(ctx context.Context, evt *
return nil
}
return ns.sendEmailCommandHandler(ctx, &models.SendEmailCommand{
return ns.SendEmailCommandHandler(ctx, &models.SendEmailCommand{
To: []string{evt.Email},
Template: tmplWelcomeOnSignUp,
Data: map[string]interface{}{

View File

@@ -57,7 +57,7 @@ func TestEmailIntegrationTest(t *testing.T) {
Template: "alert_notification",
}
err := ns.sendEmailCommandHandler(context.Background(), cmd)
err := ns.SendEmailCommandHandler(context.Background(), cmd)
require.NoError(t, err)
sentMsg := <-ns.mailQueue