32 lines
977 B
Go
32 lines
977 B
Go
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)
|
|
}
|
|
}
|