diff --git a/backend/internal/api/handlers/certificate_handler_test.go b/backend/internal/api/handlers/certificate_handler_test.go index ad512005..7816df16 100644 --- a/backend/internal/api/handlers/certificate_handler_test.go +++ b/backend/internal/api/handlers/certificate_handler_test.go @@ -61,7 +61,7 @@ func TestCertificateHandler_List(t *testing.T) { // Setup in-memory DB db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -86,7 +86,7 @@ func TestCertificateHandler_Upload(t *testing.T) { // Setup tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -131,7 +131,7 @@ func TestCertificateHandler_Delete(t *testing.T) { tmpDir := t.TempDir() // Use WAL mode and busy timeout for better concurrency with race detector db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) // Seed a cert cert := models.SSLCertificate{ @@ -167,7 +167,7 @@ func TestCertificateHandler_Delete(t *testing.T) { func TestCertificateHandler_Upload_Errors(t *testing.T) { tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -202,7 +202,7 @@ func TestCertificateHandler_Upload_Errors(t *testing.T) { func TestCertificateHandler_Delete_NotFound(t *testing.T) { tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.NotificationProvider{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -222,7 +222,7 @@ func TestCertificateHandler_Delete_NotFound(t *testing.T) { func TestCertificateHandler_Delete_InvalidID(t *testing.T) { tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -241,7 +241,7 @@ func TestCertificateHandler_Delete_InvalidID(t *testing.T) { func TestCertificateHandler_Upload_InvalidCertificate(t *testing.T) { tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -275,7 +275,7 @@ func TestCertificateHandler_Upload_InvalidCertificate(t *testing.T) { func TestCertificateHandler_Upload_MissingKeyFile(t *testing.T) { tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -307,7 +307,7 @@ func TestCertificateHandler_Upload_MissingKeyFile(t *testing.T) { func TestCertificateHandler_Upload_MissingName(t *testing.T) { tmpDir := t.TempDir() db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) service := services.NewCertificateService(tmpDir, db) ns := services.NewNotificationService(db) @@ -345,7 +345,7 @@ func TestCertificateHandler_List_WithCertificates(t *testing.T) { require.NoError(t, os.MkdirAll(caddyDir, 0755)) db := OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.SSLCertificate{})) + require.NoError(t, db.AutoMigrate(&models.SSLCertificate{}, &models.Notification{}, &models.NotificationProvider{})) // Seed a certificate in DB cert := models.SSLCertificate{ diff --git a/backend/internal/api/handlers/domain_handler_test.go b/backend/internal/api/handlers/domain_handler_test.go index c36056a3..57a9f519 100644 --- a/backend/internal/api/handlers/domain_handler_test.go +++ b/backend/internal/api/handlers/domain_handler_test.go @@ -22,7 +22,7 @@ func setupDomainTestRouter(t *testing.T) (*gin.Engine, *gorm.DB) { dsn := "file:" + t.Name() + "?mode=memory&cache=shared" db, err := gorm.Open(sqlite.Open(dsn), &gorm.Config{}) require.NoError(t, err) - require.NoError(t, db.AutoMigrate(&models.Domain{})) + require.NoError(t, db.AutoMigrate(&models.Domain{}, &models.Notification{}, &models.NotificationProvider{})) ns := services.NewNotificationService(db) h := NewDomainHandler(db, ns) diff --git a/backend/internal/api/handlers/notification_handler_test.go b/backend/internal/api/handlers/notification_handler_test.go index 348d874a..3d78996a 100644 --- a/backend/internal/api/handlers/notification_handler_test.go +++ b/backend/internal/api/handlers/notification_handler_test.go @@ -25,7 +25,7 @@ func setupNotificationTestDB() *gorm.DB { if err != nil { panic("failed to connect to test database") } - db.AutoMigrate(&models.Notification{}) + db.AutoMigrate(&models.Notification{}, &models.NotificationProvider{}) return db } diff --git a/backend/internal/api/handlers/notification_provider_handler_test.go b/backend/internal/api/handlers/notification_provider_handler_test.go index 68e6565d..8961de0d 100644 --- a/backend/internal/api/handlers/notification_provider_handler_test.go +++ b/backend/internal/api/handlers/notification_provider_handler_test.go @@ -20,7 +20,7 @@ import ( func setupNotificationProviderTest(t *testing.T) (*gin.Engine, *gorm.DB) { t.Helper() db := handlers.OpenTestDB(t) - require.NoError(t, db.AutoMigrate(&models.NotificationProvider{})) + require.NoError(t, db.AutoMigrate(&models.NotificationProvider{}, &models.Notification{})) service := services.NewNotificationService(db) handler := handlers.NewNotificationProviderHandler(service) diff --git a/backend/internal/api/handlers/notification_template_handler_test.go b/backend/internal/api/handlers/notification_template_handler_test.go index 3d49db7b..490a21b4 100644 --- a/backend/internal/api/handlers/notification_template_handler_test.go +++ b/backend/internal/api/handlers/notification_template_handler_test.go @@ -20,7 +20,7 @@ func TestNotificationTemplateHandler_CRUDAndPreview(t *testing.T) { t.Helper() db, err := gorm.Open(sqlite.Open("file::memory:?mode=memory&cache=shared"), &gorm.Config{}) require.NoError(t, err) - require.NoError(t, db.AutoMigrate(&models.NotificationTemplate{})) + require.NoError(t, db.AutoMigrate(&models.NotificationTemplate{}, &models.Notification{}, &models.NotificationProvider{})) svc := services.NewNotificationService(db) h := NewNotificationTemplateHandler(svc)