| 88 | } |
| 89 | |
| 90 | func TestClient4SetToken(t *testing.T) { |
| 91 | expected := model.NewId() |
| 92 | |
| 93 | server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
| 94 | authHeader := r.Header.Get(model.HeaderAuth) |
| 95 | |
| 96 | token := strings.Split(authHeader, model.HeaderBearer) |
| 97 | |
| 98 | if len(token) < 2 { |
| 99 | t.Errorf("wrong authorization header format, got %s, expected: %s %s", authHeader, model.HeaderBearer, expected) |
| 100 | } |
| 101 | |
| 102 | assert.Equal(t, expected, strings.TrimSpace(token[1])) |
| 103 | |
| 104 | var user model.User |
| 105 | err := json.NewEncoder(w).Encode(&user) |
| 106 | assert.NoError(t, err) |
| 107 | })) |
| 108 | |
| 109 | client := model.NewAPIv4Client(server.URL) |
| 110 | client.SetToken(expected) |
| 111 | |
| 112 | _, resp, err := client.GetMe(context.Background(), "") |
| 113 | assert.NoError(t, err) |
| 114 | assert.Equal(t, http.StatusOK, resp.StatusCode) |
| 115 | } |
| 116 | |
| 117 | func TestClient4RequestCancellation(t *testing.T) { |
| 118 | t.Run("cancel before making the reqeust", func(t *testing.T) { |