github.com/stingnevermore/go@v0.0.0-20180120041312-3810f5bfed72/doc/articles/wiki/final-test.patch (about) 1 --- final.go 2017-08-31 13:19:00.422925489 -0700 2 +++ final-test.go 2017-08-31 13:23:43.381391659 -0700 3 @@ -8,6 +8,7 @@ 4 "html/template" 5 "io/ioutil" 6 "log" 7 + "net" 8 "net/http" 9 "regexp" 10 ) 11 @@ -86,5 +87,15 @@ 12 http.HandleFunc("/edit/", makeHandler(editHandler)) 13 http.HandleFunc("/save/", makeHandler(saveHandler)) 14 15 - log.Fatal(http.ListenAndServe(":8080", nil)) 16 + l, err := net.Listen("tcp", "127.0.0.1:0") 17 + if err != nil { 18 + log.Fatal(err) 19 + } 20 + err = ioutil.WriteFile("final-test-port.txt", []byte(l.Addr().String()), 0644) 21 + if err != nil { 22 + log.Fatal(err) 23 + } 24 + s := &http.Server{} 25 + s.Serve(l) 26 + return 27 }