mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
5136096520
Commit the rwLayer to get the correct DiffID Refacator copy in thebuilder move more code into exportImage cleanup some windows tests Release the newly commited layer. Set the imageID on the buildStage after exporting a new image. Move archiver to BuildManager. Have ReleaseableLayer.Commit return a layer and store the Image from exportImage in the local imageSources cache Remove NewChild from image interface. Signed-off-by: Daniel Nephin <dnephin@docker.com>
56 lines
1.2 KiB
Go
56 lines
1.2 KiB
Go
package tempfile
|
|
|
|
import (
|
|
"io/ioutil"
|
|
"os"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
// TempFile is a temporary file that can be used with unit tests. TempFile
|
|
// reduces the boilerplate setup required in each test case by handling
|
|
// setup errors.
|
|
type TempFile struct {
|
|
File *os.File
|
|
}
|
|
|
|
// NewTempFile returns a new temp file with contents
|
|
func NewTempFile(t require.TestingT, prefix string, content string) *TempFile {
|
|
file, err := ioutil.TempFile("", prefix+"-")
|
|
require.NoError(t, err)
|
|
|
|
_, err = file.Write([]byte(content))
|
|
require.NoError(t, err)
|
|
file.Close()
|
|
return &TempFile{File: file}
|
|
}
|
|
|
|
// Name returns the filename
|
|
func (f *TempFile) Name() string {
|
|
return f.File.Name()
|
|
}
|
|
|
|
// Remove removes the file
|
|
func (f *TempFile) Remove() {
|
|
os.Remove(f.Name())
|
|
}
|
|
|
|
// TempDir is a temporary directory that can be used with unit tests. TempDir
|
|
// reduces the boilerplate setup required in each test case by handling
|
|
// setup errors.
|
|
type TempDir struct {
|
|
Path string
|
|
}
|
|
|
|
// NewTempDir returns a new temp file with contents
|
|
func NewTempDir(t require.TestingT, prefix string) *TempDir {
|
|
path, err := ioutil.TempDir("", prefix+"-")
|
|
require.NoError(t, err)
|
|
|
|
return &TempDir{Path: path}
|
|
}
|
|
|
|
// Remove removes the file
|
|
func (f *TempDir) Remove() {
|
|
os.Remove(f.Path)
|
|
}
|