github.com/tonistiigi/docker@v0.10.1-0.20240229224939-974013b0dc6a/integration/container/exec_linux_test.go (about)

     1  package container // import "github.com/docker/docker/integration/container"
     2  
     3  import (
     4  	"strings"
     5  	"testing"
     6  
     7  	"github.com/docker/docker/api/types"
     8  	"github.com/docker/docker/api/types/versions"
     9  	"github.com/docker/docker/integration/internal/container"
    10  	"gotest.tools/v3/assert"
    11  	"gotest.tools/v3/skip"
    12  )
    13  
    14  func TestExecConsoleSize(t *testing.T) {
    15  	skip.If(t, testEnv.DaemonInfo.OSType != "linux")
    16  	skip.If(t, versions.LessThan(testEnv.DaemonAPIVersion(), "1.42"), "skip test from new feature")
    17  
    18  	ctx := setupTest(t)
    19  	apiClient := testEnv.APIClient()
    20  
    21  	cID := container.Run(ctx, t, apiClient, container.WithImage("busybox"))
    22  
    23  	result, err := container.Exec(ctx, apiClient, cID, []string{"stty", "size"},
    24  		func(ec *types.ExecConfig) {
    25  			ec.Tty = true
    26  			ec.ConsoleSize = &[2]uint{57, 123}
    27  		},
    28  	)
    29  
    30  	assert.NilError(t, err)
    31  	assert.Equal(t, strings.TrimSpace(result.Stdout()), "57 123")
    32  }