diff options
author | Jakob Unterwurzacher | 2016-02-07 10:55:13 +0100 |
---|---|---|
committer | Jakob Unterwurzacher | 2016-02-07 10:55:13 +0100 |
commit | 3a4922b5d747d54c9cb62833c9d69acb96b072f6 (patch) | |
tree | 39eea52028ea5a60f1e0cce47be79a88f0a8169e /integration_tests/main_test.go | |
parent | e111e20649cfacd7b02dd454d75db879aa2ca53c (diff) |
Add tests for long name creation and renaming (currently failing, obviously)
Diffstat (limited to 'integration_tests/main_test.go')
-rw-r--r-- | integration_tests/main_test.go | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/integration_tests/main_test.go b/integration_tests/main_test.go index 03b26f9..6ac03e1 100644 --- a/integration_tests/main_test.go +++ b/integration_tests/main_test.go @@ -3,6 +3,7 @@ package integration_tests // File reading, writing, modification, truncate import ( + "syscall" "bytes" "crypto/md5" "encoding/hex" @@ -350,3 +351,50 @@ func TestDirOverwrite(t *testing.T) { t.Fatal(err) } } + +func TestLongNames(t *testing.T) { + // Create + wd := defaultPlainDir + n255x := string(bytes.Repeat([]byte("x"), 255)) + f, err := os.Create(wd+n255x) + if err != nil { + t.Fatalf("Could not create n255x") + } + f.Close() + if !verifyExistence(wd+n255x) { + t.Errorf("n255x is not in directory listing") + } + // Rename long to long + n255y := string(bytes.Repeat([]byte("y"), 255)) + err = os.Rename(wd+n255x, wd+n255y) + if err != nil { + t.Fatalf("Could not rename n255x to n255y") + } + if !verifyExistence(wd+n255y) { + t.Errorf("n255y is not in directory listing") + } + // Rename long to short + err = os.Rename(wd+n255y, wd+"short") + if err != nil { + t.Fatalf("Could not rename n255y to short") + } + if !verifyExistence(wd+"short") { + t.Errorf("short is not in directory listing") + } + // Rename short to long + err = os.Rename(wd+"short", wd+n255x) + if err != nil { + t.Fatalf("Could not rename short to n255x") + } + if !verifyExistence(wd+n255x) { + t.Errorf("255x is not in directory listing II") + } + // Unlink + err = syscall.Unlink(wd+n255x) + if err != nil { + t.Fatalf("Could not unlink n255x") + } + if verifyExistence(wd+n255x) { + t.Errorf("n255x still there after unlink") + } +} |