本文整理汇总了Golang中github.com/goadesign/goa.Service.Use方法的典型用法代码示例。如果您正苦于以下问题:Golang Service.Use方法的具体用法?Golang Service.Use怎么用?Golang Service.Use使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/goadesign/goa.Service
的用法示例。
在下文中一共展示了Service.Use方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1:
Ω(app.Name()).Should(Equal(appName))
Ω(app.Logger).ShouldNot(BeNil())
Ω(app.ServeMux).ShouldNot(BeNil())
})
})
Describe("Use", func() {
Context("with a valid middleware", func() {
var m goa.Middleware
BeforeEach(func() {
m = middleware.RequestID()
})
JustBeforeEach(func() {
s.Use(m)
})
It("adds the middleware", func() {
ctrl := s.NewController("test")
Ω(ctrl.MiddlewareChain()).Should(HaveLen(1))
Ω(ctrl.MiddlewareChain()[0]).Should(BeAssignableToTypeOf(middleware.RequestID()))
})
})
})
Describe("HandleFunc", func() {
const resName = "res"
const actName = "act"
var handler, unmarshaler goa.Handler
const respStatus = 200
示例2:
rw = &TestResponseWriter{ParentHeader: make(http.Header)}
})
JustBeforeEach(func() {
s.Mux.ServeHTTP(rw, req)
})
It("handles requests with no registered handlers", func() {
Ω(string(rw.Body)).Should(Equal(`{"code":"not_found","status":404,"detail":"/foo"}` + "\n"))
})
Context("with middleware", func() {
middlewareCalled := false
BeforeEach(func() {
s.Use(TMiddleware(&middlewareCalled))
// trigger finalize
ctrl := s.NewController("test")
ctrl.MuxHandler("", nil, nil)
})
It("calls the middleware", func() {
Ω(middlewareCalled).Should(BeTrue())
})
})
Context("middleware and multiple controllers", func() {
middlewareCalled := 0
BeforeEach(func() {
s.Use(CMiddleware(&middlewareCalled))