github.com/Prakhar-Agarwal-byte/moby@v0.0.0-20231027092010-a14e3e8ab87e/integration-cli/docker_api_build_windows_test.go (about)

     1  //go:build windows
     2  
     3  package main
     4  
     5  import (
     6  	"net/http"
     7  	"testing"
     8  
     9  	"github.com/Prakhar-Agarwal-byte/moby/testutil"
    10  	"github.com/Prakhar-Agarwal-byte/moby/testutil/fakecontext"
    11  	"github.com/Prakhar-Agarwal-byte/moby/testutil/request"
    12  	"gotest.tools/v3/assert"
    13  	is "gotest.tools/v3/assert/cmp"
    14  )
    15  
    16  func (s *DockerAPISuite) TestBuildWithRecycleBin(c *testing.T) {
    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(testutil.GetContext(c),
    29  		"/build",
    30  		request.RawContent(ctx.AsTarReader(c)),
    31  		request.ContentType("application/x-tar"))
    32  
    33  	assert.NilError(c, err)
    34  	assert.Equal(c, res.StatusCode, 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  }