feat: backend container executor implement

This commit is contained in:
2026-08-15 20:58:01 +08:00
parent b4e18c6f0c
commit fbce91d797
10 changed files with 1662 additions and 1 deletions
+31
View File
@@ -0,0 +1,31 @@
package containerengine
import (
"strings"
"testing"
)
func TestDecodeImageLoadResponseConsumesCompleteSuccessStream(t *testing.T) {
t.Parallel()
input := strings.NewReader("{\"stream\":\"Loaded image: repository:20260814-093609-d7ed70f0-v1.1.8.1\\n\"}\n" +
"{\"stream\":\"Loaded image: repository:20260814-093609-d7ed70f0\\n\"}\n")
if err := decodeImageLoadResponse(input); err != nil {
t.Fatalf("decode successful load response: %v", err)
}
}
func TestDecodeImageLoadResponseReturnsStreamError(t *testing.T) {
t.Parallel()
err := decodeImageLoadResponse(strings.NewReader(`{"errorDetail":{"code":500,"message":"load failed"}}`))
if err == nil || err.Error() != "load failed" {
t.Fatalf("unexpected load error: %v", err)
}
}
func TestDecodeImageLoadResponseRejectsMalformedJSON(t *testing.T) {
t.Parallel()
err := decodeImageLoadResponse(strings.NewReader(`{"stream":`))
if err == nil {
t.Fatalf("expected malformed response error, got %v", err)
}
}