fix: db was failing under testing
CI / Go (build + vet + test) (push) Canceled after 0s
CI / Web (build + lint) (push) Canceled after 0s

This commit is contained in:
vantablackTea
2026-09-27 20:15:38 +03:00
parent ca0aa9ee9c
commit 24184c5368
2 changed files with 24 additions and 4 deletions
+21 -4
View File
@@ -4,6 +4,7 @@ import (
"context" "context"
"errors" "errors"
"sort" "sort"
"time"
"github.com/jackc/pgx/v5" "github.com/jackc/pgx/v5"
) )
@@ -145,16 +146,32 @@ func (s *Store) ListConversationsForUser(ctx context.Context, userID int64) ([]C
var list []ConversationSummary var list []ConversationSummary
for rows.Next() { for rows.Next() {
var cs ConversationSummary var cs ConversationSummary
var msg Message var (
msgID *int64
msgConvID *int64
msgSender *int64
msgBody *string
msgCreated *time.Time
msgEdited *time.Time
msgDeleted *time.Time
)
if err := rows.Scan( if err := rows.Scan(
&cs.ID, &cs.Type, &cs.CreatedAt, &cs.ID, &cs.Type, &cs.CreatedAt,
&msg.ID, &msg.ConversationID, &msg.SenderID, &msg.Body, &msg.CreatedAt, &msg.EditedAt, &msg.DeletedAt, &msgID, &msgConvID, &msgSender, &msgBody, &msgCreated, &msgEdited, &msgDeleted,
&cs.UnreadCount, &cs.UnreadCount,
); err != nil { ); err != nil {
return nil, err return nil, err
} }
if msg.ID != 0 { if msgID != nil {
cs.LastMessage = &msg cs.LastMessage = &Message{
ID: *msgID,
ConversationID: *msgConvID,
SenderID: *msgSender,
Body: *msgBody,
CreatedAt: *msgCreated,
EditedAt: msgEdited,
DeletedAt: msgDeleted,
}
} }
list = append(list, cs) list = append(list, cs)
} }
@@ -26,6 +26,9 @@ func TestIntegration(t *testing.T) {
if err := db.Migrate(ctx); err != nil { if err := db.Migrate(ctx); err != nil {
t.Fatalf("Migrate failed: %v", err) t.Fatalf("Migrate failed: %v", err)
} }
if _, err := pool.Exec(ctx, "TRUNCATE users, conversations, messages, contacts, sessions RESTART IDENTITY CASCADE"); err != nil {
t.Fatalf("truncate failed: %v", err)
}
// Users // Users
u1, err := db.CreateUser(ctx, "user1", "User One", "hash1") u1, err := db.CreateUser(ctx, "user1", "User One", "hash1")