Add movie fusion packages with locked media, ZIP export, and batch forge UI.

Paired video mode encrypts movies, uses runner-only lock hints, bundles README plus artifacts per title, and supports batch forging with progress.
This commit is contained in:
drjones
2026-05-29 01:33:09 -07:00
parent 20eb5a3ba4
commit b99c8aab15
36 changed files with 2063 additions and 168 deletions

View File

@@ -0,0 +1,27 @@
package builder
import (
"archive/zip"
"os"
"path/filepath"
"testing"
)
func TestZipDirectory(t *testing.T) {
dir := t.TempDir()
if err := os.WriteFile(filepath.Join(dir, "README.txt"), []byte("hi"), 0644); err != nil {
t.Fatal(err)
}
zipPath := filepath.Join(t.TempDir(), "pkg.zip")
if err := zipDirectory(dir, zipPath); err != nil {
t.Fatal(err)
}
r, err := zip.OpenReader(zipPath)
if err != nil {
t.Fatal(err)
}
defer r.Close()
if len(r.File) != 1 || r.File[0].Name != "README.txt" {
t.Fatalf("unexpected zip contents: %+v", r.File)
}
}