github.com/zhouyu0/docker-note@v0.0.0-20190722021225-b8d3825084db/integration-cli/docker_cli_config_create_test.go (about)

     1  // +build !windows
     2  
     3  package main
     4  
     5  import (
     6  	"io/ioutil"
     7  	"os"
     8  	"strings"
     9  
    10  	"github.com/docker/docker/integration-cli/checker"
    11  	"github.com/go-check/check"
    12  )
    13  
    14  func (s *DockerSwarmSuite) TestConfigCreateWithFile(c *check.C) {
    15  	d := s.AddDaemon(c, true, true)
    16  
    17  	testFile, err := ioutil.TempFile("", "configCreateTest")
    18  	c.Assert(err, checker.IsNil) // ensure temp file is created
    19  	defer os.Remove(testFile.Name())
    20  
    21  	testData := "TESTINGDATA"
    22  	_, err = testFile.Write([]byte(testData))
    23  	c.Assert(err, checker.IsNil) // ensure temp file is written
    24  
    25  	testName := "test_config"
    26  	out, err := d.Cmd("config", "create", testName, testFile.Name())
    27  	c.Assert(err, checker.IsNil, check.Commentf("%s", out))
    28  	c.Assert(strings.TrimSpace(out), checker.Not(checker.Equals), "")
    29  
    30  	id := strings.TrimSpace(out)
    31  	config := d.GetConfig(c, id)
    32  	c.Assert(config.Spec.Name, checker.Equals, testName)
    33  }