123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- package main
- import (
- "fmt"
- "os/exec"
- "path/filepath"
- "testing"
- )
- func TestBuildSixtySteps(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestBuildSixtySteps")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "foobuildsixtysteps", ".")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("foobuildsixtysteps")
- logDone("build - build an image with sixty build steps")
- }
- func TestAddSingleFileToRoot(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestAdd")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "testaddimg", "SingleFileToRoot")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("testaddimg")
- logDone("build - add single file to root")
- }
- func TestAddSingleFileToExistDir(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestAdd")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "testaddimg", "SingleFileToExistDir")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("testaddimg")
- logDone("build - add single file to existing dir")
- }
- func TestAddSingleFileToNonExistDir(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestAdd")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "testaddimg", "SingleFileToNonExistDir")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("testaddimg")
- logDone("build - add single file to non-existing dir")
- }
- func TestAddDirContentToRoot(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestAdd")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "testaddimg", "DirContentToRoot")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("testaddimg")
- logDone("build - add directory contents to root")
- }
- func TestAddDirContentToExistDir(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestAdd")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "testaddimg", "DirContentToExistDir")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("testaddimg")
- logDone("build - add directory contents to existing dir")
- }
- func TestAddWholeDirToRoot(t *testing.T) {
- buildDirectory := filepath.Join(workingDirectory, "build_tests", "TestAdd")
- buildCmd := exec.Command(dockerBinary, "build", "-t", "testaddimg", "WholeDirToRoot")
- buildCmd.Dir = buildDirectory
- out, exitCode, err := runCommandWithOutput(buildCmd)
- errorOut(err, t, fmt.Sprintf("build failed to complete: %v %v", out, err))
- if err != nil || exitCode != 0 {
- t.Fatal("failed to build the image")
- }
- deleteImages("testaddimg")
- logDone("build - add whole directory to root")
- }
- // TODO: TestCaching
- // TODO: TestADDCacheInvalidation
|