github.com/huaweicloud/golangsdk@v0.0.0-20210831081626-d823fe11ceba/openstack/identity/v2/extensions/admin/roles/testing/fixtures.go (about)

     1  package testing
     2  
     3  import (
     4  	"fmt"
     5  	"net/http"
     6  	"testing"
     7  
     8  	th "github.com/huaweicloud/golangsdk/testhelper"
     9  	fake "github.com/huaweicloud/golangsdk/testhelper/client"
    10  )
    11  
    12  func MockListRoleResponse(t *testing.T) {
    13  	th.Mux.HandleFunc("/OS-KSADM/roles", 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      "roles": [
    23          {
    24              "id": "123",
    25              "name": "compute:admin",
    26              "description": "Nova Administrator"
    27          }
    28      ]
    29  }
    30    `)
    31  	})
    32  }
    33  
    34  func MockAddUserRoleResponse(t *testing.T) {
    35  	th.Mux.HandleFunc("/tenants/{tenant_id}/users/{user_id}/roles/OS-KSADM/{role_id}", func(w http.ResponseWriter, r *http.Request) {
    36  		th.TestMethod(t, r, "PUT")
    37  		th.TestHeader(t, r, "X-Auth-Token", fake.TokenID)
    38  		w.WriteHeader(http.StatusCreated)
    39  	})
    40  }
    41  
    42  func MockDeleteUserRoleResponse(t *testing.T) {
    43  	th.Mux.HandleFunc("/tenants/{tenant_id}/users/{user_id}/roles/OS-KSADM/{role_id}", func(w http.ResponseWriter, r *http.Request) {
    44  		th.TestMethod(t, r, "DELETE")
    45  		th.TestHeader(t, r, "X-Auth-Token", fake.TokenID)
    46  		w.WriteHeader(http.StatusNoContent)
    47  	})
    48  }