Chore: Remove bus from team (#44218)
* Remove bus from team * Fix api team test * Remove bus from team members
This commit is contained in:
@@ -3,38 +3,49 @@ package api
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"testing"
|
||||
|
||||
"github.com/grafana/grafana/pkg/bus"
|
||||
"github.com/grafana/grafana/pkg/models"
|
||||
"github.com/grafana/grafana/pkg/services/licensing"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func setUpGetTeamMembersHandler() {
|
||||
bus.AddHandler("test", func(ctx context.Context, query *models.GetTeamMembersQuery) error {
|
||||
query.Result = []*models.TeamMemberDTO{
|
||||
{Email: "testUser@grafana.com", Login: testUserLogin},
|
||||
{Email: "user1@grafana.com", Login: "user1"},
|
||||
{Email: "user2@grafana.com", Login: "user2"},
|
||||
func setUpGetTeamMembersHandler(t *testing.T, sqlStore *sqlstore.SQLStore) {
|
||||
const testOrgID int64 = 1
|
||||
var userCmd models.CreateUserCommand
|
||||
team, err := sqlStore.CreateTeam("group1 name", "test1@test.com", testOrgID)
|
||||
require.NoError(t, err)
|
||||
for i := 0; i < 3; i++ {
|
||||
userCmd = models.CreateUserCommand{
|
||||
Email: fmt.Sprint("user", i, "@test.com"),
|
||||
Name: fmt.Sprint("user", i),
|
||||
Login: fmt.Sprint("loginuser", i),
|
||||
}
|
||||
return nil
|
||||
})
|
||||
// user
|
||||
user, err := sqlStore.CreateUser(context.Background(), userCmd)
|
||||
require.NoError(t, err)
|
||||
err = sqlStore.AddTeamMember(user.Id, testOrgID, team.Id, false, 1)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestTeamMembersAPIEndpoint_userLoggedIn(t *testing.T) {
|
||||
settings := setting.NewCfg()
|
||||
sqlStore := sqlstore.InitTestDB(t)
|
||||
hs := &HTTPServer{
|
||||
Cfg: settings,
|
||||
License: &licensing.OSSLicensingService{},
|
||||
Cfg: settings,
|
||||
License: &licensing.OSSLicensingService{},
|
||||
SQLStore: sqlStore,
|
||||
}
|
||||
|
||||
loggedInUserScenarioWithRole(t, "When calling GET on", "GET", "api/teams/1/members",
|
||||
"api/teams/:teamId/members", models.ROLE_ADMIN, func(sc *scenarioContext) {
|
||||
setUpGetTeamMembersHandler()
|
||||
setUpGetTeamMembersHandler(t, sqlStore)
|
||||
|
||||
sc.handlerFunc = hs.GetTeamMembers
|
||||
sc.fakeReqWithParams("GET", sc.url, map[string]string{}).exec()
|
||||
@@ -56,7 +67,7 @@ func TestTeamMembersAPIEndpoint_userLoggedIn(t *testing.T) {
|
||||
|
||||
loggedInUserScenarioWithRole(t, "When calling GET on", "GET", "api/teams/1/members",
|
||||
"api/teams/:teamId/members", models.ROLE_ADMIN, func(sc *scenarioContext) {
|
||||
setUpGetTeamMembersHandler()
|
||||
setUpGetTeamMembersHandler(t, sqlStore)
|
||||
|
||||
sc.handlerFunc = hs.GetTeamMembers
|
||||
sc.fakeReqWithParams("GET", sc.url, map[string]string{}).exec()
|
||||
@@ -66,9 +77,10 @@ func TestTeamMembersAPIEndpoint_userLoggedIn(t *testing.T) {
|
||||
var resp []models.TeamMemberDTO
|
||||
err := json.Unmarshal(sc.resp.Body.Bytes(), &resp)
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, resp, 2)
|
||||
assert.Equal(t, testUserLogin, resp[0].Login)
|
||||
assert.Equal(t, "user2", resp[1].Login)
|
||||
assert.Len(t, resp, 3)
|
||||
assert.Equal(t, "loginuser0", resp[0].Login)
|
||||
assert.Equal(t, "loginuser1", resp[1].Login)
|
||||
assert.Equal(t, "loginuser2", resp[2].Login)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user