Enable the errorAssertions govet check for mattermost-server code (#17346)

* Enable the errorAssertions govet check for mattermost-server code

* Removing unnecesary change

* Fixing some tests

* Fixing tests

* Fixing more after merge

* Fixing new offending entries

* Fixing small vet checks

* Fixing new cases detected by govet

* Fixing remote_cluster_test errors

* Fixing assertion

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
Jesús Espino
2021-04-12 12:51:31 +02:00
коммит произвёл GitHub
родитель e37e902ddf
Коммит 35d00b4644
22 изменённых файлов: 202 добавлений и 199 удалений

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

@@ -603,7 +603,7 @@ vet: ## Run mattermost go vet specific checks
echo "mattermost-govet is not installed. Please install it executing \"GO111MODULE=off GOBIN=$(PWD)/bin go get -u github.com/mattermost/mattermost-govet\""; \
exit 1; \
fi;
@VET_CMD="-license -structuredLogging -inconsistentReceiverName -inconsistentReceiverName.ignore=session_serial_gen.go,team_member_serial_gen.go,user_serial_gen.go -emptyStrCmp -tFatal -configtelemetry"; \
@VET_CMD="-license -structuredLogging -inconsistentReceiverName -inconsistentReceiverName.ignore=session_serial_gen.go,team_member_serial_gen.go,user_serial_gen.go -emptyStrCmp -tFatal -configtelemetry -errorAssertions"; \
if ! [ -z "${MM_VET_OPENSPEC_PATH}" ] && [ -f "${MM_VET_OPENSPEC_PATH}" ]; then \
VET_CMD="$$VET_CMD -openApiSync -openApiSync.spec=$$MM_VET_OPENSPEC_PATH"; \
else \

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

@@ -1085,37 +1085,37 @@ func TestSearchFiles(t *testing.T) {
Client := th.Client
filename := "search for fileInfo1"
fileInfo1, err := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, err)
fileInfo1, appErr := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, appErr)
err = th.App.Srv().Store.FileInfo().AttachToPost(fileInfo1.Id, th.BasicPost.Id, th.BasicUser.Id)
require.Nil(t, err)
require.NoError(t, err)
filename = "search for fileInfo2"
fileInfo2, err := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, err)
fileInfo2, appErr := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, appErr)
err = th.App.Srv().Store.FileInfo().AttachToPost(fileInfo2.Id, th.BasicPost.Id, th.BasicUser.Id)
require.Nil(t, err)
require.NoError(t, err)
filename = "tagged search for fileInfo3"
fileInfo3, err := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, err)
fileInfo3, appErr := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, appErr)
err = th.App.Srv().Store.FileInfo().AttachToPost(fileInfo3.Id, th.BasicPost.Id, th.BasicUser.Id)
require.Nil(t, err)
require.NoError(t, err)
filename = "tagged for fileInfo4"
fileInfo4, err := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, err)
fileInfo4, appErr := th.App.UploadFile(data, th.BasicChannel.Id, filename)
require.Nil(t, appErr)
err = th.App.Srv().Store.FileInfo().AttachToPost(fileInfo4.Id, th.BasicPost.Id, th.BasicUser.Id)
require.Nil(t, err)
require.NoError(t, err)
archivedChannel := th.CreatePublicChannel()
fileInfo5, err := th.App.UploadFile(data, archivedChannel.Id, "tagged for fileInfo3")
require.Nil(t, err)
fileInfo5, appErr := th.App.UploadFile(data, archivedChannel.Id, "tagged for fileInfo3")
require.Nil(t, appErr)
post := &model.Post{ChannelId: archivedChannel.Id, Message: model.NewId() + "a"}
rpost, resp := Client.CreatePost(post)
CheckNoError(t, resp)
err = th.App.Srv().Store.FileInfo().AttachToPost(fileInfo5.Id, rpost.Id, th.BasicUser.Id)
require.Nil(t, err)
require.NoError(t, err)
th.Client.DeleteChannel(archivedChannel.Id)
terms := "search"

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

@@ -2926,7 +2926,7 @@ func TestInviteGuestsToTeam(t *testing.T) {
t.Run("invalid data in request body", func(t *testing.T) {
res, err := th.SystemAdminClient.DoApiPost(th.SystemAdminClient.GetTeamRoute(th.BasicTeam.Id)+"/invite-guests/email", "bad data")
require.Error(t, err)
require.NotNil(t, err)
require.Equal(t, "api.team.invite_guests_to_channels.invalid_body.app_error", err.Id)
require.Equal(t, http.StatusBadRequest, res.StatusCode)
})

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

@@ -3384,7 +3384,7 @@ func TestLoginWithLag(t *testing.T) {
defer mainHelper.ToggleReplicasOff()
cmdErr := mainHelper.SetReplicationLagForTesting(5)
require.Nil(t, cmdErr)
require.NoError(t, cmdErr)
defer mainHelper.SetReplicationLagForTesting(0)
_, resp := th.Client.Login(th.BasicUser.Email, th.BasicUser.Password)
@@ -6083,7 +6083,7 @@ func TestSetProfileImageWithProviderAttributes(t *testing.T) {
doCleanup := func(t *testing.T, th *TestHelper, user *model.User) {
info := &model.FileInfo{Path: "users/" + user.Id + "/profile.png"}
err = th.cleanupTestFile(info)
require.Nil(t, err)
require.NoError(t, err)
}
t.Run("LDAP user", func(t *testing.T) {

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

@@ -1689,7 +1689,7 @@ func TestPatchChannelModerationsForChannel(t *testing.T) {
},
},
{
Name: "Removing manage members from guests role should error",
Name: "Removing manage members from guests role should not error",
ChannelModerationsPatch: []*model.ChannelModerationPatch{
{
Name: &manageMembers,
@@ -1697,10 +1697,11 @@ func TestPatchChannelModerationsForChannel(t *testing.T) {
},
},
PermissionsModeratedByPatch: map[string]*model.ChannelModeratedRoles{},
ShouldError: true,
ShouldError: false,
ShouldHaveNoChannelScheme: true,
},
{
Name: "Removing a permission that is not channel moderated should error",
Name: "Removing a permission that is not channel moderated should not error",
ChannelModerationsPatch: []*model.ChannelModerationPatch{
{
Name: &nonChannelModeratedPermission,
@@ -1711,7 +1712,8 @@ func TestPatchChannelModerationsForChannel(t *testing.T) {
},
},
PermissionsModeratedByPatch: map[string]*model.ChannelModeratedRoles{},
ShouldError: true,
ShouldError: false,
ShouldHaveNoChannelScheme: true,
},
{
Name: "Error when adding a permission that is disabled in the parent member role",
@@ -1829,12 +1831,12 @@ func TestPatchChannelModerationsForChannel(t *testing.T) {
}
}
moderations, err := th.App.PatchChannelModerationsForChannel(channel, tc.ChannelModerationsPatch)
moderations, appErr := th.App.PatchChannelModerationsForChannel(channel, tc.ChannelModerationsPatch)
if tc.ShouldError {
require.Error(t, err)
require.NotNil(t, appErr)
return
}
require.Nil(t, err)
require.Nil(t, appErr)
updatedChannel, _ := th.App.GetChannel(channel.Id)
if tc.ShouldHaveNoChannelScheme {

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

@@ -283,7 +283,7 @@ func TestCreateZipFileAndAddFiles(t *testing.T) {
err := th.App.CreateZipFileAndAddFiles(&mockBackend, []model.FileData{}, "zip-file-name-to-heaven.zip", "directory-to-heaven")
require.NotNil(t, err)
require.Error(t, err)
require.Equal(t, err.Error(), "only those who dare to fail greatly can ever achieve greatly")
mockBackend = filesStoreMocks.FileBackend{}
@@ -371,7 +371,7 @@ func TestSearchFilesInTeamForUser(t *testing.T) {
})
time.Sleep(1 * time.Millisecond)
require.Nil(t, err)
require.NoError(t, err)
fileInfos[i] = fileInfo
}

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

@@ -2030,26 +2030,26 @@ func TestReplyToPostWithLag(t *testing.T) {
t.Run("replication lag time great than reply time", func(t *testing.T) {
err := mainHelper.SetReplicationLagForTesting(5)
require.Nil(t, err)
require.NoError(t, err)
defer mainHelper.SetReplicationLagForTesting(0)
mainHelper.ToggleReplicasOn()
defer mainHelper.ToggleReplicasOff()
root, err := th.App.CreatePost(&model.Post{
root, appErr := th.App.CreatePost(&model.Post{
UserId: th.BasicUser.Id,
ChannelId: th.BasicChannel.Id,
Message: "root post",
}, th.BasicChannel, false, true)
require.Nil(t, err)
require.Nil(t, appErr)
reply, err := th.App.CreatePost(&model.Post{
reply, appErr := th.App.CreatePost(&model.Post{
UserId: th.BasicUser2.Id,
ChannelId: th.BasicChannel.Id,
RootId: root.Id,
ParentId: root.Id,
Message: fmt.Sprintf("@%s", th.BasicUser2.Username),
}, th.BasicChannel, false, true)
require.Nil(t, err)
require.Nil(t, appErr)
require.NotNil(t, reply)
})
}

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

@@ -32,7 +32,7 @@ func TestAddRemoteCluster(t *testing.T) {
remoteCluster.RemoteId = model.NewId()
_, err = th.App.AddRemoteCluster(remoteCluster)
require.Error(t, err, "Adding a duplicate remote cluster should error")
require.NotNil(t, err, "Adding a duplicate remote cluster should error")
assert.Contains(t, err.Error(), "Remote cluster has already been added.")
})
@@ -103,7 +103,7 @@ func TestUpdateRemoteCluster(t *testing.T) {
savedRemoteClustered.SiteURL = remoteCluster.SiteURL
savedRemoteClustered.RemoteTeamId = remoteCluster.RemoteTeamId
_, err = th.App.UpdateRemoteCluster(savedRemoteClustered)
require.Error(t, err, "Updating remote cluster with duplicate site url should error")
require.NotNil(t, err, "Updating remote cluster with duplicate site url should error")
assert.Contains(t, err.Error(), "Remote cluster with the same url already exists.")
})

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

@@ -173,10 +173,10 @@ func TestStartServerNoS3Bucket(t *testing.T) {
require.NoError(t, err)
// ensure that a new bucket was created
backend, err := s.FileBackend()
require.Nil(t, err)
backend, appErr := s.FileBackend()
require.Nil(t, appErr)
err = backend.(*filestore.S3FileBackend).TestConnection()
require.Nil(t, err)
require.NoError(t, err)
}
func TestStartServerTLSSuccess(t *testing.T) {

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

@@ -465,13 +465,13 @@ func TestGetRemoteClusterSession(t *testing.T) {
t.Run("Invalid remote token should return error", func(t *testing.T) {
session, err := th.App.GetRemoteClusterSession(model.NewId(), remoteId)
require.Error(t, err)
require.NotNil(t, err)
require.Nil(t, session)
})
t.Run("Invalid remote id should return error", func(t *testing.T) {
session, err := th.App.GetRemoteClusterSession(token, model.NewId())
require.Error(t, err)
require.NotNil(t, err)
require.Nil(t, session)
})
}

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

@@ -118,7 +118,8 @@ func TestSetDefaultProfileImage(t *testing.T) {
Id: model.NewId(),
Username: "notvaliduser",
})
require.Error(t, err)
// It doesn't fail, but it does nothing
require.Nil(t, err)
user := th.BasicUser

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

@@ -82,7 +82,7 @@ func getActualDatabaseConfig(t *testing.T) (string, *model.Config) {
var actualCfg *model.Config
err = json.Unmarshal(actual.Value, &actualCfg)
require.Nil(t, err)
require.NoError(t, err)
return actual.ID, actualCfg
}
var actual struct {
@@ -95,7 +95,7 @@ func getActualDatabaseConfig(t *testing.T) (string, *model.Config) {
var actualCfg *model.Config
err = json.Unmarshal(actual.Value, &actualCfg)
require.Nil(t, err)
require.NoError(t, err)
return actual.ID, actualCfg
}

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

@@ -54,12 +54,12 @@ func getActualFileConfig(t *testing.T, path string) *model.Config {
t.Helper()
f, err := os.Open(path)
require.Nil(t, err)
require.NoError(t, err)
defer f.Close()
var actualCfg *model.Config
err = json.NewDecoder(f).Decode(&actualCfg)
require.Nil(t, err)
require.NoError(t, err)
return actualCfg
}

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

@@ -35,7 +35,7 @@ func TestGetMigrationState(t *testing.T) {
Value: "true",
}
nErr := th.App.Srv().Store.System().Save(&system)
assert.Nil(t, nErr)
assert.NoError(t, nErr)
state, job, err = GetMigrationState(migrationKey, th.App.Srv().Store)
assert.Nil(t, err)
@@ -43,7 +43,7 @@ func TestGetMigrationState(t *testing.T) {
assert.Equal(t, "completed", state)
_, nErr = th.App.Srv().Store.System().PermanentDeleteByName(migrationKey)
assert.Nil(t, nErr)
assert.NoError(t, nErr)
// Test with a job scheduled in "pending" state.
j1 := &model.Job{
@@ -57,7 +57,7 @@ func TestGetMigrationState(t *testing.T) {
}
j1, nErr = th.App.Srv().Store.Job().Save(j1)
require.Nil(t, nErr)
require.NoError(t, nErr)
state, job, err = GetMigrationState(migrationKey, th.App.Srv().Store)
assert.Nil(t, err)
@@ -76,7 +76,7 @@ func TestGetMigrationState(t *testing.T) {
}
j2, nErr = th.App.Srv().Store.Job().Save(j2)
require.Nil(t, nErr)
require.NoError(t, nErr)
state, job, err = GetMigrationState(migrationKey, th.App.Srv().Store)
assert.Nil(t, err)
@@ -95,7 +95,7 @@ func TestGetMigrationState(t *testing.T) {
}
j3, nErr = th.App.Srv().Store.Job().Save(j3)
require.Nil(t, nErr)
require.NoError(t, nErr)
state, job, err = GetMigrationState(migrationKey, th.App.Srv().Store)
assert.Nil(t, err)

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

@@ -20,8 +20,8 @@ func TestRemoteClusterJson(t *testing.T) {
json, err := o.ToJSON()
require.NoError(t, err)
ro, err := RemoteClusterFromJSON(strings.NewReader(json))
require.Nil(t, err)
ro, appErr := RemoteClusterFromJSON(strings.NewReader(json))
require.Nil(t, appErr)
require.Equal(t, o.RemoteId, ro.RemoteId)
require.Equal(t, o.DisplayName, ro.DisplayName)
@@ -72,8 +72,8 @@ func TestRemoteClusterMsgJson(t *testing.T) {
json, err := json.Marshal(o)
require.NoError(t, err)
ro, err := RemoteClusterMsgFromJSON(strings.NewReader(string(json)))
require.Nil(t, err)
ro, appErr := RemoteClusterMsgFromJSON(strings.NewReader(string(json)))
require.Nil(t, appErr)
require.Equal(t, o.Id, ro.Id)
require.Equal(t, o.CreateAt, ro.CreateAt)

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

@@ -572,7 +572,7 @@ func TestShouldProcessMessage(t *testing.T) {
api.On("KVGet", plugin.BotUserKey).Return(nil, nil)
shouldProcessMessage, err := p.ShouldProcessMessage(&model.Post{ChannelId: channelID, UserId: userID}, plugin.BotID(expectedBotID))
assert.Nil(t, err)
assert.NoError(t, err)
assert.True(t, shouldProcessMessage)
})

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

@@ -119,7 +119,7 @@ func TestPing(t *testing.T) {
wg.Wait()
assert.Nil(t, merr.ErrorOrNil())
assert.NoError(t, merr.ErrorOrNil())
assert.Equal(t, int32(NumRemotes), atomic.LoadInt32(&countWebReq))
t.Log(fmt.Sprintf("%d web requests counted; %d expected",

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

@@ -279,13 +279,13 @@ func TestUserStoreGetManyCache(t *testing.T) {
require.NoError(t, err)
gotUsers, err := cachedStore.User().GetMany(context.Background(), []string{fakeUser.Id, otherFakeUser.Id})
require.Nil(t, err)
require.NoError(t, err)
assert.Len(t, gotUsers, 2)
assert.Contains(t, gotUsers, fakeUser)
assert.Contains(t, gotUsers, otherFakeUser)
gotUsers, err = cachedStore.User().GetMany(context.Background(), []string{fakeUser.Id, otherFakeUser.Id})
require.Nil(t, err)
require.NoError(t, err)
assert.Len(t, gotUsers, 2)
mockStore.User().(*mocks.UserStore).AssertNumberOfCalls(t, "GetMany", 1)
})
@@ -297,7 +297,7 @@ func TestUserStoreGetManyCache(t *testing.T) {
require.NoError(t, err)
gotUsers, err := cachedStore.User().GetMany(context.Background(), []string{fakeUser.Id, otherFakeUser.Id})
require.Nil(t, err)
require.NoError(t, err)
assert.Len(t, gotUsers, 2)
assert.Contains(t, gotUsers, fakeUser)
assert.Contains(t, gotUsers, otherFakeUser)

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

@@ -625,13 +625,13 @@ func testFileInfoStoreGetFilesBatchForIndexing(t *testing.T, ss store.Store) {
o1.UserId = model.NewId()
o1.Message = "zz" + model.NewId() + "AAAAAAAAAAA"
o1, err := ss.Post().Save(o1)
require.Nil(t, err)
require.NoError(t, err)
f1, err := ss.FileInfo().Save(&model.FileInfo{
PostId: o1.Id,
CreatorId: model.NewId(),
Path: "file1.txt",
})
require.Nil(t, err)
require.NoError(t, err)
defer func() {
ss.FileInfo().PermanentDelete(f1.Id)
}()
@@ -642,14 +642,14 @@ func testFileInfoStoreGetFilesBatchForIndexing(t *testing.T, ss store.Store) {
o2.UserId = model.NewId()
o2.Message = "zz" + model.NewId() + "CCCCCCCCC"
o2, err = ss.Post().Save(o2)
require.Nil(t, err)
require.NoError(t, err)
f2, err := ss.FileInfo().Save(&model.FileInfo{
PostId: o2.Id,
CreatorId: model.NewId(),
Path: "file2.txt",
})
require.Nil(t, err)
require.NoError(t, err)
defer func() {
ss.FileInfo().PermanentDelete(f2.Id)
}()
@@ -662,21 +662,21 @@ func testFileInfoStoreGetFilesBatchForIndexing(t *testing.T, ss store.Store) {
o3.RootId = o1.Id
o3.Message = "zz" + model.NewId() + "QQQQQQQQQQ"
o3, err = ss.Post().Save(o3)
require.Nil(t, err)
require.NoError(t, err)
f3, err := ss.FileInfo().Save(&model.FileInfo{
PostId: o3.Id,
CreatorId: model.NewId(),
Path: "file3.txt",
})
require.Nil(t, err)
require.NoError(t, err)
defer func() {
ss.FileInfo().PermanentDelete(f3.Id)
}()
t.Run("get all files", func(t *testing.T) {
r, err := ss.FileInfo().GetFilesBatchForIndexing(f1.CreateAt, model.GetMillis()+100000, 100)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, r, 3, "Expected 3 posts in results. Got %v", len(r))
for _, f := range r {
if f.Id == f1.Id {
@@ -696,7 +696,7 @@ func testFileInfoStoreGetFilesBatchForIndexing(t *testing.T, ss store.Store) {
t.Run("get files after certain date", func(t *testing.T) {
r, err := ss.FileInfo().GetFilesBatchForIndexing(f1.CreateAt+1, model.GetMillis()+100000, 100)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, r, 2, "Expected 2 posts in results. Got %v", len(r))
for _, f := range r {
if f.Id == f2.Id {
@@ -714,34 +714,34 @@ func testFileInfoStoreGetFilesBatchForIndexing(t *testing.T, ss store.Store) {
func testFileInfoStoreCountAll(t *testing.T, ss store.Store) {
_, err := ss.FileInfo().PermanentDeleteBatch(model.GetMillis(), 100000)
require.Nil(t, err)
require.NoError(t, err)
f1, err := ss.FileInfo().Save(&model.FileInfo{
PostId: model.NewId(),
CreatorId: model.NewId(),
Path: "file1.txt",
})
require.Nil(t, err)
require.NoError(t, err)
_, err = ss.FileInfo().Save(&model.FileInfo{
PostId: model.NewId(),
CreatorId: model.NewId(),
Path: "file2.txt",
})
require.Nil(t, err)
require.NoError(t, err)
_, err = ss.FileInfo().Save(&model.FileInfo{
PostId: model.NewId(),
CreatorId: model.NewId(),
Path: "file3.txt",
})
require.Nil(t, err)
require.NoError(t, err)
count, err := ss.FileInfo().CountAll()
require.Nil(t, err)
require.NoError(t, err)
require.Equal(t, int64(3), count)
_, err = ss.FileInfo().DeleteForPost(f1.PostId)
require.Nil(t, err)
require.NoError(t, err)
count, err = ss.FileInfo().CountAll()
require.Nil(t, err)
require.NoError(t, err)
require.Equal(t, int64(2), count)
}

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

@@ -317,24 +317,24 @@ func testReactionGetForPostSince(t *testing.T, ss store.Store, s SqlStore) {
update := reaction.UpdateAt
_, err := ss.Reaction().Save(reaction)
require.Nil(t, err)
require.NoError(t, err)
if delete > 0 {
_, err = ss.Reaction().Delete(reaction)
require.Nil(t, err)
require.NoError(t, err)
}
if update > 0 {
err = forceUpdateAt(reaction, update, s)
require.Nil(t, err)
require.NoError(t, err)
}
err = forceNULL(reaction, s) // test COALESCE
require.Nil(t, err)
require.NoError(t, err)
}
t.Run("reactions since", func(t *testing.T) {
// should return 2 reactions that are not deleted for post
returned, err := ss.Reaction().GetForPostSince(postId, later-1, "", false)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, returned, 2, "should've returned 2 non-deleted reactions")
for _, r := range returned {
assert.Zero(t, r.DeleteAt, "should not have returned deleted reaction")
@@ -345,7 +345,7 @@ func testReactionGetForPostSince(t *testing.T, ss store.Store, s SqlStore) {
t.Run("reactions since, incl deleted", func(t *testing.T) {
// should return 3 reactions for post, including one deleted
returned, err := ss.Reaction().GetForPostSince(postId, later-1, "", true)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, returned, 3, "should've returned 3 reactions")
var count int
for _, r := range returned {
@@ -360,7 +360,7 @@ func testReactionGetForPostSince(t *testing.T, ss store.Store, s SqlStore) {
t.Run("reactions since, filter remoteId", func(t *testing.T) {
// should return 1 reactions that are not deleted for post and have no remoteId
returned, err := ss.Reaction().GetForPostSince(postId, later-1, remoteId, false)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, returned, 1, "should've returned 1 filtered reactions")
for _, r := range returned {
assert.Zero(t, r.DeleteAt, "should not have returned deleted reaction")
@@ -370,14 +370,14 @@ func testReactionGetForPostSince(t *testing.T, ss store.Store, s SqlStore) {
t.Run("reactions since, invalid post", func(t *testing.T) {
// should return 0 reactions for invalid post
returned, err := ss.Reaction().GetForPostSince(model.NewId(), later-1, "", true)
require.Nil(t, err)
require.NoError(t, err)
require.Empty(t, returned, "should've returned 0 reactions")
})
t.Run("reactions since, far future", func(t *testing.T) {
// should return 0 reactions for since far in the future
returned, err := ss.Reaction().GetForPostSince(postId, later*2, "", true)
require.Nil(t, err)
require.NoError(t, err)
require.Empty(t, returned, "should've returned 0 reactions")
})
}
@@ -477,12 +477,12 @@ func testReactionDeleteAllWithEmojiName(t *testing.T, ss store.Store, s SqlStore
for _, reaction := range reactions {
_, err := ss.Reaction().Save(reaction)
require.Nil(t, err)
require.NoError(t, err)
// make at least one Reaction record contain NULL for Update and DeleteAt to simulate post schema upgrade case.
if reaction.EmojiName == emojiToDelete {
err = forceNULL(reaction, s)
require.Nil(t, err)
require.NoError(t, err)
}
}

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

@@ -35,7 +35,7 @@ func testRemoteClusterSave(t *testing.T, ss store.Store) {
}
rcSaved, err := ss.RemoteCluster().Save(rc)
require.Nil(t, err)
require.NoError(t, err)
require.Equal(t, rc.DisplayName, rcSaved.DisplayName)
require.Equal(t, rc.SiteURL, rcSaved.SiteURL)
require.Greater(t, rc.CreateAt, int64(0))
@@ -48,7 +48,7 @@ func testRemoteClusterSave(t *testing.T, ss store.Store) {
CreatorId: model.NewId(),
}
_, err := ss.RemoteCluster().Save(rc)
require.NotNil(t, err)
require.Error(t, err)
})
t.Run("Save missing creator id", func(t *testing.T) {
@@ -57,7 +57,7 @@ func testRemoteClusterSave(t *testing.T, ss store.Store) {
SiteURL: "somewhere.com",
}
_, err := ss.RemoteCluster().Save(rc)
require.NotNil(t, err)
require.Error(t, err)
})
}
@@ -69,16 +69,16 @@ func testRemoteClusterDelete(t *testing.T, ss store.Store) {
CreatorId: model.NewId(),
}
rcSaved, err := ss.RemoteCluster().Save(rc)
require.Nil(t, err)
require.NoError(t, err)
deleted, err := ss.RemoteCluster().Delete(rcSaved.RemoteId)
require.Nil(t, err)
require.NoError(t, err)
require.True(t, deleted)
})
t.Run("Delete nonexistent", func(t *testing.T) {
deleted, err := ss.RemoteCluster().Delete(model.NewId())
require.Nil(t, err)
require.NoError(t, err)
require.False(t, deleted)
})
}
@@ -91,16 +91,16 @@ func testRemoteClusterGet(t *testing.T, ss store.Store) {
CreatorId: model.NewId(),
}
rcSaved, err := ss.RemoteCluster().Save(rc)
require.Nil(t, err)
require.NoError(t, err)
rcGet, err := ss.RemoteCluster().Get(rcSaved.RemoteId)
require.Nil(t, err)
require.NoError(t, err)
require.Equal(t, rcSaved.RemoteId, rcGet.RemoteId)
})
t.Run("Get not found", func(t *testing.T) {
_, err := ss.RemoteCluster().Get(model.NewId())
require.NotNil(t, err)
require.Error(t, err)
})
}
@@ -127,7 +127,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
for _, item := range data {
online := item.LastPingAt == now
saved, err := ss.RemoteCluster().Save(item)
require.Nil(t, err)
require.NoError(t, err)
idsAll = append(idsAll, saved.RemoteId)
if online {
idsOnline = append(idsOnline, saved.RemoteId)
@@ -142,7 +142,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
t.Run("GetAll", func(t *testing.T) {
filter := model.RemoteClusterQueryFilter{}
remotes, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
// make sure all the test data remotes were returned.
ids := getIds(remotes)
assert.ElementsMatch(t, ids, idsAll)
@@ -153,7 +153,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
ExcludeOffline: true,
}
remotes, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
// make sure all the online remotes were returned.
ids := getIds(remotes)
assert.ElementsMatch(t, ids, idsOnline)
@@ -164,7 +164,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
Topic: "shared",
}
remotes, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
// make sure only correct topic returned
ids := getIds(remotes)
assert.ElementsMatch(t, ids, idsShareTopic)
@@ -176,7 +176,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
Topic: "shared",
}
remotes, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
// make sure only online remotes were returned.
ids := getIds(remotes)
assert.Subset(t, idsOnline, ids)
@@ -190,7 +190,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
CreatorId: userId,
}
remotes, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
// make sure only correct creator returned
assert.Len(t, remotes, 3)
for _, rc := range remotes {
@@ -203,7 +203,7 @@ func testRemoteClusterGetAll(t *testing.T, ss store.Store) {
OnlyConfirmed: true,
}
remotes, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
// make sure only confirmed returned
assert.Len(t, remotes, 4)
for _, rc := range remotes {
@@ -219,13 +219,13 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
userId := model.NewId()
channel1, err := createTestChannel(ss, "channel_1")
require.Nil(t, err)
require.NoError(t, err)
channel2, err := createTestChannel(ss, "channel_2")
require.Nil(t, err)
require.NoError(t, err)
channel3, err := createTestChannel(ss, "channel_3")
require.Nil(t, err)
require.NoError(t, err)
// Create shared channels
scData := []*model.SharedChannel{
@@ -235,7 +235,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
}
for _, item := range scData {
_, err := ss.SharedChannel().Save(item)
require.Nil(t, err)
require.NoError(t, err)
}
// Create some remote clusters
@@ -248,7 +248,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
}
for _, item := range rcData {
_, err := ss.RemoteCluster().Save(item)
require.Nil(t, err)
require.NoError(t, err)
}
// Create some shared channel remotes
@@ -261,7 +261,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
}
for _, item := range scrData {
_, err := ss.SharedChannel().SaveRemote(item)
require.Nil(t, err)
require.NoError(t, err)
}
t.Run("Channel 1", func(t *testing.T) {
@@ -269,7 +269,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
InChannel: channel1.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 2, "channel 1 should have 2 remote clusters")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[0].RemoteId, rcData[1].RemoteId}, ids)
@@ -281,7 +281,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
InChannel: channel1.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 1, "channel 1 should have 1 online remote clusters")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[0].RemoteId}, ids)
@@ -292,7 +292,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
InChannel: channel2.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 3, "channel 2 should have 3 remote clusters")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[2].RemoteId, rcData[3].RemoteId, rcData[4].RemoteId}, ids)
@@ -304,7 +304,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
InChannel: channel2.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 2, "channel 2 should have 2 online remote clusters")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[2].RemoteId, rcData[3].RemoteId}, ids)
@@ -315,7 +315,7 @@ func testRemoteClusterGetAllInChannel(t *testing.T, ss store.Store) {
InChannel: channel3.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Empty(t, list, "channel 3 should have 0 remote clusters")
})
}
@@ -326,13 +326,13 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
userId := model.NewId()
channel1, err := createTestChannel(ss, "channel_1")
require.Nil(t, err)
require.NoError(t, err)
channel2, err := createTestChannel(ss, "channel_2")
require.Nil(t, err)
require.NoError(t, err)
channel3, err := createTestChannel(ss, "channel_3")
require.Nil(t, err)
require.NoError(t, err)
// Create shared channels
scData := []*model.SharedChannel{
@@ -342,7 +342,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
}
for _, item := range scData {
_, err := ss.SharedChannel().Save(item)
require.Nil(t, err)
require.NoError(t, err)
}
// Create some remote clusters
@@ -355,7 +355,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
}
for _, item := range rcData {
_, err := ss.RemoteCluster().Save(item)
require.Nil(t, err)
require.NoError(t, err)
}
// Create some shared channel remotes
@@ -368,7 +368,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
}
for _, item := range scrData {
_, err := ss.SharedChannel().SaveRemote(item)
require.Nil(t, err)
require.NoError(t, err)
}
t.Run("Channel 1", func(t *testing.T) {
@@ -376,7 +376,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
NotInChannel: channel1.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 3, "channel 1 should have 3 remote clusters that are not already members")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[2].RemoteId, rcData[3].RemoteId, rcData[4].RemoteId}, ids)
@@ -387,7 +387,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
NotInChannel: channel2.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 3, "channel 2 should have 3 remote clusters that are not already members")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[0].RemoteId, rcData[1].RemoteId, rcData[4].RemoteId}, ids)
@@ -398,7 +398,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
NotInChannel: channel3.Id,
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 4, "channel 3 should have 4 remote clusters that are not already members")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[0].RemoteId, rcData[1].RemoteId, rcData[2].RemoteId, rcData[3].RemoteId}, ids)
@@ -409,7 +409,7 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, ss store.Store) {
NotInChannel: model.NewId(),
}
list, err := ss.RemoteCluster().GetAll(filter)
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, list, 5, "should have 5 remote clusters that are not already members")
ids := getIds(list)
require.ElementsMatch(t, []string{rcData[0].RemoteId, rcData[1].RemoteId, rcData[2].RemoteId, rcData[3].RemoteId,
@@ -439,7 +439,7 @@ func testRemoteClusterGetByTopic(t *testing.T, ss store.Store) {
}
for _, item := range rcData {
_, err := ss.RemoteCluster().Save(item)
require.Nil(t, err)
require.NoError(t, err)
}
testData := []struct {
@@ -481,7 +481,7 @@ func testRemoteClusterUpdateTopics(t *testing.T, ss store.Store) {
}
_, err := ss.RemoteCluster().Save(rc)
require.Nil(t, err)
require.NoError(t, err)
testData := []struct {
topics string

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

@@ -46,7 +46,7 @@ func TestSharedChannelStore(t *testing.T, ss store.Store, s SqlStore) {
func testSaveSharedChannel(t *testing.T, ss store.Store) {
t.Run("Save shared channel (home)", func(t *testing.T) {
channel, err := createTestChannel(ss, "test_save")
require.Nil(t, err)
require.NoError(t, err)
sc := &model.SharedChannel{
ChannelId: channel.Id,
@@ -71,7 +71,7 @@ func testSaveSharedChannel(t *testing.T, ss store.Store) {
t.Run("Save shared channel (remote)", func(t *testing.T) {
channel, err := createTestChannel(ss, "test_save2")
require.Nil(t, err)
require.NoError(t, err)
sc := &model.SharedChannel{
ChannelId: channel.Id,
@@ -82,7 +82,7 @@ func testSaveSharedChannel(t *testing.T, ss store.Store) {
}
scSaved, err := ss.SharedChannel().Save(sc)
require.Nil(t, err, "couldn't save shared channel", err)
require.NoError(t, err, "couldn't save shared channel", err)
require.Equal(t, sc.ChannelId, scSaved.ChannelId)
require.Equal(t, sc.TeamId, scSaved.TeamId)
@@ -104,7 +104,7 @@ func testSaveSharedChannel(t *testing.T, ss store.Store) {
}
_, err := ss.SharedChannel().Save(sc)
require.NotNil(t, err, "should error saving invalid shared channel", err)
require.Error(t, err, "should error saving invalid shared channel", err)
})
t.Run("Save with invalid channel id", func(t *testing.T) {
@@ -123,7 +123,7 @@ func testSaveSharedChannel(t *testing.T, ss store.Store) {
func testGetSharedChannel(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_get")
require.Nil(t, err)
require.NoError(t, err)
sc := &model.SharedChannel{
ChannelId: channel.Id,
@@ -134,11 +134,11 @@ func testGetSharedChannel(t *testing.T, ss store.Store) {
}
scSaved, err := ss.SharedChannel().Save(sc)
require.Nil(t, err, "couldn't save shared channel", err)
require.NoError(t, err, "couldn't save shared channel", err)
t.Run("Get existing shared channel", func(t *testing.T) {
sc, err := ss.SharedChannel().Get(scSaved.ChannelId)
require.Nil(t, err, "couldn't get shared channel", err)
require.NoError(t, err, "couldn't get shared channel", err)
require.Equal(t, sc.ChannelId, scSaved.ChannelId)
require.Equal(t, sc.TeamId, scSaved.TeamId)
@@ -147,14 +147,14 @@ func testGetSharedChannel(t *testing.T, ss store.Store) {
t.Run("Get non-existent shared channel", func(t *testing.T) {
sc, err := ss.SharedChannel().Get(model.NewId())
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, sc)
})
}
func testHasSharedChannel(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_get")
require.Nil(t, err)
require.NoError(t, err)
sc := &model.SharedChannel{
ChannelId: channel.Id,
@@ -202,12 +202,12 @@ func testGetSharedChannels(t *testing.T, ss store.Store) {
for i, sc := range data {
channel, err := createTestChannel(ss, "test_get2_"+strconv.Itoa(i))
require.Nil(t, err)
require.NoError(t, err)
sc.ChannelId = channel.Id
_, err = ss.SharedChannel().Save(&sc)
require.Nil(t, err, "error saving shared channel")
require.NoError(t, err, "error saving shared channel")
}
t.Run("Get shared channels home only", func(t *testing.T) {
@@ -217,10 +217,10 @@ func testGetSharedChannels(t *testing.T, ss store.Store) {
}
count, err := ss.SharedChannel().GetAllCount(opts)
require.Nil(t, err, "error getting shared channels count")
require.NoError(t, err, "error getting shared channels count")
home, err := ss.SharedChannel().GetAll(0, 100, opts)
require.Nil(t, err, "error getting shared channels")
require.NoError(t, err, "error getting shared channels")
require.Equal(t, int(count), len(home))
require.Len(t, home, 5, "should be 5 home channels")
@@ -235,10 +235,10 @@ func testGetSharedChannels(t *testing.T, ss store.Store) {
}
count, err := ss.SharedChannel().GetAllCount(opts)
require.Nil(t, err, "error getting shared channels count")
require.NoError(t, err, "error getting shared channels count")
remotes, err := ss.SharedChannel().GetAll(0, 100, opts)
require.Nil(t, err, "error getting shared channels")
require.NoError(t, err, "error getting shared channels")
require.Equal(t, int(count), len(remotes))
require.Len(t, remotes, 4, "should be 4 remote channels")
@@ -253,7 +253,7 @@ func testGetSharedChannels(t *testing.T, ss store.Store) {
ExcludeRemote: true,
}
_, err := ss.SharedChannel().GetAll(0, 100, opts)
require.NotNil(t, err, "error expected")
require.Error(t, err, "error expected")
})
t.Run("Get shared channels by team", func(t *testing.T) {
@@ -262,10 +262,10 @@ func testGetSharedChannels(t *testing.T, ss store.Store) {
}
count, err := ss.SharedChannel().GetAllCount(opts)
require.Nil(t, err, "error getting shared channels count")
require.NoError(t, err, "error getting shared channels count")
remotes, err := ss.SharedChannel().GetAll(0, 100, opts)
require.Nil(t, err, "error getting shared channels")
require.NoError(t, err, "error getting shared channels")
require.Equal(t, int(count), len(remotes))
require.Len(t, remotes, 4, "should be 4 matching channels")
@@ -280,16 +280,16 @@ func testGetSharedChannels(t *testing.T, ss store.Store) {
}
_, err := ss.SharedChannel().GetAll(-1, 100, opts)
require.NotNil(t, err)
require.Error(t, err)
_, err = ss.SharedChannel().GetAll(0, -100, opts)
require.NotNil(t, err)
require.Error(t, err)
})
}
func testUpdateSharedChannel(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_update")
require.Nil(t, err)
require.NoError(t, err)
sc := &model.SharedChannel{
ChannelId: channel.Id,
@@ -300,7 +300,7 @@ func testUpdateSharedChannel(t *testing.T, ss store.Store) {
}
scSaved, err := ss.SharedChannel().Save(sc)
require.Nil(t, err, "couldn't save shared channel", err)
require.NoError(t, err, "couldn't save shared channel", err)
t.Run("Update existing shared channel", func(t *testing.T) {
id := model.NewId()
@@ -311,7 +311,7 @@ func testUpdateSharedChannel(t *testing.T, ss store.Store) {
scMod.RemoteId = id
scUpdated, err := ss.SharedChannel().Update(scMod)
require.Nil(t, err, "couldn't update shared channel", err)
require.NoError(t, err, "couldn't update shared channel", err)
require.Equal(t, "newname", scUpdated.ShareName)
require.Equal(t, "For testing", scUpdated.ShareDisplayName)
@@ -327,13 +327,13 @@ func testUpdateSharedChannel(t *testing.T, ss store.Store) {
ShareName: "missingshare",
}
_, err := ss.SharedChannel().Update(sc)
require.NotNil(t, err, "should error when updating non-existent shared channel", err)
require.Error(t, err, "should error when updating non-existent shared channel", err)
})
}
func testDeleteSharedChannel(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_delete")
require.Nil(t, err)
require.NoError(t, err)
sc := &model.SharedChannel{
ChannelId: channel.Id,
@@ -344,7 +344,7 @@ func testDeleteSharedChannel(t *testing.T, ss store.Store) {
}
_, err = ss.SharedChannel().Save(sc)
require.Nil(t, err, "couldn't save shared channel", err)
require.NoError(t, err, "couldn't save shared channel", err)
// add some remotes
for i := 0; i < 10; i++ {
@@ -355,21 +355,21 @@ func testDeleteSharedChannel(t *testing.T, ss store.Store) {
RemoteId: model.NewId(),
}
_, err := ss.SharedChannel().SaveRemote(remote)
require.Nil(t, err, "couldn't add remote", err)
require.NoError(t, err, "couldn't add remote", err)
}
t.Run("Delete existing shared channel", func(t *testing.T) {
deleted, err := ss.SharedChannel().Delete(channel.Id)
require.Nil(t, err, "delete existing shared channel should not error", err)
require.NoError(t, err, "delete existing shared channel should not error", err)
require.True(t, deleted, "expected true from delete shared channel")
sc, err := ss.SharedChannel().Get(channel.Id)
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, sc)
// make sure the remotes were deleted.
remotes, err := ss.SharedChannel().GetRemotes(model.SharedChannelRemoteFilterOpts{ChannelId: channel.Id})
require.Nil(t, err)
require.NoError(t, err)
require.Len(t, remotes, 0, "expected empty remotes list")
// ensure channel's Shared flag is unset
@@ -380,7 +380,7 @@ func testDeleteSharedChannel(t *testing.T, ss store.Store) {
t.Run("Delete non-existent shared channel", func(t *testing.T) {
deleted, err := ss.SharedChannel().Delete(model.NewId())
require.Nil(t, err, "delete non-existent shared channel should not error", err)
require.NoError(t, err, "delete non-existent shared channel should not error", err)
require.False(t, deleted, "expected false from delete shared channel")
})
}
@@ -388,7 +388,7 @@ func testDeleteSharedChannel(t *testing.T, ss store.Store) {
func testSaveSharedChannelRemote(t *testing.T, ss store.Store) {
t.Run("Save shared channel remote", func(t *testing.T) {
channel, err := createTestChannel(ss, "test_save_remote")
require.Nil(t, err)
require.NoError(t, err)
remote := &model.SharedChannelRemote{
ChannelId: channel.Id,
@@ -398,7 +398,7 @@ func testSaveSharedChannelRemote(t *testing.T, ss store.Store) {
}
remoteSaved, err := ss.SharedChannel().SaveRemote(remote)
require.Nil(t, err, "couldn't save shared channel remote", err)
require.NoError(t, err, "couldn't save shared channel remote", err)
require.Equal(t, remote.ChannelId, remoteSaved.ChannelId)
require.Equal(t, remote.CreatorId, remoteSaved.CreatorId)
@@ -413,7 +413,7 @@ func testSaveSharedChannelRemote(t *testing.T, ss store.Store) {
}
_, err := ss.SharedChannel().SaveRemote(remote)
require.NotNil(t, err, "should error saving invalid remote", err)
require.Error(t, err, "should error saving invalid remote", err)
})
t.Run("Save shared channel remote with invalid channel id", func(t *testing.T) {
@@ -432,7 +432,7 @@ func testSaveSharedChannelRemote(t *testing.T, ss store.Store) {
func testUpdateSharedChannelRemote(t *testing.T, ss store.Store) {
t.Run("Update shared channel remote", func(t *testing.T) {
channel, err := createTestChannel(ss, "test_update_remote")
require.Nil(t, err)
require.NoError(t, err)
remote := &model.SharedChannelRemote{
ChannelId: channel.Id,
@@ -442,14 +442,14 @@ func testUpdateSharedChannelRemote(t *testing.T, ss store.Store) {
}
remoteSaved, err := ss.SharedChannel().SaveRemote(remote)
require.Nil(t, err, "couldn't save shared channel remote", err)
require.NoError(t, err, "couldn't save shared channel remote", err)
remoteSaved.IsInviteAccepted = true
remoteSaved.IsInviteConfirmed = true
remoteSaved.Description = "new_desc"
remoteUpdated, err := ss.SharedChannel().UpdateRemote(remoteSaved)
require.Nil(t, err, "couldn't update shared channel remote", err)
require.NoError(t, err, "couldn't update shared channel remote", err)
require.Equal(t, true, remoteUpdated.IsInviteAccepted)
require.Equal(t, true, remoteUpdated.IsInviteConfirmed)
@@ -465,7 +465,7 @@ func testUpdateSharedChannelRemote(t *testing.T, ss store.Store) {
}
_, err := ss.SharedChannel().UpdateRemote(remote)
require.NotNil(t, err, "should error updating invalid remote", err)
require.Error(t, err, "should error updating invalid remote", err)
})
t.Run("Update shared channel remote with invalid channel id", func(t *testing.T) {
@@ -483,7 +483,7 @@ func testUpdateSharedChannelRemote(t *testing.T, ss store.Store) {
func testGetSharedChannelRemote(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_remote_get")
require.Nil(t, err)
require.NoError(t, err)
remote := &model.SharedChannelRemote{
ChannelId: channel.Id,
@@ -493,11 +493,11 @@ func testGetSharedChannelRemote(t *testing.T, ss store.Store) {
}
remoteSaved, err := ss.SharedChannel().SaveRemote(remote)
require.Nil(t, err, "couldn't save remote", err)
require.NoError(t, err, "couldn't save remote", err)
t.Run("Get existing shared channel remote", func(t *testing.T) {
r, err := ss.SharedChannel().GetRemote(remoteSaved.Id)
require.Nil(t, err, "could not get shared channel remote", err)
require.NoError(t, err, "could not get shared channel remote", err)
require.Equal(t, remoteSaved.Id, r.Id)
require.Equal(t, remoteSaved.ChannelId, r.ChannelId)
@@ -508,14 +508,14 @@ func testGetSharedChannelRemote(t *testing.T, ss store.Store) {
t.Run("Get non-existent shared channel remote", func(t *testing.T) {
r, err := ss.SharedChannel().GetRemote(model.NewId())
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, r)
})
}
func testGetSharedChannelRemoteByIds(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_remote_get_by_ids")
require.Nil(t, err)
require.NoError(t, err)
remote := &model.SharedChannelRemote{
ChannelId: channel.Id,
@@ -525,11 +525,11 @@ func testGetSharedChannelRemoteByIds(t *testing.T, ss store.Store) {
}
remoteSaved, err := ss.SharedChannel().SaveRemote(remote)
require.Nil(t, err, "could not save remote", err)
require.NoError(t, err, "could not save remote", err)
t.Run("Get existing shared channel remote by ids", func(t *testing.T) {
r, err := ss.SharedChannel().GetRemoteByIds(remoteSaved.ChannelId, remoteSaved.RemoteId)
require.Nil(t, err, "couldn't get shared channel remote by ids", err)
require.NoError(t, err, "couldn't get shared channel remote by ids", err)
require.Equal(t, remoteSaved.Id, r.Id)
require.Equal(t, remoteSaved.ChannelId, r.ChannelId)
@@ -540,14 +540,14 @@ func testGetSharedChannelRemoteByIds(t *testing.T, ss store.Store) {
t.Run("Get non-existent shared channel remote by ids", func(t *testing.T) {
r, err := ss.SharedChannel().GetRemoteByIds(model.NewId(), model.NewId())
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, r)
})
}
func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_remotes_get2")
require.Nil(t, err)
require.NoError(t, err)
creator := model.NewId()
remoteId := model.NewId()
@@ -564,11 +564,11 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
for i, r := range data {
if r.ChannelId == "" {
c, err := createTestChannel(ss, "test_remotes_get2_"+strconv.Itoa(i))
require.Nil(t, err)
require.NoError(t, err)
r.ChannelId = c.Id
}
_, err := ss.SharedChannel().SaveRemote(&r)
require.Nil(t, err, "error saving shared channel remote")
require.NoError(t, err, "error saving shared channel remote")
}
t.Run("Get shared channel remotes by channel_id", func(t *testing.T) {
@@ -576,7 +576,7 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
ChannelId: channel.Id,
}
remotes, err := ss.SharedChannel().GetRemotes(opts)
require.Nil(t, err, "should not error", err)
require.NoError(t, err, "should not error", err)
require.Len(t, remotes, 3)
for _, r := range remotes {
require.Contains(t, []string{"r1", "r2", "r3"}, r.Description)
@@ -588,7 +588,7 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
ChannelId: model.NewId(),
}
remotes, err := ss.SharedChannel().GetRemotes(opts)
require.Nil(t, err, "should not error", err)
require.NoError(t, err, "should not error", err)
require.Len(t, remotes, 0)
})
@@ -597,7 +597,7 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
RemoteId: remoteId,
}
remotes, err := ss.SharedChannel().GetRemotes(opts)
require.Nil(t, err, "should not error", err)
require.NoError(t, err, "should not error", err)
require.Len(t, remotes, 2) // only confirmed invitations
for _, r := range remotes {
require.Contains(t, []string{"r4", "r5"}, r.Description)
@@ -609,7 +609,7 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
RemoteId: model.NewId(),
}
remotes, err := ss.SharedChannel().GetRemotes(opts)
require.Nil(t, err, "should not error", err)
require.NoError(t, err, "should not error", err)
require.Len(t, remotes, 0)
})
@@ -619,7 +619,7 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
InclUnconfirmed: true,
}
remotes, err := ss.SharedChannel().GetRemotes(opts)
require.Nil(t, err, "should not error", err)
require.NoError(t, err, "should not error", err)
require.Len(t, remotes, 3) // only confirmed invitations
for _, r := range remotes {
require.Contains(t, []string{"r4", "r5", "r6"}, r.Description)
@@ -629,7 +629,7 @@ func testGetSharedChannelRemotes(t *testing.T, ss store.Store) {
func testHasRemote(t *testing.T, ss store.Store) {
channel, err := createTestChannel(ss, "test_remotes_get2")
require.Nil(t, err)
require.NoError(t, err)
remote1 := model.NewId()
remote2 := model.NewId()
@@ -642,7 +642,7 @@ func testHasRemote(t *testing.T, ss store.Store) {
for _, r := range data {
_, err := ss.SharedChannel().SaveRemote(&r)
require.Nil(t, err, "error saving shared channel remote")
require.NoError(t, err, "error saving shared channel remote")
}
t.Run("has remote", func(t *testing.T) {
@@ -744,7 +744,7 @@ func testUpdateSharedChannelRemoteNextSyncAt(t *testing.T, ss store.Store) {
t.Run("Update NextSyncAt for remote", func(t *testing.T) {
err := ss.SharedChannel().UpdateRemoteNextSyncAt(remoteSaved.Id, future)
require.Nil(t, err, "update NextSyncAt should not error", err)
require.NoError(t, err, "update NextSyncAt should not error", err)
r, err := ss.SharedChannel().GetRemote(remoteSaved.Id)
require.NoError(t, err)
@@ -769,21 +769,21 @@ func testDeleteSharedChannelRemote(t *testing.T, ss store.Store) {
}
remoteSaved, err := ss.SharedChannel().SaveRemote(remote)
require.Nil(t, err, "couldn't save remote", err)
require.NoError(t, err, "couldn't save remote", err)
t.Run("Delete existing shared channel remote", func(t *testing.T) {
deleted, err := ss.SharedChannel().DeleteRemote(remoteSaved.Id)
require.Nil(t, err, "delete existing remote should not error", err)
require.NoError(t, err, "delete existing remote should not error", err)
require.True(t, deleted, "expected true from delete remote")
r, err := ss.SharedChannel().GetRemote(remoteSaved.Id)
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, r)
})
t.Run("Delete non-existent shared channel remote", func(t *testing.T) {
deleted, err := ss.SharedChannel().DeleteRemote(model.NewId())
require.Nil(t, err, "delete non-existent remote should not error", err)
require.NoError(t, err, "delete non-existent remote should not error", err)
require.False(t, deleted, "expected false from delete remote")
})
}
@@ -848,7 +848,7 @@ func testSaveSharedChannelUser(t *testing.T, ss store.Store) {
}
userSaved, err := ss.SharedChannel().SaveUser(scUser)
require.Nil(t, err, "couldn't save shared channel user", err)
require.NoError(t, err, "couldn't save shared channel user", err)
require.Equal(t, scUser.UserId, userSaved.UserId)
require.Equal(t, scUser.RemoteId, userSaved.RemoteId)
@@ -861,7 +861,7 @@ func testSaveSharedChannelUser(t *testing.T, ss store.Store) {
}
_, err := ss.SharedChannel().SaveUser(scUser)
require.NotNil(t, err, "should error saving invalid user", err)
require.Error(t, err, "should error saving invalid user", err)
})
t.Run("Save shared channel user with invalid remote id", func(t *testing.T) {
@@ -882,11 +882,11 @@ func testGetSharedChannelUser(t *testing.T, ss store.Store) {
}
userSaved, err := ss.SharedChannel().SaveUser(scUser)
require.Nil(t, err, "could not save user", err)
require.NoError(t, err, "could not save user", err)
t.Run("Get existing shared channel user", func(t *testing.T) {
r, err := ss.SharedChannel().GetUser(userSaved.UserId, userSaved.RemoteId)
require.Nil(t, err, "couldn't get shared channel user", err)
require.NoError(t, err, "couldn't get shared channel user", err)
require.Equal(t, userSaved.Id, r.Id)
require.Equal(t, userSaved.UserId, r.UserId)
@@ -896,7 +896,7 @@ func testGetSharedChannelUser(t *testing.T, ss store.Store) {
t.Run("Get non-existent shared channel user", func(t *testing.T) {
u, err := ss.SharedChannel().GetUser(model.NewId(), model.NewId())
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, u)
})
}
@@ -914,7 +914,7 @@ func testUpdateSharedChannelUserLastSyncAt(t *testing.T, ss store.Store) {
t.Run("Update LastSyncAt for user", func(t *testing.T) {
err := ss.SharedChannel().UpdateUserLastSyncAt(userSaved.Id, future)
require.Nil(t, err, "updateLastSyncAt should not error", err)
require.NoError(t, err, "updateLastSyncAt should not error", err)
u, err := ss.SharedChannel().GetUser(userSaved.UserId, userSaved.RemoteId)
require.NoError(t, err)
@@ -935,7 +935,7 @@ func testSaveSharedChannelAttachment(t *testing.T, ss store.Store) {
}
saved, err := ss.SharedChannel().SaveAttachment(attachment)
require.Nil(t, err, "couldn't save shared channel attachment", err)
require.NoError(t, err, "couldn't save shared channel attachment", err)
require.Equal(t, attachment.FileId, saved.FileId)
require.Equal(t, attachment.RemoteId, saved.RemoteId)
@@ -948,7 +948,7 @@ func testSaveSharedChannelAttachment(t *testing.T, ss store.Store) {
}
_, err := ss.SharedChannel().SaveAttachment(attachment)
require.NotNil(t, err, "should error saving invalid attachment", err)
require.Error(t, err, "should error saving invalid attachment", err)
})
t.Run("Save shared channel attachment with invalid remote id", func(t *testing.T) {
@@ -986,7 +986,7 @@ func testUpsertSharedChannelAttachment(t *testing.T, ss store.Store) {
}
saved, err := ss.SharedChannel().SaveAttachment(attachment)
require.Nil(t, err, "couldn't save shared channel attachment", err)
require.NoError(t, err, "couldn't save shared channel attachment", err)
// make sure enough time passed that GetMillis returns a different value
time.Sleep(1 * time.Millisecond)
@@ -1008,7 +1008,7 @@ func testUpsertSharedChannelAttachment(t *testing.T, ss store.Store) {
}
id, err := ss.SharedChannel().UpsertAttachment(attachment)
require.NotNil(t, err, "should error upserting invalid attachment", err)
require.Error(t, err, "should error upserting invalid attachment", err)
require.Empty(t, id)
})
@@ -1031,11 +1031,11 @@ func testGetSharedChannelAttachment(t *testing.T, ss store.Store) {
}
saved, err := ss.SharedChannel().SaveAttachment(attachment)
require.Nil(t, err, "could not save attachment", err)
require.NoError(t, err, "could not save attachment", err)
t.Run("Get existing shared channel attachment", func(t *testing.T) {
r, err := ss.SharedChannel().GetAttachment(saved.FileId, saved.RemoteId)
require.Nil(t, err, "couldn't get shared channel attachment", err)
require.NoError(t, err, "couldn't get shared channel attachment", err)
require.Equal(t, saved.Id, r.Id)
require.Equal(t, saved.FileId, r.FileId)
@@ -1045,7 +1045,7 @@ func testGetSharedChannelAttachment(t *testing.T, ss store.Store) {
t.Run("Get non-existent shared channel attachment", func(t *testing.T) {
u, err := ss.SharedChannel().GetAttachment(model.NewId(), model.NewId())
require.NotNil(t, err)
require.Error(t, err)
require.Nil(t, u)
})
}
@@ -1063,7 +1063,7 @@ func testUpdateSharedChannelAttachmentLastSyncAt(t *testing.T, ss store.Store) {
t.Run("Update LastSyncAt for attachment", func(t *testing.T) {
err := ss.SharedChannel().UpdateAttachmentLastSyncAt(saved.Id, future)
require.Nil(t, err, "updateLastSyncAt should not error", err)
require.NoError(t, err, "updateLastSyncAt should not error", err)
f, err := ss.SharedChannel().GetAttachment(saved.FileId, saved.RemoteId)
require.NoError(t, err)