inspect_test.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package container // import "github.com/docker/docker/integration/container"
  2. import (
  3. "runtime"
  4. "strings"
  5. "testing"
  6. containertypes "github.com/docker/docker/api/types/container"
  7. "github.com/docker/docker/integration/internal/container"
  8. "github.com/docker/docker/testutil/request"
  9. "gotest.tools/v3/assert"
  10. is "gotest.tools/v3/assert/cmp"
  11. )
  12. func TestInspectAnnotations(t *testing.T) {
  13. ctx := setupTest(t)
  14. apiClient := request.NewAPIClient(t)
  15. annotations := map[string]string{
  16. "hello": "world",
  17. "foo": "bar",
  18. }
  19. name := strings.ToLower(t.Name())
  20. id := container.Create(ctx, t, apiClient,
  21. container.WithName(name),
  22. container.WithCmd("true"),
  23. func(c *container.TestContainerConfig) {
  24. c.HostConfig.Annotations = annotations
  25. },
  26. )
  27. inspect, err := apiClient.ContainerInspect(ctx, id)
  28. assert.NilError(t, err)
  29. assert.Check(t, is.DeepEqual(inspect.HostConfig.Annotations, annotations))
  30. }
  31. // TestNetworkAliasesAreEmpty verifies that network-scoped aliases are not set
  32. // for non-custom networks (network-scoped aliases are only supported for
  33. // custom networks, except for the "Default Switch" network on Windows).
  34. func TestNetworkAliasesAreEmpty(t *testing.T) {
  35. ctx := setupTest(t)
  36. apiClient := request.NewAPIClient(t)
  37. netModes := []string{"host", "bridge", "none"}
  38. if runtime.GOOS == "windows" {
  39. netModes = []string{"nat", "none"}
  40. }
  41. for _, nwMode := range netModes {
  42. t.Run(nwMode, func(t *testing.T) {
  43. ctr := container.Create(ctx, t, apiClient,
  44. container.WithName("ctr-"+nwMode),
  45. container.WithImage("busybox:latest"),
  46. container.WithNetworkMode(nwMode))
  47. defer apiClient.ContainerRemove(ctx, ctr, containertypes.RemoveOptions{
  48. Force: true,
  49. })
  50. inspect := container.Inspect(ctx, t, apiClient, ctr)
  51. netAliases := inspect.NetworkSettings.Networks[nwMode].Aliases
  52. assert.Check(t, is.Nil(netAliases))
  53. })
  54. }
  55. }