feat: activity log producers

This commit is contained in:
fsylvain committed 2026-10-06 22:25:23 +02:00
1 parent 50b1649965
commit e37a46a027
93 files changed
+3396 -440

No files matched your search

+14 -14
View File
@@ -947,9 +947,9 @@ func TestMediaMerging(t *testing.T) {
t.Run("A duplicated id reaching the use case is refused before anything is read", func(t *testing.T) {
env := newEnv(t)
uc := useCases.NewMergeMediaUseCase(env.images, env.articles, env.storage)
uc := useCases.NewMergeMediaUseCase(env.images, env.articles, env.storage, discardRecorder)
_, err := uc.Merge(2, []uint32{3, 3})
_, err := uc.Merge(testCtx, 2, []uint32{3, 3})
if !errors.Is(err, domainImage.ErrInvalidMergeRequest) {
t.Errorf("expected ErrInvalidMergeRequest, got %v", err)
@@ -996,10 +996,10 @@ func TestMediaMerging(t *testing.T) {
func TestMediaSentinels(t *testing.T) {
t.Run("Create reports unreadable bytes as ErrImageUnreadable", func(t *testing.T) {
uc := useCases.NewCreateImageUseCase(newMockImageRepo(), newMockImageStorage())
uc := useCases.NewCreateImageUseCase(newMockImageRepo(), newMockImageStorage(), discardRecorder)
for _, contentType := range domainImage.AllowedContentTypes() {
_, err := uc.CreateImage(inputOf([]byte("not an image"), contentType))
_, err := uc.CreateImage(testCtx, inputOf([]byte("not an image"), contentType))
if !errors.Is(err, domainImage.ErrImageUnreadable) {
t.Errorf("%s: expected ErrImageUnreadable, got %v", contentType, err)
}
@@ -1007,9 +1007,9 @@ func TestMediaSentinels(t *testing.T) {
})
t.Run("An svg without an svg root is unreadable", func(t *testing.T) {
uc := useCases.NewCreateImageUseCase(newMockImageRepo(), newMockImageStorage())
uc := useCases.NewCreateImageUseCase(newMockImageRepo(), newMockImageStorage(), discardRecorder)
_, err := uc.CreateImage(inputOf([]byte("<html/>"), "image/svg+xml"))
_, err := uc.CreateImage(testCtx, inputOf([]byte("<html/>"), "image/svg+xml"))
if !errors.Is(err, domainImage.ErrImageUnreadable) {
t.Errorf("expected ErrImageUnreadable, got %v", err)
@@ -1017,9 +1017,9 @@ func TestMediaSentinels(t *testing.T) {
})
t.Run("Bytes of another raster format than the declared type are unreadable", func(t *testing.T) {
uc := useCases.NewCreateImageUseCase(newMockImageRepo(), newMockImageStorage())
uc := useCases.NewCreateImageUseCase(newMockImageRepo(), newMockImageStorage(), discardRecorder)
_, err := uc.CreateImage(inputOf(jpegBytes(t, 3, 2), "image/png"))
_, err := uc.CreateImage(testCtx, inputOf(jpegBytes(t, 3, 2), "image/png"))
if !errors.Is(err, domainImage.ErrImageUnreadable) {
t.Errorf("expected ErrImageUnreadable, got %v", err)
@@ -1029,9 +1029,9 @@ func TestMediaSentinels(t *testing.T) {
t.Run("Rename reports an invalid stem as ErrInvalidFilename", func(t *testing.T) {
repo := newMockImageRepo()
repo.images[1] = domainImage.Image{ID: 1, Filename: "a.png"}
uc := useCases.NewRenameMediaUseCase(repo)
uc := useCases.NewRenameMediaUseCase(repo, discardRecorder)
if _, err := uc.Rename(1, "a b"); !errors.Is(err, domainImage.ErrInvalidFilename) {
if _, err := uc.Rename(testCtx, 1, "a b"); !errors.Is(err, domainImage.ErrInvalidFilename) {
t.Errorf("expected ErrInvalidFilename, got %v", err)
}
})
@@ -1042,15 +1042,15 @@ func TestMediaSentinels(t *testing.T) {
env.seedImage(2, "b.png", 1, "image/png", 1, 1, hashB, 1)
env.seedImage(3, "c.png", 1, "image/png", 1, 1, "", 1)
env.seedImage(4, "d.png", 1, "image/png", 1, 1, "", 1)
uc := useCases.NewMergeMediaUseCase(env.images, env.articles, env.storage)
uc := useCases.NewMergeMediaUseCase(env.images, env.articles, env.storage, discardRecorder)
if _, err := uc.Merge(1, []uint32{9999}); !errors.Is(err, domainImage.ErrMergeCopyMissing) {
if _, err := uc.Merge(testCtx, 1, []uint32{9999}); !errors.Is(err, domainImage.ErrMergeCopyMissing) {
t.Errorf("expected ErrMergeCopyMissing, got %v", err)
}
if _, err := uc.Merge(1, []uint32{2}); !errors.Is(err, domainImage.ErrMergeHashMismatch) {
if _, err := uc.Merge(testCtx, 1, []uint32{2}); !errors.Is(err, domainImage.ErrMergeHashMismatch) {
t.Errorf("expected ErrMergeHashMismatch, got %v", err)
}
if _, err := uc.Merge(3, []uint32{4}); !errors.Is(err, domainImage.ErrMergeHashMismatch) {
if _, err := uc.Merge(testCtx, 3, []uint32{4}); !errors.Is(err, domainImage.ErrMergeHashMismatch) {
t.Errorf("expected images without a hash never to merge, got %v", err)
}
})