chore: establish local platform baseline

This commit is contained in:
Codex Local
2026-08-26 06:41:54 +08:00
commit 29bdf4900f
575 changed files with 95644 additions and 0 deletions
+53
View File
@@ -0,0 +1,53 @@
package media
import (
"strings"
"testing"
)
func TestNormalizeManifestIsDeterministic(t *testing.T) {
first := []SegmentDeclaration{
{Track: "far", SequenceNo: 2, Codec: "wav_pcm_s16le", ContentType: "audio/wav", DurationMS: 5000, ExpectedSize: 1200, ExpectedDigest: strings.Repeat("b", 64)},
{Track: "near", SequenceNo: 1, Codec: "wav_pcm_s16le", ContentType: "audio/wav", DurationMS: 5000, ExpectedSize: 2400, ExpectedDigest: strings.Repeat("a", 64)},
}
second := []SegmentDeclaration{first[1], first[0]}
digestA, normalized, total, err := normalizeManifest(first)
if err != nil {
t.Fatal(err)
}
digestB, _, _, err := normalizeManifest(second)
if err != nil {
t.Fatal(err)
}
if digestA != digestB {
t.Fatalf("manifest digest changed with input order: %s != %s", digestA, digestB)
}
if normalized[0].Track != "far" || normalized[1].Track != "near" {
t.Fatalf("manifest was not sorted: %#v", normalized)
}
if total != 3600 {
t.Fatalf("total = %d, want 3600", total)
}
}
func TestNormalizeManifestRejectsInvalidDeclarations(t *testing.T) {
base := SegmentDeclaration{Track: "near", SequenceNo: 1, Codec: "wav_pcm_s16le", ContentType: "audio/wav", DurationMS: 5000, ExpectedSize: 1200, ExpectedDigest: strings.Repeat("a", 64)}
tests := []struct {
name string
items []SegmentDeclaration
}{
{name: "empty"},
{name: "duplicate", items: []SegmentDeclaration{base, base}},
{name: "track", items: []SegmentDeclaration{func() SegmentDeclaration { item := base; item.Track = "mixed"; return item }()}},
{name: "codec content type mismatch", items: []SegmentDeclaration{func() SegmentDeclaration { item := base; item.ContentType = "audio/opus"; return item }()}},
{name: "digest", items: []SegmentDeclaration{func() SegmentDeclaration { item := base; item.ExpectedDigest = "no"; return item }()}},
{name: "size", items: []SegmentDeclaration{func() SegmentDeclaration { item := base; item.ExpectedSize = 0; return item }()}},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if _, _, _, err := normalizeManifest(tt.items); err == nil {
t.Fatal("normalizeManifest accepted invalid input")
}
})
}
}