開発環境
- macOS Mojave - Apple (OS)
- Emacs (Text Editor)
- Windows 10 Pro (OS)
- Visual Studio Code (Text Editor)
- Go (プログラミング言語)
Head First Go (Jay McGavren(著)、O'Reilly Media)のChapter 15(responding to requests - Web Apps)、Pool Puzzle(439)の解答を求めてみる。
コード
sample2_test.go
package main func ExampleCallFunction() { callFunction(functionA) // Output: function called } func ExampleCallTwice() { callTwice(functionA) // Output: function called // function called } func ExampleCallWithArguments() { callWithArguments(functionC) // Output: function called // This is sentence is false } func ExamplePrintReturnValue() { printReturnValue(functionB) // Output: function called // Returning from function }
sample2.go
package main import "fmt" func callFunction(passedFunction func()) { passedFunction() } func callTwice(passedFunction func()) { passedFunction() passedFunction() } func callWithArguments(passedFunction func(string, bool)) { passedFunction("This is sentence is", false) } func printReturnValue(passedFunction func() string) { fmt.Println(passedFunction()) } func functionA() { fmt.Println("function called") } func functionB() string { fmt.Println("function called") return "Returning from function" } func functionC(a string, b bool) { fmt.Println("function called") fmt.Println(a, b) } func main() {}
入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal)
$ go test # _/.../sample2 [_/.../sample2.test] ./sample2_test.go:4:2: undefined: callFunction ./sample2_test.go:4:15: undefined: functionA FAIL _/.../sample2 [build failed] $ go test PASS ok _/.../sample2 0.005s $ go test # _/.../sample2 [_/.../sample2.test] ./sample2_test.go:6:2: undefined: callTwice FAIL _/.../sample2 [build failed] $ go test --- FAIL: Example (0.00s) got: function called function called function called want: function called\nfunction called FAIL exit status 1 FAIL _/.../sample2 0.005s $ go test --- FAIL: Example (0.00s) got: function called function called function called want: function called function called FAIL exit status 1 FAIL _/.../sample2 0.005s $ go test PASS ok _/.../sample2 0.005s $ go test # _/.../sample2 [_/.../sample2.test] ./sample2_test.go:13:2: undefined: callWithArguments ./sample2_test.go:13:20: undefined: functionC FAIL _/.../sample2 [build failed] $ go test PASS ok _/.../sample2 0.005s $ go test # _/.../sample2 [_/.../sample2.test] ./sample2_test.go:18:2: undefined: printReturnValue ./sample2_test.go:18:19: undefined: functionB FAIL _/.../sample2 [build failed] $ go test PASS ok _/.../sample2 0.005s $
テストで改訂2版 みんなのGo言語で知ったTastable Examplesを使ってみた。
0 コメント:
コメントを投稿