MM-45120: Track team join times. Add API to retrieve new team members since a given time. (#20708)

* MM-45120: Starts tracking team join time. Adds API to retrieve team members who joined after a given time.

* MM-45120: Updates json casing to match model.User.
Этот коммит содержится в:
Martin Kraft
2022-08-11 10:38:52 -04:00
коммит произвёл GitHub
родитель 1738bd6e92
Коммит 55b3961b98
27 изменённых файлов: 630 добавлений и 13 удалений

Просмотреть файл

@@ -489,6 +489,36 @@ func (_m *TeamStore) GetMembersByIds(teamID string, userIds []string, restrictio
return r0, r1
}
// GetNewTeamMembersSince provides a mock function with given fields: teamID, since, offset, limit
func (_m *TeamStore) GetNewTeamMembersSince(teamID string, since int64, offset int, limit int) (*model.NewTeamMembersList, int64, error) {
ret := _m.Called(teamID, since, offset, limit)
var r0 *model.NewTeamMembersList
if rf, ok := ret.Get(0).(func(string, int64, int, int) *model.NewTeamMembersList); ok {
r0 = rf(teamID, since, offset, limit)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).(*model.NewTeamMembersList)
}
}
var r1 int64
if rf, ok := ret.Get(1).(func(string, int64, int, int) int64); ok {
r1 = rf(teamID, since, offset, limit)
} else {
r1 = ret.Get(1).(int64)
}
var r2 error
if rf, ok := ret.Get(2).(func(string, int64, int, int) error); ok {
r2 = rf(teamID, since, offset, limit)
} else {
r2 = ret.Error(2)
}
return r0, r1, r2
}
// GetTeamMembersForExport provides a mock function with given fields: userID
func (_m *TeamStore) GetTeamMembersForExport(userID string) ([]*model.TeamMemberForExport, error) {
ret := _m.Called(userID)

Просмотреть файл

@@ -73,6 +73,7 @@ func TestTeamStore(t *testing.T, ss store.Store) {
t.Run("GetTeamMembersForExport", func(t *testing.T) { testTeamStoreGetTeamMembersForExport(t, ss) })
t.Run("GetTeamsForUserWithPagination", func(t *testing.T) { testTeamMembersWithPagination(t, ss) })
t.Run("GroupSyncedTeamCount", func(t *testing.T) { testGroupSyncedTeamCount(t, ss) })
t.Run("GetNewTeamMembersSince", func(t *testing.T) { testGetNewTeamMembersSince(t, ss) })
}
func testTeamStoreSave(t *testing.T, ss store.Store) {
@@ -3618,3 +3619,17 @@ func testGroupSyncedTeamCount(t *testing.T, ss store.Store) {
require.NoError(t, err)
require.GreaterOrEqual(t, countAfter, count+1)
}
func testGetNewTeamMembersSince(t *testing.T, ss store.Store) {
team, err := ss.Team().Save(&model.Team{
DisplayName: NewTestId(),
Name: NewTestId(),
Email: MakeEmail(),
Type: model.TeamInvite,
GroupConstrained: model.NewBool(true),
})
require.NoError(t, err)
_, _, err = ss.Team().GetNewTeamMembersSince(team.Id, 0, 0, 1000)
require.NoError(t, err)
}