github.com/mattn/go@v0.0.0-20171011075504-07f7db3ea99f/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   }