aboutsummaryrefslogtreecommitdiff
path: root/nowindows_test.go
diff options
context:
space:
mode:
authorn-peugnet <n.peugnet@free.fr>2021-09-24 15:22:30 +0200
committern-peugnet <n.peugnet@free.fr>2021-09-24 15:22:30 +0200
commitccb97e0bb5fb0e0c257411d442183d49dd734822 (patch)
treeefabe69b677517d1e6bbaa13383538fbf8d1a685 /nowindows_test.go
parenta07bbe4ef22d642347d18f0e0a62d24868500d23 (diff)
downloaddna-backup-ccb97e0bb5fb0e0c257411d442183d49dd734822.tar.gz
dna-backup-ccb97e0bb5fb0e0c257411d442183d49dd734822.zip
fix symlink tests on windows
split into symlink and NotReadable tests and do not build nowindows_test on windows.
Diffstat (limited to 'nowindows_test.go')
-rw-r--r--nowindows_test.go38
1 files changed, 38 insertions, 0 deletions
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)
+ }
+}