12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package restful
- import (
- "fmt"
- "io"
- "testing"
- )
- var uris = []string{}
- func setup(container *Container) {
- wsCount := 26
- rtCount := 26
- for i := 0; i < wsCount; i++ {
- root := fmt.Sprintf("/%s/{%s}/", string(i+97), string(i+97))
- ws := new(WebService).Path(root)
- for j := 0; j < rtCount; j++ {
- sub := fmt.Sprintf("/%s2/{%s2}", string(j+97), string(j+97))
- ws.Route(ws.GET(sub).To(echo))
- }
- container.Add(ws)
- for _, each := range ws.Routes() {
- uris = append(uris, "http://bench.com"+each.Path)
- }
- }
- }
- func echo(req *Request, resp *Response) {
- io.WriteString(resp.ResponseWriter, "echo")
- }
- func BenchmarkMany(b *testing.B) {
- container := NewContainer()
- setup(container)
- b.ResetTimer()
- for t := 0; t < b.N; t++ {
- for _, each := range uris {
- // println(each)
- sendItTo(each, container)
- }
- }
- }
|