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