1
0
mirror of https://github.com/golang/go synced 2024-11-19 21:04:43 -07:00
go/src/pkg/path/example_test.go
Andrew Gerrand 11e113db57 godoc: make example code more readable with new comment convention
go/doc: move Examples to go/ast
cmd/go: use go/doc to read examples
src/pkg: update examples to use new convention

This is to make whole file examples more readable. When presented as a
complete function, preceding an Example with its output is confusing.
The new convention is to put the expected output in the final comment
of the example, preceded by the string "output:" (case insensitive).

An idiomatic example looks like this:

// This example demonstrates Foo by doing bar and quux.
func ExampleFoo() {
        // example body that does bar and quux

        // Output:
        // example output
}

R=rsc, gri
CC=golang-dev
https://golang.org/cl/5673053
2012-02-16 11:50:28 +11:00

64 lines
1.1 KiB
Go

// Copyright 2012 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package path_test
import (
"fmt"
"path"
)
func ExampleBase() {
fmt.Println(path.Base("/a/b"))
// Output: b
}
func ExampleClean() {
paths := []string{
"a/c",
"a//c",
"a/c/.",
"a/c/b/..",
"/../a/c",
"/../a/b/../././/c",
}
for _, p := range paths {
fmt.Printf("Clean(%q) = %q\n", p, path.Clean(p))
}
// Output:
// Clean("a/c") = "a/c"
// Clean("a//c") = "a/c"
// Clean("a/c/.") = "a/c"
// Clean("a/c/b/..") = "a/c"
// Clean("/../a/c") = "/a/c"
// Clean("/../a/b/../././/c") = "/a/c"
}
func ExampleDir() {
fmt.Println(path.Dir("/a/b/c"))
// Output: /a/b
}
func ExampleExt() {
fmt.Println(path.Ext("/a/b/c/bar.css"))
// Output: .css
}
func ExampleIsAbs() {
fmt.Println(path.IsAbs("/dev/null"))
// Output: true
}
func ExampleJoin() {
fmt.Println(path.Join("a", "b", "c"))
// Output: a/b/c
}
func ExampleSplit() {
fmt.Println(path.Split("static/myfile.css"))
// Output: static/ myfile.css
}