add gitlab ci

This commit is contained in:
m
2026-09-16 14:47:10 +02:00
parent 906d48702c
commit cd4f0179fc
32 changed files with 1462 additions and 40 deletions
+51
View File
@@ -232,3 +232,54 @@ func TestListOwnedDelta(t *testing.T) {
t.Errorf("delta attendu uniquement fresh.txt, got %+v", delta)
}
}
func TestUpdateOcrTextAndReadBack(t *testing.T) {
repo := newTestResources(t)
owner := NewID()
other := NewID()
mustInsertUser(t, repo, owner)
mustInsertUser(t, repo, other)
fileID := NewID()
if err := repo.InsertFile(owner, fileID, "scan.png", "", 128, nil, nil); err != nil {
t.Fatalf("insert file: %v", err)
}
// Vide par défaut.
before := time.Now()
row, err := repo.GetFile(owner, fileID)
if err != nil {
t.Fatalf("get file: %v", err)
}
if row.OcrText != "" {
t.Errorf("ocr_text initial = %q, attendu vide", row.OcrText)
}
if err := repo.UpdateOcrText(owner, fileID, "extrait du scan"); err != nil {
t.Fatalf("update ocr_text: %v", err)
}
// L'exécution bump updated_at (→ delta outbox/snapshot).
time.Sleep(5 * time.Millisecond)
after, err := repo.GetFile(owner, fileID)
if err != nil {
t.Fatalf("get file après : %v", err)
}
if after.OcrText != "extrait du scan" {
t.Errorf("ocr_text = %q, attendu %q", after.OcrText, "extrait du scan")
}
if !after.UpdatedAt.After(before) {
t.Errorf("updated_at non bumpé: before=%v after=%v", before, after.UpdatedAt)
}
if after.UpdatedAt.Before(time.Now().Add(-time.Minute)) {
t.Errorf("updated_at incohérent: %v", after.UpdatedAt)
}
// Non-owner / ressource inconnue → ErrNotFound.
if err := repo.UpdateOcrText(other, fileID, "volé"); !errors.Is(err, ErrNotFound) {
t.Errorf("autre user : attendu ErrNotFound, got %v", err)
}
if err := repo.UpdateOcrText(owner, NewID(), "x"); !errors.Is(err, ErrNotFound) {
t.Errorf("inconnue : attendu ErrNotFound, got %v", err)
}
}