Add tests for main package, manager, and various components

- Introduced unit tests for the main package to ensure compilation.
- Added tests for the manager, including validation of upload sessions and handling of Blender binary paths.
- Implemented tests for job token generation and validation, ensuring security and integrity.
- Created tests for configuration management and database schema to verify functionality.
- Added tests for logger and runner components to enhance overall test coverage and reliability.
This commit is contained in:
2026-03-14 22:20:03 -05:00
parent 16d6a95058
commit a3defe5cf6
45 changed files with 1717 additions and 52 deletions

View File

@@ -4,7 +4,9 @@ import (
"errors"
"io"
"os"
"os/exec"
"testing"
"time"
)
func TestIsBenignPipeReadError(t *testing.T) {
@@ -30,3 +32,24 @@ func TestIsBenignPipeReadError(t *testing.T) {
})
}
}
func TestProcessTracker_TrackUntrack(t *testing.T) {
pt := NewProcessTracker()
cmd := exec.Command("sh", "-c", "sleep 1")
pt.Track(1, cmd)
if count := pt.Count(); count != 1 {
t.Fatalf("Count() = %d, want 1", count)
}
pt.Untrack(1)
if count := pt.Count(); count != 0 {
t.Fatalf("Count() = %d, want 0", count)
}
}
func TestRunCommandWithTimeout_TimesOut(t *testing.T) {
pt := NewProcessTracker()
_, err := RunCommandWithTimeout(200*time.Millisecond, "sh", []string{"-c", "sleep 2"}, "", nil, 99, pt)
if err == nil {
t.Fatal("expected timeout error")
}
}