feat(agents): align bulk invite behavior

This commit is contained in:
2026-06-06 01:33:45 +08:00
parent 1b76f8c166
commit bd1520f4b1
3 changed files with 57 additions and 9 deletions
+24 -1
View File
@@ -272,7 +272,30 @@ func (s *AgentHandlerTestSuite) TestBulkCreateValidation() {
}
w, c := s.makeRequest("POST", "/api/v1/accounts/1/agents/bulk_create", req, s.account.ID, s.user.ID)
s.handler.BulkCreate(c)
assert.Equal(s.T(), http.StatusBadRequest, w.Code)
assert.Equal(s.T(), http.StatusOK, w.Code)
assert.Empty(s.T(), w.Body.String())
}
func (s *AgentHandlerTestSuite) TestBulkCreateSkipsInvalidEmailsAndClearsOnboardingStep() {
s.Require().NoError(s.db.Model(s.account).Update("onboarding_step", "invite_team").Error)
req := service.BulkCreateAgentRequest{
Emails: []string{"valid-bulk@test.com", "invalid-email"},
}
w, c := s.makeRequest("POST", "/api/v1/accounts/1/agents/bulk_create", req, s.account.ID, s.user.ID)
s.handler.BulkCreate(c)
assert.Equal(s.T(), http.StatusOK, w.Code)
assert.Empty(s.T(), w.Body.String())
var validUser model.User
s.Require().NoError(s.db.Where("email = ?", "valid-bulk@test.com").First(&validUser).Error)
var invalidCount int64
s.Require().NoError(s.db.Model(&model.User{}).Where("email = ?", "invalid-email").Count(&invalidCount).Error)
assert.Equal(s.T(), int64(0), invalidCount)
var account model.Account
s.Require().NoError(s.db.First(&account, s.account.ID).Error)
assert.Equal(s.T(), "", account.OnboardingStep)
}
func (s *AgentHandlerTestSuite) TestBulkCreateSkipsDuplicates() {