12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package builder
- import (
- "io/ioutil"
- "os"
- "path/filepath"
- "testing"
- )
- const (
- dockerfileContents = "FROM busybox"
- dockerignoreFilename = ".dockerignore"
- testfileContents = "test"
- )
- // createTestTempDir creates a temporary directory for testing.
- // It returns the created path and a cleanup function which is meant to be used as deferred call.
- // When an error occurs, it terminates the test.
- func createTestTempDir(t *testing.T, dir, prefix string) (string, func()) {
- path, err := ioutil.TempDir(dir, prefix)
- if err != nil {
- t.Fatalf("Error when creating directory %s with prefix %s: %s", dir, prefix, err)
- }
- return path, func() {
- err = os.RemoveAll(path)
- if err != nil {
- t.Fatalf("Error when removing directory %s: %s", path, err)
- }
- }
- }
- // createTestTempSubdir creates a temporary directory for testing.
- // It returns the created path but doesn't provide a cleanup function,
- // so createTestTempSubdir should be used only for creating temporary subdirectories
- // whose parent directories are properly cleaned up.
- // When an error occurs, it terminates the test.
- func createTestTempSubdir(t *testing.T, dir, prefix string) string {
- path, err := ioutil.TempDir(dir, prefix)
- if err != nil {
- t.Fatalf("Error when creating directory %s with prefix %s: %s", dir, prefix, err)
- }
- return path
- }
- // createTestTempFile creates a temporary file within dir with specific contents and permissions.
- // When an error occurs, it terminates the test
- func createTestTempFile(t *testing.T, dir, filename, contents string, perm os.FileMode) string {
- filePath := filepath.Join(dir, filename)
- err := ioutil.WriteFile(filePath, []byte(contents), perm)
- if err != nil {
- t.Fatalf("Error when creating %s file: %s", filename, err)
- }
- return filePath
- }
|