Skip to content

Commit

Permalink
Merge pull request #9 from twharmon/fakes
Browse files Browse the repository at this point in the history
Fix fakes
  • Loading branch information
twharmon authored Apr 8, 2022
2 parents 7b993df + dfecdda commit b93cfe8
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 10 deletions.
23 changes: 20 additions & 3 deletions fakes/context.go
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
package fakes

import (
"encoding/json"

"github.com/twharmon/golamb"
)

type Context struct {
request *Request
response *Response
Expand All @@ -10,15 +16,26 @@ func NewContext() *Context {
return &Context{}
}

func (c *Context) Request() *Request {
func (c *Context) Request() golamb.Request {
return c.request
}

func (c *Context) AWS() *AWS {
func (c *Context) AWS() golamb.AWSServiceProvider {
return c.aws
}

func (c *Context) Response() *Response {
func (c *Context) Response(status int, body ...interface{}) golamb.Responder {
c.response.response.StatusCode = status
var b string
if len(body) > 0 {
bs, err := json.Marshal(body[0])
if err != nil {
c.response.err = err
return c.response
}
c.response.response.Body = string(bs)
}
c.response.response.Body = b
return c.response
}

Expand Down
13 changes: 6 additions & 7 deletions fakes/response.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,14 @@ import (

type Response struct {
response *events.APIGatewayV2HTTPResponse
cookie []*http.Cookie
header map[string]string
err error
}

func NewResponse(response *events.APIGatewayV2HTTPResponse, err error) *Response {
func NewResponse() *Response {
return &Response{
response: response,
err: err,
response: &events.APIGatewayV2HTTPResponse{
Headers: make(map[string]string),
},
}
}

Expand All @@ -26,11 +25,11 @@ func (r *Response) Respond() (*events.APIGatewayV2HTTPResponse, error) {
}

func (r *Response) SetCookie(cookie *http.Cookie) golamb.Responder {
r.cookie = append(r.cookie, cookie)
r.response.Cookies = append(r.response.Cookies, cookie.String())
return r
}

func (r *Response) SetHeader(key string, val string) golamb.Responder {
r.header[key] = val
r.response.Headers[key] = val
return r
}

0 comments on commit b93cfe8

Please sign in to comment.