Compare commits

..

2 Commits

Author SHA1 Message Date
4312cbdff5 feat(database): added model
All checks were successful
Gitea Build Check / Build (pull_request) Successful in 3m4s
- added model
- added test for model
2024-10-15 11:23:42 +02:00
b1e97f4142 feat(database): scrape history
- added migration
2024-10-15 11:15:49 +02:00
3 changed files with 41 additions and 0 deletions

View File

@ -0,0 +1,11 @@
-- +migrate Up
CREATE TABLE "ScrapeHistory"
(
user_source_id CHAR(25) NOT NULL REFERENCES "UserSource" (id),
scrape_task_id CHAR(25) PRIMARY KEY,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
finished_at TIMESTAMP NULL,
error TEXT NULL,
added_posts INT NOT NULL,
deleted_posts INT NOT NULL
);

View File

@ -0,0 +1,19 @@
package models
import (
"time"
)
type ScrapeHistory struct {
ScrapeTaskID string `json:"scrape_task_id" gorm:"primaryKey"`
UserSourceID string `json:"user_source_id" gorm:""`
CreatedAt time.Time `json:"created_at" gorm:""`
FinishedAt time.Time `json:"finished_at" gorm:"null"`
Error string `json:"error" gorm:"null"`
AddedPosts int `json:"added_posts" gorm:"not null"`
DeletedPosts int `json:"deleted_posts" gorm:"not null"`
}
func (ScrapeHistory) TableName() string {
return "ScrapeHistory"
}

View File

@ -0,0 +1,11 @@
package models
import "testing"
func TestScrapeHistory_TableName(t *testing.T) {
scrapeHistory := ScrapeHistory{}
expectedTableName := "ScrapeHistory"
if tableName := scrapeHistory.TableName(); tableName != expectedTableName {
t.Fatalf("expected %s, but got %s", expectedTableName, tableName)
}
}