From 19f53e14f10bf7e8c3457fb562c97e38707187aa Mon Sep 17 00:00:00 2001 From: Michael Crosby Date: Wed, 13 Nov 2013 11:03:56 -0800 Subject: [PATCH] Add test for ApplyDiff Upstream-commit: a69d86e0b19d804819d37a2a9edc03803267f579 Component: engine --- components/engine/aufs/aufs_test.go | 51 +++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/components/engine/aufs/aufs_test.go b/components/engine/aufs/aufs_test.go index 872f14441b..a33441bbd0 100644 --- a/components/engine/aufs/aufs_test.go +++ b/components/engine/aufs/aufs_test.go @@ -464,3 +464,54 @@ func TestDiffSize(t *testing.T) { t.Fatalf("Expected size to be %d got %d", size, diffSize) } } + +func TestApplyDiff(t *testing.T) { + d := newDriver(t) + defer os.RemoveAll(tmp) + defer d.Cleanup() + + if err := d.Create("1", ""); err != nil { + t.Fatal(err) + } + + diffPath, err := d.Get("1") + if err != nil { + t.Fatal(err) + } + + // Add a file to the diff path with a fixed size + size := int64(1024) + + f, err := os.Create(path.Join(diffPath, "test_file")) + if err != nil { + t.Fatal(err) + } + f.Truncate(size) + f.Close() + + diff, err := d.Diff("1") + if err != nil { + t.Fatal(err) + } + + if err := d.Create("2", ""); err != nil { + t.Fatal(err) + } + if err := d.Create("3", "2"); err != nil { + t.Fatal(err) + } + + if err := d.ApplyDiff("3", diff); err != nil { + t.Fatal(err) + } + + // Ensure that the file is in the mount point for id 3 + + mountPoint, err := d.Get("3") + if err != nil { + t.Fatal(err) + } + if _, err := os.Stat(path.Join(mountPoint, "test_file")); err != nil { + t.Fatal(err) + } +}