当前位置: 首页>>代码示例>>Golang>>正文


Golang Context.ResponseStatus方法代码示例

本文整理汇总了Golang中github.com/goadesign/goa.Context.ResponseStatus方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.ResponseStatus方法的具体用法?Golang Context.ResponseStatus怎么用?Golang Context.ResponseStatus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在github.com/goadesign/goa.Context的用法示例。


在下文中一共展示了Context.ResponseStatus方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1:

	Describe("Request", func() {
		It("returns nil if not initialized", func() {
			Ω(ctx.Request()).Should(BeNil())
		})
	})

	Describe("Header", func() {
		It("returns nil if not initialized", func() {
			Ω(ctx.Header()).Should(BeNil())
		})
	})

	Describe("ResponseStatus", func() {
		It("returns 0 if not initialized", func() {
			Ω(ctx.ResponseStatus()).Should(Equal(0))
		})
	})

	Describe("ResponseLength", func() {
		It("returns 0 if not initialized", func() {
			Ω(ctx.ResponseLength()).Should(Equal(0))
		})
	})

	Describe("Get", func() {
		It(`returns "", false if not initialized`, func() {
			p := ctx.Get("foo")
			Ω(p).Should(Equal(""))
		})
	})
开发者ID:jianjunliu,项目名称:goa,代码行数:30,代码来源:context_test.go

示例2:

			Ω(mErr).ShouldNot(HaveOccurred())
		})
	})

	Context("with a context", func() {
		var service goa.Service
		var ctx *goa.Context

		BeforeEach(func() {
			service = goa.New("test")
			req, err := http.NewRequest("GET", "/goo", nil)
			Ω(err).ShouldNot(HaveOccurred())
			rw := new(testResponseWriter)
			params := url.Values{"foo": []string{"bar"}}
			ctx = goa.NewContext(nil, service, req, rw, params)
			Ω(ctx.ResponseStatus()).Should(Equal(0))
		})

		Context("using a goa handler", func() {
			BeforeEach(func() {
				var goaHandler goa.Handler = func(ctx *goa.Context) error {
					ctx.Respond(200, "ok")
					return nil
				}
				input = goaHandler
			})

			It("wraps it in a middleware", func() {
				Ω(mErr).ShouldNot(HaveOccurred())
				h := func(ctx *goa.Context) error { return nil }
				Ω(middleware(h)(ctx)).ShouldNot(HaveOccurred())
开发者ID:jim-slattery-rs,项目名称:middleware,代码行数:31,代码来源:middleware_test.go

示例3:

		s := goa.New("test")
		s.SetEncoder(goa.JSONEncoderFactory(), true, "*/*")
		ctx = goa.NewContext(nil, s, req, rw, nil)

		spec = &httpauth.Specification{
			ValidationProvider: validFunc,
		}
	})

	It("handles valid credentials", func() {
		req.Header.Add("Authorization", authString)

		auth := httpauth.BasicMiddleware(spec)(handler)
		Ω(auth(ctx)).ShouldNot(HaveOccurred())
		Ω(ctx.ResponseStatus()).Should(Equal(http.StatusOK))
		Ω(rw.Body).Should(Equal([]byte("\"ok\"\n")))
	})

	It("handles invalid credentials", func() {
		auth := httpauth.BasicMiddleware(spec)(handler)
		Ω(auth(ctx)).ShouldNot(HaveOccurred())
		Ω(ctx.ResponseStatus()).Should(Equal(http.StatusUnauthorized))
		Ω(ctx.Header()).Should(HaveKey("Www-Authenticate"))
		Ω(ctx.Header().Get("Www-Authenticate")).Should(Equal(`Basic realm="Restricted"`))
		Ω(rw.Body).Should(ContainSubstring("Unauthorized"))
	})

	It("sets a custom realm", func() {
		spec.Realm = "Custom"
开发者ID:moorereason,项目名称:httpauth,代码行数:29,代码来源:httpauth_test.go

示例4:

			Ω(mErr).ShouldNot(HaveOccurred())
		})
	})

	Context("with a context", func() {
		var service goa.Service
		var ctx *goa.Context

		BeforeEach(func() {
			service = goa.New("test")
			req, err := http.NewRequest("GET", "/goo", nil)
			Ω(err).ShouldNot(HaveOccurred())
			rw := new(TestResponseWriter)
			params := url.Values{"foo": []string{"bar"}}
			ctx = goa.NewContext(nil, service, req, rw, params)
			Ω(ctx.ResponseStatus()).Should(Equal(0))
		})

		Context("using a goa handler", func() {
			BeforeEach(func() {
				var goaHandler goa.Handler = func(ctx *goa.Context) error {
					ctx.Respond(200, "ok")
					return nil
				}
				input = goaHandler
			})

			It("wraps it in a middleware", func() {
				Ω(mErr).ShouldNot(HaveOccurred())
				h := func(ctx *goa.Context) error { return nil }
				Ω(middleware(h)(ctx)).ShouldNot(HaveOccurred())
开发者ID:jianjunliu,项目名称:goa,代码行数:31,代码来源:middleware_test.go


注:本文中的github.com/goadesign/goa.Context.ResponseStatus方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。