Merge pull request #28264 from dmcgowan/fix-overlay2-naivediff-unittest

Skip overlay2 diff tests when using naivediff
This commit is contained in:
Vincent Demeester 2016-11-11 00:24:06 +01:00 committed by GitHub
commit f3f9b3dac9
2 changed files with 16 additions and 1 deletions

View file

@ -608,7 +608,7 @@ func (d *Driver) ApplyDiff(id string, parent string, diff io.Reader) (size int64
return 0, err
}
return d.DiffSize(id, parent)
return directory.Size(applyDir)
}
func (d *Driver) getDiffPath(id string) string {

View file

@ -3,6 +3,7 @@
package overlay2
import (
"io/ioutil"
"os"
"syscall"
"testing"
@ -33,6 +34,18 @@ func cdMountFrom(dir, device, target, mType, label string) error {
return syscall.Mount(device, target, mType, 0, label)
}
func skipIfNaive(t *testing.T) {
td, err := ioutil.TempDir("", "naive-check-")
if err != nil {
t.Fatalf("Failed to create temp dir: %v", err)
}
defer os.RemoveAll(td)
if useNaiveDiff(td) {
t.Skipf("Cannot run test with naive diff")
}
}
// This avoids creating a new driver for each test if all tests are run
// Make sure to put new tests between TestOverlaySetup and TestOverlayTeardown
func TestOverlaySetup(t *testing.T) {
@ -56,10 +69,12 @@ func TestOverlay128LayerRead(t *testing.T) {
}
func TestOverlayDiffApply10Files(t *testing.T) {
skipIfNaive(t)
graphtest.DriverTestDiffApply(t, 10, driverName)
}
func TestOverlayChanges(t *testing.T) {
skipIfNaive(t)
graphtest.DriverTestChanges(t, driverName)
}