diff --git a/api4/main_test.go b/api4/main_test.go index f93699a5ed..f2c7f8f457 100644 --- a/api4/main_test.go +++ b/api4/main_test.go @@ -13,7 +13,7 @@ var mainHelper *testlib.MainHelper func TestMain(m *testing.M) { var options = testlib.HelperOptions{ - EnableStore: true, + EnableStore: true, EnableResources: true, } diff --git a/api4/post_test.go b/api4/post_test.go index 0f9a002b6d..b3af37bffc 100644 --- a/api4/post_test.go +++ b/api4/post_test.go @@ -602,7 +602,6 @@ func TestUpdatePost(t *testing.T) { assert.NotEqual(t, rpost3.EditAt, rrupost3.EditAt) assert.NotEqual(t, rpost3.Attachments(), rrupost3.Attachments()) - Client.Logout() _, resp = Client.UpdatePost(rpost.Id, rpost) CheckUnauthorizedStatus(t, resp) diff --git a/api4/scheme_test.go b/api4/scheme_test.go index aba1f032ca..72777dfcc6 100644 --- a/api4/scheme_test.go +++ b/api4/scheme_test.go @@ -304,9 +304,8 @@ func TestGetTeamsForScheme(t *testing.T) { assert.Zero(t, len(l2)) team1.SchemeId = &scheme1.Id - result2 := <-th.App.Srv.Store.Team().Update(team1) - assert.Nil(t, result2.Err) - team1 = result2.Data.(*model.Team) + team1, err := th.App.Srv.Store.Team().Update(team1) + assert.Nil(t, err) l3, r3 := th.SystemAdminClient.GetTeamsForScheme(scheme1.Id, 0, 100) CheckNoError(t, r3) diff --git a/app/team.go b/app/team.go index 82a2de8be0..0143b68dc1 100644 --- a/app/team.go +++ b/app/team.go @@ -136,12 +136,7 @@ func (a *App) UpdateTeam(team *model.Team) (*model.Team, *model.AppError) { } func (a *App) updateTeamUnsanitized(team *model.Team) (*model.Team, *model.AppError) { - result := <-a.Srv.Store.Team().Update(team) - if result.Err != nil { - return nil, result.Err - } - - return result.Data.(*model.Team), nil + return a.Srv.Store.Team().Update(team) } // RenameTeam is used to rename the team Name and the DisplayName fields @@ -180,8 +175,8 @@ func (a *App) UpdateTeamScheme(team *model.Team) (*model.Team, *model.AppError) oldTeam.SchemeId = team.SchemeId - if result := <-a.Srv.Store.Team().Update(oldTeam); result.Err != nil { - return nil, result.Err + if oldTeam, err = a.Srv.Store.Team().Update(oldTeam); err != nil { + return nil, err } a.sendTeamEvent(oldTeam, model.WEBSOCKET_EVENT_UPDATE_TEAM) @@ -1051,8 +1046,8 @@ func (a *App) PermanentDeleteTeamId(teamId string) *model.AppError { func (a *App) PermanentDeleteTeam(team *model.Team) *model.AppError { team.DeleteAt = model.GetMillis() - if result := <-a.Srv.Store.Team().Update(team); result.Err != nil { - return result.Err + if _, err := a.Srv.Store.Team().Update(team); err != nil { + return err } if result := <-a.Srv.Store.Channel().GetTeamChannels(team.Id); result.Err != nil { @@ -1090,8 +1085,8 @@ func (a *App) SoftDeleteTeam(teamId string) *model.AppError { } team.DeleteAt = model.GetMillis() - if result := <-a.Srv.Store.Team().Update(team); result.Err != nil { - return result.Err + if team, err = a.Srv.Store.Team().Update(team); err != nil { + return err } a.sendTeamEvent(team, model.WEBSOCKET_EVENT_DELETE_TEAM) @@ -1104,11 +1099,12 @@ func (a *App) RestoreTeam(teamId string) *model.AppError { if err != nil { return err } + team.DeleteAt = 0 - result := <-a.Srv.Store.Team().Update(team) - if result.Err != nil { - return result.Err + if team, err = a.Srv.Store.Team().Update(team); err != nil { + return err } + a.sendTeamEvent(team, model.WEBSOCKET_EVENT_RESTORE_TEAM) return nil } diff --git a/cmd/mattermost/commands/command_test.go b/cmd/mattermost/commands/command_test.go index e119891201..205ff3f126 100644 --- a/cmd/mattermost/commands/command_test.go +++ b/cmd/mattermost/commands/command_test.go @@ -303,7 +303,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.DisplayName, testVal) }) - t.Run("description nil error", func(t *testing.T) { + t.Run("description nil error", func(t *testing.T) { testVal := "test description" args := []string{"command", "modify", command.Id, "--description", testVal} output, _ := th.RunCommandWithOutput(t, args...) @@ -312,7 +312,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.Description, testVal) }) - t.Run("trigger nil error", func(t *testing.T) { + t.Run("trigger nil error", func(t *testing.T) { testVal := "testtrigger" args := []string{"command", "modify", command.Id, "--trigger-word", testVal} output, _ := th.RunCommandWithOutput(t, args...) @@ -321,21 +321,21 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.Trigger, testVal) }) - t.Run("trigger with space", func(t *testing.T) { + t.Run("trigger with space", func(t *testing.T) { testVal := "bad trigger" args := []string{"command", "modify", command.Id, "--trigger-word", testVal} output, _ := th.RunCommandWithOutput(t, args...) assert.Contains(t, string(output), "Error: a trigger word must not contain spaces") }) - t.Run("trigger with leading /", func(t *testing.T) { + t.Run("trigger with leading /", func(t *testing.T) { testVal := "/bad-trigger" args := []string{"command", "modify", command.Id, "--trigger-word", testVal} output, _ := th.RunCommandWithOutput(t, args...) assert.Contains(t, string(output), "Error: a trigger word cannot begin with a /") }) - t.Run("blank trigger", func(t *testing.T) { + t.Run("blank trigger", func(t *testing.T) { cmd_unmodified, _ := th.App.GetCommand(command.Id) args := []string{"command", "modify", command.Id, "--trigger-word", ""} output, _ := th.RunCommandWithOutput(t, args...) @@ -347,7 +347,7 @@ func TestModifyCommand(t *testing.T) { }) //url case - t.Run("url nil error", func(t *testing.T) { + t.Run("url nil error", func(t *testing.T) { testVal := "http://localhost:8000/modify-command" args := []string{"command", "modify", command.Id, "--url", testVal} output, _ := th.RunCommandWithOutput(t, args...) @@ -356,7 +356,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.URL, testVal) }) - t.Run("blank url", func(t *testing.T) { + t.Run("blank url", func(t *testing.T) { cmd_unmodified, _ := th.App.GetCommand(command.Id) args := []string{"command", "modify", command.Id, "--url", ""} output, _ := th.RunCommandWithOutput(t, args...) @@ -367,7 +367,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd_unmodified.URL, cmd_modified.URL) }) - t.Run("icon url nil error", func(t *testing.T) { + t.Run("icon url nil error", func(t *testing.T) { testVal := "http://localhost:8000/testicon.png" args := []string{"command", "modify", command.Id, "--icon", testVal} output, _ := th.RunCommandWithOutput(t, args...) @@ -376,7 +376,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.IconURL, testVal) }) - t.Run("creator nil error", func(t *testing.T) { + t.Run("creator nil error", func(t *testing.T) { testVal := adminUser args := []string{"command", "modify", command.Id, "--creator", testVal.Username} output, _ := th.RunCommandWithOutput(t, args...) @@ -385,21 +385,21 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.CreatorId, testVal.Id) }) - t.Run("creator not found", func(t *testing.T) { + t.Run("creator not found", func(t *testing.T) { testVal := "fakeuser" args := []string{"command", "modify", command.Id, "--creator", testVal} output, _ := th.RunCommandWithOutput(t, args...) assert.Contains(t, string(output), "unable to find user") }) - t.Run("creator not admin user", func(t *testing.T) { + t.Run("creator not admin user", func(t *testing.T) { testVal := user.Username args := []string{"command", "modify", command.Id, "--creator", testVal} output, _ := th.RunCommandWithOutput(t, args...) assert.Contains(t, string(output), "the creator must be a user who has permissions to manage slash commands") }) - t.Run("response username nil error", func(t *testing.T) { + t.Run("response username nil error", func(t *testing.T) { testVal := "response-test" args := []string{"command", "modify", command.Id, "--response-username", testVal} output, _ := th.RunCommandWithOutput(t, args...) @@ -408,7 +408,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd.Username, testVal) }) - t.Run("post set and unset", func(t *testing.T) { + t.Run("post set and unset", func(t *testing.T) { args_set := []string{"command", "modify", command.Id, "--post", ""} args_unset := []string{"command", "modify", command.Id, "", ""} @@ -425,7 +425,7 @@ func TestModifyCommand(t *testing.T) { assert.Equal(t, cmd_unset.Method, "G") }) - t.Run("autocomplete set and unset", func(t *testing.T) { + t.Run("autocomplete set and unset", func(t *testing.T) { args_set := []string{"command", "modify", command.Id, "--autocomplete", ""} args_unset := []string{"command", "modify", command.Id, "", ""} diff --git a/cmd/mattermost/commands/main_test.go b/cmd/mattermost/commands/main_test.go index d3507b723c..6292315f0f 100644 --- a/cmd/mattermost/commands/main_test.go +++ b/cmd/mattermost/commands/main_test.go @@ -23,7 +23,7 @@ func TestMain(m *testing.M) { } var options = testlib.HelperOptions{ - EnableStore: true, + EnableStore: true, EnableResources: true, } diff --git a/migrations/main_test.go b/migrations/main_test.go index 7cf8da0bce..0a633023a2 100644 --- a/migrations/main_test.go +++ b/migrations/main_test.go @@ -13,7 +13,7 @@ var mainHelper *testlib.MainHelper func TestMain(m *testing.M) { var options = testlib.HelperOptions{ - EnableStore: true, + EnableStore: true, EnableResources: true, } diff --git a/model/post_test.go b/model/post_test.go index c2e67e37c2..cf66a54cd4 100644 --- a/model/post_test.go +++ b/model/post_test.go @@ -181,14 +181,12 @@ func TestPostSanitizeProps(t *testing.T) { } func TestPost_AttachmentsEqual(t *testing.T) { - post1 := &Post { - } - post2 := &Post { - } + post1 := &Post{} + post2 := &Post{} for name, tc := range map[string]struct { Attachments1 []*SlackAttachment Attachments2 []*SlackAttachment - Expected bool + Expected bool }{ "Empty": { nil, @@ -233,7 +231,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { "DifferentColor": { []*SlackAttachment{ { - Text: "Hello World", + Text: "Hello World", Color: "#152313", }, }, @@ -247,7 +245,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { "EqualFields": { []*SlackAttachment{ { - Fields: []*SlackAttachmentField { + Fields: []*SlackAttachmentField{ { Title: "Hello World", Value: "FooBar", @@ -261,7 +259,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { }, []*SlackAttachment{ { - Fields: []*SlackAttachmentField { + Fields: []*SlackAttachmentField{ { Title: "Hello World", Value: "FooBar", @@ -278,7 +276,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { "DifferentFields": { []*SlackAttachment{ { - Fields: []*SlackAttachmentField { + Fields: []*SlackAttachmentField{ { Title: "Hello World", Value: "FooBar", @@ -288,7 +286,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { }, []*SlackAttachment{ { - Fields: []*SlackAttachmentField { + Fields: []*SlackAttachmentField{ { Title: "Hello World", Value: "FooBar", @@ -310,9 +308,9 @@ func TestPost_AttachmentsEqual(t *testing.T) { Actions: []*PostAction{ { Name: "FooBar", - Options: []*PostActionOptions { + Options: []*PostActionOptions{ { - Text: "abcdef", + Text: "abcdef", Value: "abcdef", }, }, @@ -320,7 +318,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { URL: "http://localhost", Context: map[string]interface{}{ "context": "foobar", - "test": 123, + "test": 123, }, }, }, @@ -332,9 +330,9 @@ func TestPost_AttachmentsEqual(t *testing.T) { Actions: []*PostAction{ { Name: "FooBar", - Options: []*PostActionOptions { + Options: []*PostActionOptions{ { - Text: "abcdef", + Text: "abcdef", Value: "abcdef", }, }, @@ -342,7 +340,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { URL: "http://localhost", Context: map[string]interface{}{ "context": "foobar", - "test": 123, + "test": 123, }, }, }, @@ -357,9 +355,9 @@ func TestPost_AttachmentsEqual(t *testing.T) { Actions: []*PostAction{ { Name: "FooBar", - Options: []*PostActionOptions { + Options: []*PostActionOptions{ { - Text: "abcdef", + Text: "abcdef", Value: "abcdef", }, }, @@ -367,7 +365,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { URL: "http://localhost", Context: map[string]interface{}{ "context": "foobar", - "test": "mattermost", + "test": "mattermost", }, }, }, @@ -379,9 +377,9 @@ func TestPost_AttachmentsEqual(t *testing.T) { Actions: []*PostAction{ { Name: "FooBar", - Options: []*PostActionOptions { + Options: []*PostActionOptions{ { - Text: "abcdef", + Text: "abcdef", Value: "abcdef", }, }, @@ -389,7 +387,7 @@ func TestPost_AttachmentsEqual(t *testing.T) { URL: "http://localhost", Context: map[string]interface{}{ "context": "foobar", - "test": 123, + "test": 123, }, }, }, diff --git a/model/utils_test.go b/model/utils_test.go index 51697f8a12..0b64fdf02b 100644 --- a/model/utils_test.go +++ b/model/utils_test.go @@ -252,8 +252,8 @@ var hashtags = map[string]string{ func TestStringArray_Equal(t *testing.T) { for name, tc := range map[string]struct { - Array1 StringArray - Array2 StringArray + Array1 StringArray + Array2 StringArray Expected bool }{ "Empty": { diff --git a/services/httpservice/client_test.go b/services/httpservice/client_test.go index 25c4eecd50..2dd0f9446b 100644 --- a/services/httpservice/client_test.go +++ b/services/httpservice/client_test.go @@ -149,7 +149,7 @@ func NewHTTPClient(transport http.RoundTripper) *http.Client { func TestIsReservedIP(t *testing.T) { tests := []struct { name string - ip net.IP + ip net.IP want bool }{ {"127.8.3.5", net.IPv4(127, 8, 3, 5), true}, @@ -171,7 +171,7 @@ func TestIsReservedIP(t *testing.T) { func TestIsOwnIP(t *testing.T) { tests := []struct { name string - ip net.IP + ip net.IP want bool }{ {"127.0.0.1", net.IPv4(127, 0, 0, 1), true}, @@ -181,7 +181,7 @@ func TestIsOwnIP(t *testing.T) { t.Run(tt.name, func(t *testing.T) { if got, _ := IsOwnIP(tt.ip); got != tt.want { t.Errorf("IsOwnIP() = %v, want %v", got, tt.want) - t.Errorf(tt.ip.String()); + t.Errorf(tt.ip.String()) } }) } diff --git a/store/sqlstore/team_store.go b/store/sqlstore/team_store.go index 1f6ddebabe..842236158d 100644 --- a/store/sqlstore/team_store.go +++ b/store/sqlstore/team_store.go @@ -194,41 +194,37 @@ func (s SqlTeamStore) Save(team *model.Team) store.StoreChannel { }) } -func (s SqlTeamStore) Update(team *model.Team) store.StoreChannel { - return store.Do(func(result *store.StoreResult) { - team.PreUpdate() +func (s SqlTeamStore) Update(team *model.Team) (*model.Team, *model.AppError) { - if result.Err = team.IsValid(); result.Err != nil { - return - } + team.PreUpdate() - oldResult, err := s.GetMaster().Get(model.Team{}, team.Id) - if err != nil { - result.Err = model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.finding.app_error", nil, "id="+team.Id+", "+err.Error(), http.StatusInternalServerError) - return - } + if err := team.IsValid(); err != nil { + return nil, err + } - if oldResult == nil { - result.Err = model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.find.app_error", nil, "id="+team.Id, http.StatusBadRequest) - return - } + oldResult, err := s.GetMaster().Get(model.Team{}, team.Id) + if err != nil { + return nil, model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.finding.app_error", nil, "id="+team.Id+", "+err.Error(), http.StatusInternalServerError) - oldTeam := oldResult.(*model.Team) - team.CreateAt = oldTeam.CreateAt - team.UpdateAt = model.GetMillis() + } - count, err := s.GetMaster().Update(team) - if err != nil { - result.Err = model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.updating.app_error", nil, "id="+team.Id+", "+err.Error(), http.StatusInternalServerError) - return - } - if count != 1 { - result.Err = model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.app_error", nil, "id="+team.Id, http.StatusInternalServerError) - return - } + if oldResult == nil { + return nil, model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.find.app_error", nil, "id="+team.Id, http.StatusBadRequest) + } - result.Data = team - }) + oldTeam := oldResult.(*model.Team) + team.CreateAt = oldTeam.CreateAt + team.UpdateAt = model.GetMillis() + + count, err := s.GetMaster().Update(team) + if err != nil { + return nil, model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.updating.app_error", nil, "id="+team.Id+", "+err.Error(), http.StatusInternalServerError) + } + if count != 1 { + return nil, model.NewAppError("SqlTeamStore.Update", "store.sql_team.update.app_error", nil, "id="+team.Id, http.StatusInternalServerError) + } + + return team, nil } func (s SqlTeamStore) UpdateDisplayName(name string, teamId string) store.StoreChannel { diff --git a/store/store.go b/store/store.go index 1d4e08768b..33a3ae8ad3 100644 --- a/store/store.go +++ b/store/store.go @@ -82,7 +82,7 @@ type Store interface { type TeamStore interface { Save(team *model.Team) StoreChannel - Update(team *model.Team) StoreChannel + Update(team *model.Team) (*model.Team, *model.AppError) UpdateDisplayName(name string, teamId string) StoreChannel Get(id string) StoreChannel GetByName(name string) StoreChannel diff --git a/store/storetest/group_supplier.go b/store/storetest/group_supplier.go index 479b451747..cc189befe5 100644 --- a/store/storetest/group_supplier.go +++ b/store/storetest/group_supplier.go @@ -1011,16 +1011,16 @@ func testPendingAutoAddTeamMembers(t *testing.T, ss store.Store) { // No result if Team deleted team.DeleteAt = model.GetMillis() - res = <-ss.Team().Update(team) - require.Nil(t, res.Err) + team, err := ss.Team().Update(team) + require.Nil(t, err) res = <-ss.Group().TeamMembersToAdd(0) require.Nil(t, res.Err) require.Len(t, res.Data, 0) // reset state of team and verify team.DeleteAt = 0 - res = <-ss.Team().Update(team) - require.Nil(t, res.Err) + team, err = ss.Team().Update(team) + require.Nil(t, err) res = <-ss.Group().TeamMembersToAdd(0) require.Nil(t, res.Err) require.Len(t, res.Data, 1) diff --git a/store/storetest/mocks/TeamStore.go b/store/storetest/mocks/TeamStore.go index be1bec4019..52aced573c 100644 --- a/store/storetest/mocks/TeamStore.go +++ b/store/storetest/mocks/TeamStore.go @@ -606,19 +606,28 @@ func (_m *TeamStore) SearchPrivate(term string) store.StoreChannel { } // Update provides a mock function with given fields: team -func (_m *TeamStore) Update(team *model.Team) store.StoreChannel { +func (_m *TeamStore) Update(team *model.Team) (*model.Team, *model.AppError) { ret := _m.Called(team) - var r0 store.StoreChannel - if rf, ok := ret.Get(0).(func(*model.Team) store.StoreChannel); ok { + var r0 *model.Team + if rf, ok := ret.Get(0).(func(*model.Team) *model.Team); ok { r0 = rf(team) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(store.StoreChannel) + r0 = ret.Get(0).(*model.Team) } } - return r0 + var r1 *model.AppError + if rf, ok := ret.Get(1).(func(*model.Team) *model.AppError); ok { + r1 = rf(team) + } else { + if ret.Get(1) != nil { + r1 = ret.Get(1).(*model.AppError) + } + } + + return r0, r1 } // UpdateDisplayName provides a mock function with given fields: name, teamId diff --git a/store/storetest/team_store.go b/store/storetest/team_store.go index efffefda77..2d35797d0b 100644 --- a/store/storetest/team_store.go +++ b/store/storetest/team_store.go @@ -27,7 +27,7 @@ func TestTeamStore(t *testing.T, ss store.Store) { t.Run("SearchAll", func(t *testing.T) { testTeamStoreSearchAll(t, ss) }) t.Run("SearchOpen", func(t *testing.T) { testTeamStoreSearchOpen(t, ss) }) t.Run("SearchPrivate", func(t *testing.T) { testTeamStoreSearchPrivate(t, ss) }) - t.Run("GetByIniviteId", func(t *testing.T) { testTeamStoreGetByIniviteId(t, ss) }) + t.Run("GetByInviteId", func(t *testing.T) { testTeamStoreGetByInviteId(t, ss) }) t.Run("ByUserId", func(t *testing.T) { testTeamStoreByUserId(t, ss) }) t.Run("GetAllTeamListing", func(t *testing.T) { testGetAllTeamListing(t, ss) }) t.Run("GetAllTeamPageListing", func(t *testing.T) { testGetAllTeamPageListing(t, ss) }) @@ -86,17 +86,17 @@ func testTeamStoreUpdate(t *testing.T, ss store.Store) { time.Sleep(100 * time.Millisecond) - if err := (<-ss.Team().Update(&o1)).Err; err != nil { + if _, err := ss.Team().Update(&o1); err != nil { t.Fatal(err) } o1.Id = "missing" - if err := (<-ss.Team().Update(&o1)).Err; err == nil { + if _, err := ss.Team().Update(&o1); err == nil { t.Fatal("Update should have failed because of missing key") } o1.Id = model.NewId() - if err := (<-ss.Team().Update(&o1)).Err; err == nil { + if _, err := ss.Team().Update(&o1); err == nil { t.Fatal("Update should have faile because id change") } } @@ -385,7 +385,7 @@ func testTeamStoreSearchPrivate(t *testing.T, ss store.Store) { } } -func testTeamStoreGetByIniviteId(t *testing.T, ss store.Store) { +func testTeamStoreGetByInviteId(t *testing.T, ss store.Store) { o1 := model.Team{} o1.DisplayName = "DisplayName" o1.Name = "z-z-z" + model.NewId() + "b" @@ -416,7 +416,8 @@ func testTeamStoreGetByIniviteId(t *testing.T, ss store.Store) { } o2.InviteId = "" - <-ss.Team().Update(&o2) + _, err := ss.Team().Update(&o2) + require.Nil(t, err) if r1 := <-ss.Team().GetByInviteId(o2.Id); r1.Err != nil { t.Fatal(r1.Err) diff --git a/store/storetest/user_store.go b/store/storetest/user_store.go index bba10c178b..fcc4f3ed56 100644 --- a/store/storetest/user_store.go +++ b/store/storetest/user_store.go @@ -3513,8 +3513,8 @@ func testUserStoreGetTeamGroupUsers(t *testing.T, ss store.Store) { // update team to be group-constrained team.GroupConstrained = model.NewBool(true) - res = <-ss.Team().Update(team) - require.Nil(t, res.Err) + team, err := ss.Team().Update(team) + require.Nil(t, err) // still returns user (being group-constrained has no effect) requireNUsers(1) diff --git a/web/main_test.go b/web/main_test.go index 1898ce40ea..f954dff57e 100644 --- a/web/main_test.go +++ b/web/main_test.go @@ -13,7 +13,7 @@ var mainHelper *testlib.MainHelper func TestMain(m *testing.M) { var options = testlib.HelperOptions{ - EnableStore: true, + EnableStore: true, EnableResources: true, }