From ccb97e0bb5fb0e0c257411d442183d49dd734822 Mon Sep 17 00:00:00 2001 From: n-peugnet Date: Fri, 24 Sep 2021 15:22:30 +0200 Subject: fix symlink tests on windows split into symlink and NotReadable tests and do not build nowindows_test on windows. --- nowindows_test.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 nowindows_test.go (limited to 'nowindows_test.go') diff --git a/nowindows_test.go b/nowindows_test.go new file mode 100644 index 0000000..2f2879c --- /dev/null +++ b/nowindows_test.go @@ -0,0 +1,38 @@ +// +build !windows + +package main + +import ( + "bytes" + "os" + "path/filepath" + "strings" + "testing" + + "github.com/n-peugnet/dna-backup/logger" + "github.com/n-peugnet/dna-backup/testutils" + "github.com/n-peugnet/dna-backup/utils" +) + +func TestNotReadable(t *testing.T) { + var output bytes.Buffer + logger.SetOutput(&output) + defer logger.SetOutput(os.Stderr) + tmpDir := t.TempDir() + f, err := os.OpenFile(filepath.Join(tmpDir, "notreadable"), os.O_CREATE, 0000) + if err != nil { + t.Fatal(err) + } + if err := f.Close(); err != nil { + t.Fatal(err) + } + var buff bytes.Buffer + files := listFiles(tmpDir) + testutils.AssertLen(t, 1, files, "Files") + concatFiles(&files, utils.NopCloser(&buff)) + testutils.AssertLen(t, 0, files, "Files") + testutils.AssertLen(t, 0, buff.Bytes(), "Buffer") + if !strings.Contains(output.String(), "notreadable") { + t.Errorf("log should contain a warning for notreadable, actual %q", &output) + } +} -- cgit v1.2.3