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) } }