OLD | NEW |
| (Empty) |
1 // Copyright 2017 The LUCI Authors. All rights reserved. | |
2 // Use of this source code is governed under the Apache License, Version 2.0 | |
3 // that can be found in the LICENSE file. | |
4 | |
5 package swarming | |
6 | |
7 import ( | |
8 "net/http" | |
9 "net/http/httptest" | |
10 "net/url" | |
11 "testing" | |
12 | |
13 "github.com/julienschmidt/httprouter" | |
14 "golang.org/x/net/context" | |
15 | |
16 "github.com/luci/gae/impl/memory" | |
17 "github.com/luci/luci-go/common/clock/testclock" | |
18 "github.com/luci/luci-go/milo/appengine/common" | |
19 "github.com/luci/luci-go/server/auth" | |
20 "github.com/luci/luci-go/server/auth/authtest" | |
21 "github.com/luci/luci-go/server/auth/identity" | |
22 "github.com/luci/luci-go/server/router" | |
23 "github.com/luci/luci-go/server/templates" | |
24 | |
25 . "github.com/smartystreets/goconvey/convey" | |
26 ) | |
27 | |
28 func requestCtx(c context.Context, params ...httprouter.Param) *router.Context { | |
29 p := httprouter.Params(params) | |
30 r := &http.Request{URL: &url.URL{Path: "/foobar"}} | |
31 c = common.WithRequest(c, r) | |
32 w := httptest.NewRecorder() | |
33 return &router.Context{ | |
34 Context: c, | |
35 Params: p, | |
36 Writer: w, | |
37 Request: r, | |
38 } | |
39 } | |
40 | |
41 func TestHtml(t *testing.T) { | |
42 c := memory.UseWithAppID(context.Background(), "dev~luci-milo") | |
43 c, _ = testclock.UseTime(c, testclock.TestTimeUTC) | |
44 c = templates.Use(c, common.GetTemplateBundle("../frontend/templates")) | |
45 c = auth.WithState(c, &authtest.FakeState{Identity: identity.AnonymousId
entity}) | |
46 | |
47 Convey(`HTML handler tests`, t, func() { | |
48 Convey(`Build pages`, func() { | |
49 Convey(`Empty request`, func() { | |
50 rc := requestCtx(c) | |
51 BuildHandler(rc) | |
52 response := rc.Writer.(*httptest.ResponseRecorde
r) | |
53 So(response.Code, ShouldEqual, http.StatusBadReq
uest) | |
54 }) | |
55 Convey(`With id foo`, func() { | |
56 rc := requestCtx(c, httprouter.Param{"id", "foo"
}) | |
57 BuildHandler(rc) | |
58 response := rc.Writer.(*httptest.ResponseRecorde
r) | |
59 So(response.Code, ShouldEqual, http.StatusBadReq
uest) | |
60 }) | |
61 }) | |
62 | |
63 Convey(`Log pages`, func() { | |
64 Convey(`Empty request`, func() { | |
65 rc := requestCtx(c) | |
66 LogHandler(rc) | |
67 response := rc.Writer.(*httptest.ResponseRecorde
r) | |
68 So(response.Code, ShouldEqual, http.StatusBadReq
uest) | |
69 }) | |
70 }) | |
71 }) | |
72 } | |
OLD | NEW |