github.com/docker/docker@v299999999.0.0-20200612211812-aaf470eca7b5+incompatible/daemon/graphdriver/btrfs/btrfs_test.go (about)

     1  // +build linux
     2  
     3  package btrfs // import "github.com/docker/docker/daemon/graphdriver/btrfs"
     4  
     5  import (
     6  	"os"
     7  	"path"
     8  	"testing"
     9  
    10  	"github.com/docker/docker/daemon/graphdriver/graphtest"
    11  )
    12  
    13  // This avoids creating a new driver for each test if all tests are run
    14  // Make sure to put new tests between TestBtrfsSetup and TestBtrfsTeardown
    15  func TestBtrfsSetup(t *testing.T) {
    16  	graphtest.GetDriver(t, "btrfs")
    17  }
    18  
    19  func TestBtrfsCreateEmpty(t *testing.T) {
    20  	graphtest.DriverTestCreateEmpty(t, "btrfs")
    21  }
    22  
    23  func TestBtrfsCreateBase(t *testing.T) {
    24  	graphtest.DriverTestCreateBase(t, "btrfs")
    25  }
    26  
    27  func TestBtrfsCreateSnap(t *testing.T) {
    28  	graphtest.DriverTestCreateSnap(t, "btrfs")
    29  }
    30  
    31  func TestBtrfsSubvolDelete(t *testing.T) {
    32  	d := graphtest.GetDriver(t, "btrfs")
    33  	if err := d.CreateReadWrite("test", "", nil); err != nil {
    34  		t.Fatal(err)
    35  	}
    36  	defer graphtest.PutDriver(t)
    37  
    38  	dirFS, err := d.Get("test", "")
    39  	if err != nil {
    40  		t.Fatal(err)
    41  	}
    42  	defer d.Put("test")
    43  
    44  	dir := dirFS.Path()
    45  
    46  	if err := subvolCreate(dir, "subvoltest"); err != nil {
    47  		t.Fatal(err)
    48  	}
    49  
    50  	if _, err := os.Stat(path.Join(dir, "subvoltest")); err != nil {
    51  		t.Fatal(err)
    52  	}
    53  
    54  	if err := d.Remove("test"); err != nil {
    55  		t.Fatal(err)
    56  	}
    57  
    58  	if _, err := os.Stat(path.Join(dir, "subvoltest")); !os.IsNotExist(err) {
    59  		t.Fatalf("expected not exist error on nested subvol, got: %v", err)
    60  	}
    61  }
    62  
    63  func TestBtrfsTeardown(t *testing.T) {
    64  	graphtest.PutDriver(t)
    65  }