[MM-28810] channel_store_categories: check if object is nil after the query (#15635)
* check if onj is nil * channel_store_categories: add tests * reflect review comments * remove store declaraation
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
6222e182ca
Коммит
c67c46a684
@@ -107,6 +107,7 @@ func TestChannelStore(t *testing.T, ss store.Store, s SqlSupplier) {
|
||||
t.Run("GetSidebarCategories", func(t *testing.T) { testGetSidebarCategories(t, ss) })
|
||||
t.Run("UpdateSidebarCategories", func(t *testing.T) { testUpdateSidebarCategories(t, ss, s) })
|
||||
t.Run("DeleteSidebarCategory", func(t *testing.T) { testDeleteSidebarCategory(t, ss, s) })
|
||||
t.Run("UpdateSidebarChannelsByPreferences", func(t *testing.T) { testUpdateSidebarChannelsByPreferences(t, ss) })
|
||||
}
|
||||
|
||||
func testChannelStoreSave(t *testing.T, ss store.Store) {
|
||||
|
||||
@@ -21,6 +21,7 @@ func TestChannelStoreCategories(t *testing.T, ss store.Store, s SqlSupplier) {
|
||||
t.Run("GetSidebarCategories", func(t *testing.T) { testGetSidebarCategories(t, ss) })
|
||||
t.Run("UpdateSidebarCategories", func(t *testing.T) { testUpdateSidebarCategories(t, ss, s) })
|
||||
t.Run("DeleteSidebarCategory", func(t *testing.T) { testDeleteSidebarCategory(t, ss, s) })
|
||||
t.Run("UpdateSidebarChannelsByPreferences", func(t *testing.T) { testUpdateSidebarChannelsByPreferences(t, ss) })
|
||||
}
|
||||
|
||||
func testCreateInitialSidebarCategories(t *testing.T, ss store.Store) {
|
||||
@@ -1676,3 +1677,47 @@ func testDeleteSidebarCategory(t *testing.T, ss store.Store, s SqlSupplier) {
|
||||
assert.NotNil(t, err)
|
||||
})
|
||||
}
|
||||
|
||||
func testUpdateSidebarChannelsByPreferences(t *testing.T, ss store.Store) {
|
||||
t.Run("Should be able to update sidebar channels", func(t *testing.T) {
|
||||
userId := model.NewId()
|
||||
teamId := model.NewId()
|
||||
|
||||
nErr := ss.Channel().CreateInitialSidebarCategories(userId, teamId)
|
||||
require.Nil(t, nErr)
|
||||
|
||||
channel, nErr := ss.Channel().Save(&model.Channel{
|
||||
Name: "channel",
|
||||
Type: model.CHANNEL_OPEN,
|
||||
TeamId: teamId,
|
||||
}, 10)
|
||||
require.Nil(t, nErr)
|
||||
|
||||
err := ss.Channel().UpdateSidebarChannelsByPreferences(&model.Preferences{
|
||||
model.Preference{
|
||||
Name: channel.Id,
|
||||
Category: model.PREFERENCE_CATEGORY_FAVORITE_CHANNEL,
|
||||
Value: "true",
|
||||
},
|
||||
})
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
|
||||
t.Run("Should not panic if channel is not found", func(t *testing.T) {
|
||||
userId := model.NewId()
|
||||
teamId := model.NewId()
|
||||
|
||||
nErr := ss.Channel().CreateInitialSidebarCategories(userId, teamId)
|
||||
assert.Nil(t, nErr)
|
||||
|
||||
require.NotPanics(t, func() {
|
||||
_ = ss.Channel().UpdateSidebarChannelsByPreferences(&model.Preferences{
|
||||
model.Preference{
|
||||
Name: "fakeid",
|
||||
Category: model.PREFERENCE_CATEGORY_FAVORITE_CHANNEL,
|
||||
Value: "true",
|
||||
},
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user