//go:build linux || freebsd // +build linux freebsd package system // import "github.com/docker/docker/pkg/system" import ( "os" "path/filepath" "testing" ) // TestLstat tests Lstat for existing and non existing files func TestLstat(t *testing.T) { tmpDir := t.TempDir() file := filepath.Join(tmpDir, "exist") if err := os.WriteFile(file, []byte("hello"), 0o644); err != nil { t.Fatal(err) } statFile, err := Lstat(file) if err != nil { t.Fatal(err) } if statFile == nil { t.Fatal("returned empty stat for existing file") } statInvalid, err := Lstat(filepath.Join(tmpDir, "nosuchfile")) if err == nil { t.Fatal("did not return error for non-existing file") } if statInvalid != nil { t.Fatal("returned non-nil stat for non-existing file") } }