fix: harden explore dataset collection

This commit is contained in:
2026-07-23 21:34:13 +08:00
parent 3749cf4543
commit 50d8246915
9 changed files with 254 additions and 87 deletions

View File

@@ -38,6 +38,10 @@ func TestDatasetAPIConnectsSourcesItemsAndSyncTasks(t *testing.T) {
require.NotEmpty(t, source.ID)
require.Equal(t, "Industry feed", source.Name)
require.Empty(t, source.IconURL)
var storedSource models.SaDatasetSource
require.NoError(t, database.Where("identity = ?", source.ID).First(&storedSource).Error)
require.Equal(t, owner.ID, storedSource.CreatedBy)
require.Equal(t, owner.Identity, storedSource.CreatedByIdentity)
createdItem := performDatasetRequest(t, ownerRouter, http.MethodPost, "/api/v1/dataset-items", map[string]any{
"sourceId": source.ID, "title": "A collected article", "summary": "Summary",
@@ -108,6 +112,10 @@ func newDatasetTestDatabase(t *testing.T) *gorm.DB {
&models.SaDatasetItem{},
&models.SaDatasetCron{},
))
require.NoError(t, database.Exec(`
CREATE UNIQUE INDEX idx_sa_dataset_item_source_external
ON sa_dataset_items (source_id, external_id)
`).Error)
return database
}