rclone/vendor/github.com/pengsrc/go-shared/pid/pidfile_test.go
2018-01-16 13:20:59 +00:00

43 lines
825 B
Go

package pid
import (
"io/ioutil"
"os"
"path/filepath"
"testing"
)
func TestNewAndRemove(t *testing.T) {
dir, err := ioutil.TempDir(os.TempDir(), "test-pidfile")
if err != nil {
t.Fatal("Could not create test directory")
}
path := filepath.Join(dir, "testfile")
file, err := New(path)
if err != nil {
t.Fatal("Could not create test file", err)
}
_, err = New(path)
if err == nil {
t.Fatal("Test file creation not blocked")
}
if err := file.Remove(); err != nil {
t.Fatal("Could not delete created test file")
}
if err := os.Remove(dir); err != nil {
t.Fatal("Could not delete test dir")
}
}
func TestRemoveInvalidPath(t *testing.T) {
file := File{path: filepath.Join("foo", "bar")}
if err := file.Remove(); err == nil {
t.Fatal("Non-existing file doesn't give an error on delete")
}
}