Merge pull request #19196 from mattermost/MM-39542

[MM-39542] Allow upsert for duplicate key in LinkMetadataStore
Этот коммит содержится в:
Ibrahim Serdar Acikgoz
2021-12-22 16:31:59 +03:00
коммит произвёл GitHub
родитель 3b89080863 6bf646c921
Коммит 6c42d2816d
2 изменённых файлов: 17 добавлений и 8 удалений

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

@@ -95,7 +95,7 @@ func testLinkMetadataStoreSave(t *testing.T, ss store.Store) {
assert.Equal(t, *metadata, *linkMetadata)
})
t.Run("should not save with duplicate URL and timestamp, but should not return an error", func(t *testing.T) {
t.Run("should save data with duplicate URL and timestamp", func(t *testing.T) {
metadata := &model.LinkMetadata{
URL: "http://example.com",
Timestamp: getNextLinkMetadataTimestamp(),
@@ -107,16 +107,17 @@ func testLinkMetadataStoreSave(t *testing.T, ss store.Store) {
require.NoError(t, err)
assert.Equal(t, &model.PostImage{}, linkMetadata.Data)
metadata.Data = &model.PostImage{Height: 10, Width: 20}
newData := &model.PostImage{Height: 10, Width: 20}
metadata.Data = newData
linkMetadata, err = ss.LinkMetadata().Save(metadata)
require.NoError(t, err)
assert.Equal(t, linkMetadata.Data, &model.PostImage{Height: 10, Width: 20})
assert.Equal(t, newData, linkMetadata.Data)
// Should return the original result, not the duplicate one
linkMetadata, err = ss.LinkMetadata().Get(metadata.URL, metadata.Timestamp)
require.NoError(t, err)
assert.Equal(t, &model.PostImage{}, linkMetadata.Data)
assert.Equal(t, newData, linkMetadata.Data)
})
}