blob: 745f57230f51340c3b2597832c0d3b4d559753f8 [file] [log] [blame]
Jamie Hannaford2a130242014-10-28 11:19:46 +01001package users
Jamie Hannaford6a076d82014-10-29 10:57:36 +01002
3import (
4 "fmt"
5 "net/http"
6 "testing"
7
8 th "github.com/rackspace/gophercloud/testhelper"
9 fake "github.com/rackspace/gophercloud/testhelper/client"
10)
11
12func MockListResponse(t *testing.T) {
13 th.Mux.HandleFunc("/users", func(w http.ResponseWriter, r *http.Request) {
14 th.TestMethod(t, r, "GET")
15 th.TestHeader(t, r, "X-Auth-Token", fake.TokenID)
16
17 w.Header().Add("Content-Type", "application/json")
18 w.WriteHeader(http.StatusOK)
19
20 fmt.Fprintf(w, `
21{
22 "users":[
23 {
24 "id": "u1000",
Jamie Hannaford929bd002014-10-29 11:14:25 +010025 "name": "John Smith",
Jamie Hannaford6a076d82014-10-29 10:57:36 +010026 "username": "jqsmith",
27 "email": "john.smith@example.org",
Jamie Hannaford929bd002014-10-29 11:14:25 +010028 "enabled": true,
29 "tenant_id": "12345"
Jamie Hannaford6a076d82014-10-29 10:57:36 +010030 },
31 {
32 "id": "u1001",
Jamie Hannaford929bd002014-10-29 11:14:25 +010033 "name": "Jane Smith",
Jamie Hannaford6a076d82014-10-29 10:57:36 +010034 "username": "jqsmith",
Jamie Hannaford929bd002014-10-29 11:14:25 +010035 "email": "jane.smith@example.org",
36 "enabled": true,
37 "tenant_id": "12345"
Jamie Hannaford6a076d82014-10-29 10:57:36 +010038 }
39 ]
40}
41 `)
42 })
43}
Jamie Hannaford9c7bb8e2014-10-29 11:47:34 +010044
45func MockCreateUser(t *testing.T) {
46 th.Mux.HandleFunc("/users", func(w http.ResponseWriter, r *http.Request) {
47 th.TestMethod(t, r, "POST")
48 th.TestHeader(t, r, "X-Auth-Token", fake.TokenID)
49
50 w.Header().Add("Content-Type", "application/json")
51 w.WriteHeader(http.StatusOK)
52
53 fmt.Fprintf(w, `
54{
55 "user": {
56 "name": "new_user",
57 "tenant_id": "12345",
58 "enabled": false,
59 "email": "new_user@foo.com",
60 "id": "c39e3de9be2d4c779f1dfd6abacc176d"
61 }
62}
63`)
64 })
65}