From 33e63ebc20e38d20077c1f184f05a4a0656e189a Mon Sep 17 00:00:00 2001 From: Emmanuel Odeke Date: Sun, 11 Sep 2016 05:06:29 -0700 Subject: [PATCH] os: add more examples Updates #16360. Adds examples for: + Chmod + Chtimes + FileMode Change-Id: I1b61ee0392fa3774593a7f36aaf0fa1e484c778b Reviewed-on: https://go-review.googlesource.com/28963 Run-TryBot: Andrew Gerrand TryBot-Result: Gobot Gobot Reviewed-by: Andrew Gerrand --- src/os/example_test.go | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/os/example_test.go b/src/os/example_test.go index e82ee3e3c3..a28255254b 100644 --- a/src/os/example_test.go +++ b/src/os/example_test.go @@ -5,8 +5,10 @@ package os_test import ( + "fmt" "log" "os" + "time" ) func ExampleOpenFile() { @@ -18,3 +20,35 @@ func ExampleOpenFile() { log.Fatal(err) } } + +func ExampleChmod() { + if err := os.Chmod("some-filename", 0644); err != nil { + log.Fatal(err) + } +} + +func ExampleChtimes() { + mtime := time.Date(2006, time.February, 1, 3, 4, 5, 0, time.UTC) + atime := time.Date(2007, time.March, 2, 4, 5, 6, 0, time.UTC) + if err := os.Chtimes("some-filename", atime, mtime); err != nil { + log.Fatal(err) + } +} + +func ExampleFileMode() { + fi, err := os.Stat("some-filename") + if err != nil { + log.Fatal(err) + } + + switch mode := fi.Mode(); { + case mode.IsRegular(): + fmt.Println("regular file") + case mode.IsDir(): + fmt.Println("directory") + case mode&os.ModeSymlink != 0: + fmt.Println("symbolic link") + case mode&os.ModeNamedPipe != 0: + fmt.Println("named pipe") + } +} -- 2.48.1