exec_linux_test.go 930 B

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