github.com/jwhonce/docker@v0.6.7-0.20190327063223-da823cf3a5a3/integration-cli/docker_api_build_windows_test.go (about)

     1  // +build windows
     2  
     3  package main
     4  
     5  import (
     6  	"net/http"
     7  
     8  	"github.com/docker/docker/integration-cli/checker"
     9  	"github.com/docker/docker/internal/test/fakecontext"
    10  	"github.com/docker/docker/internal/test/request"
    11  	"github.com/go-check/check"
    12  	"gotest.tools/assert"
    13  	is "gotest.tools/assert/cmp"
    14  )
    15  
    16  func (s *DockerSuite) TestBuildWithRecycleBin(c *check.C) {
    17  	testRequires(c, DaemonIsWindows)
    18  
    19  	dockerfile := "" +
    20  		"FROM " + testEnv.PlatformDefaults.BaseImage + "\n" +
    21  		"RUN md $REcycLE.biN && md missing\n" +
    22  		"RUN dir $Recycle.Bin && exit 1 || exit 0\n" +
    23  		"RUN dir missing\n"
    24  
    25  	ctx := fakecontext.New(c, "", fakecontext.WithDockerfile(dockerfile))
    26  	defer ctx.Close()
    27  
    28  	res, body, err := request.Post(
    29  		"/build",
    30  		request.RawContent(ctx.AsTarReader(c)),
    31  		request.ContentType("application/x-tar"))
    32  
    33  	c.Assert(err, checker.IsNil)
    34  	c.Assert(res.StatusCode, checker.Equals, http.StatusOK)
    35  
    36  	out, err := request.ReadBody(body)
    37  	assert.NilError(c, err)
    38  	assert.Check(c, is.Contains(string(out), "Successfully built"))
    39  }