diff options
Diffstat (limited to 'tests/sleepy_test.go')
-rw-r--r-- | tests/sleepy_test.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/sleepy_test.go b/tests/sleepy_test.go new file mode 100644 index 0000000..655d0a6 --- /dev/null +++ b/tests/sleepy_test.go @@ -0,0 +1,34 @@ +package main + +import ( + "github.com/dougblack/sleepy" + "net/url" + "net/http" + "testing" + "io/ioutil" +) + +type Item struct{} + +func (item Item) Get(values url.Values) (int, interface{}) { + items := []string{"item1", "item2"} + data := map[string][]string{"items": items} + return 200, data +} + +func TestBasicGet(t *testing.T) { + + item := new(Item) + + var api = sleepy.NewAPI() + api.AddResource(item, "/items", "/bar", "/baz") + go api.Start(3000) + resp, err := http.Get("http://localhost:3000/items") + if err != nil { + t.Error(err) + } + body, _ := ioutil.ReadAll(resp.Body) + if string(body) != `{"items":["item1","item2"]}` { + t.Error("Not equal.") + } +} |