Chore: Refactor GoConvey in teamguardian package (#40896)

* refactor goconvey in teamguardian package

* use proper order of parameters in equality assertion

Co-authored-by: ying-jeanne <74549700+ying-jeanne@users.noreply.github.com>

Co-authored-by: ying-jeanne <74549700+ying-jeanne@users.noreply.github.com>
This commit is contained in:
Serge Zaitsev 2021-10-26 17:59:37 +02:00 committed by GitHub
parent 681218275e
commit 1f1162f1d8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -5,11 +5,12 @@ import (
"github.com/grafana/grafana/pkg/bus" "github.com/grafana/grafana/pkg/bus"
"github.com/grafana/grafana/pkg/models" "github.com/grafana/grafana/pkg/models"
. "github.com/smartystreets/goconvey/convey"
"github.com/stretchr/testify/require"
) )
func TestUpdateTeam(t *testing.T) { func TestUpdateTeam(t *testing.T) {
Convey("Updating a team", t, func() { t.Run("Updating a team", func(t *testing.T) {
bus.ClearBusHandlers() bus.ClearBusHandlers()
admin := models.SignedInUser{ admin := models.SignedInUser{
@ -27,20 +28,20 @@ func TestUpdateTeam(t *testing.T) {
OrgId: 1, OrgId: 1,
} }
Convey("Given an editor and a team he isn't a member of", func() { t.Run("Given an editor and a team he isn't a member of", func(t *testing.T) {
Convey("Should not be able to update the team", func() { t.Run("Should not be able to update the team", func(t *testing.T) {
bus.AddHandler("test", func(cmd *models.GetTeamMembersQuery) error { bus.AddHandler("test", func(cmd *models.GetTeamMembersQuery) error {
cmd.Result = []*models.TeamMemberDTO{} cmd.Result = []*models.TeamMemberDTO{}
return nil return nil
}) })
err := CanAdmin(bus.GetBus(), testTeam.OrgId, testTeam.Id, &editor) err := CanAdmin(bus.GetBus(), testTeam.OrgId, testTeam.Id, &editor)
So(err, ShouldEqual, models.ErrNotAllowedToUpdateTeam) require.Equal(t, models.ErrNotAllowedToUpdateTeam, err)
}) })
}) })
Convey("Given an editor and a team he is an admin in", func() { t.Run("Given an editor and a team he is an admin in", func(t *testing.T) {
Convey("Should be able to update the team", func() { t.Run("Should be able to update the team", func(t *testing.T) {
bus.AddHandler("test", func(cmd *models.GetTeamMembersQuery) error { bus.AddHandler("test", func(cmd *models.GetTeamMembersQuery) error {
cmd.Result = []*models.TeamMemberDTO{{ cmd.Result = []*models.TeamMemberDTO{{
OrgId: testTeam.OrgId, OrgId: testTeam.OrgId,
@ -52,17 +53,17 @@ func TestUpdateTeam(t *testing.T) {
}) })
err := CanAdmin(bus.GetBus(), testTeam.OrgId, testTeam.Id, &editor) err := CanAdmin(bus.GetBus(), testTeam.OrgId, testTeam.Id, &editor)
So(err, ShouldBeNil) require.NoError(t, err)
}) })
}) })
Convey("Given an editor and a team in another org", func() { t.Run("Given an editor and a team in another org", func(t *testing.T) {
testTeamOtherOrg := models.Team{ testTeamOtherOrg := models.Team{
Id: 1, Id: 1,
OrgId: 2, OrgId: 2,
} }
Convey("Shouldn't be able to update the team", func() { t.Run("Shouldn't be able to update the team", func(t *testing.T) {
bus.AddHandler("test", func(cmd *models.GetTeamMembersQuery) error { bus.AddHandler("test", func(cmd *models.GetTeamMembersQuery) error {
cmd.Result = []*models.TeamMemberDTO{{ cmd.Result = []*models.TeamMemberDTO{{
OrgId: testTeamOtherOrg.OrgId, OrgId: testTeamOtherOrg.OrgId,
@ -74,14 +75,14 @@ func TestUpdateTeam(t *testing.T) {
}) })
err := CanAdmin(bus.GetBus(), testTeamOtherOrg.OrgId, testTeamOtherOrg.Id, &editor) err := CanAdmin(bus.GetBus(), testTeamOtherOrg.OrgId, testTeamOtherOrg.Id, &editor)
So(err, ShouldEqual, models.ErrNotAllowedToUpdateTeamInDifferentOrg) require.Equal(t, models.ErrNotAllowedToUpdateTeamInDifferentOrg, err)
}) })
}) })
Convey("Given an org admin and a team", func() { t.Run("Given an org admin and a team", func(t *testing.T) {
Convey("Should be able to update the team", func() { t.Run("Should be able to update the team", func(t *testing.T) {
err := CanAdmin(bus.GetBus(), testTeam.OrgId, testTeam.Id, &admin) err := CanAdmin(bus.GetBus(), testTeam.OrgId, testTeam.Id, &admin)
So(err, ShouldBeNil) require.NoError(t, err)
}) })
}) })
}) })