More granular error handling

+ task queue refactoring
This commit is contained in:
2025-08-17 15:26:59 +03:00
parent 8eddab4455
commit 12b16b3749
10 changed files with 262 additions and 157 deletions

View File

@@ -40,7 +40,7 @@ func (h *TranscribeHandler) CreateTranscribeJob(c *gin.Context) {
}
defer file.Close()
job, err := h.trsService.CreateTranscribeJob(file, header.Filename)
job, err := h.trsService.CreateJobFromApi(file, header.Filename)
if err != nil {
log.Printf("Err: %v", err)
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to create transcibe job"})

View File

@@ -69,7 +69,16 @@ func setupTestRouter(t *testing.T) (*gin.Engine, *TranscribeHandler) {
Level: slog.LevelError, // Только ошибки в тестах
}))
trsService := service.NewTranscribeService(jobRepo, fileRepo, metaviewer, converter, recognizer, "data/files", logger)
trsService := service.NewTranscribeService(
jobRepo,
fileRepo,
metaviewer,
converter,
recognizer,
&TestTgSender{},
"data/files",
logger,
)
handler := NewTranscribeHandler(jobRepo, trsService)
@@ -374,3 +383,9 @@ func TestGetTranscribeJobStatus_NotFound(t *testing.T) {
assert.Equal(t, "Job not found", response["error"])
}
type TestTgSender struct{}
func (s *TestTgSender) Send(msg string, chatId int64, replyMsgId *int) error {
return nil
}