summaryrefslogtreecommitdiff
path: root/test/http.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/http.c')
-rw-r--r--test/http.c59
1 files changed, 6 insertions, 53 deletions
diff --git a/test/http.c b/test/http.c
index 0d18242..c5a3b2a 100644
--- a/test/http.c
+++ b/test/http.c
@@ -87,59 +87,12 @@ int main(int argc, char **argv) {
char client_secret[CLIENT_SECRET_LEN] = {0};
{
- curlRes = curl_easy_setopt(curl, CURLOPT_URL, "http://localhost:8080/api/client");
- assert(curlRes == CURLE_OK);
-
- curlRes = curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
- assert(curlRes == CURLE_OK);
-
- curlRes = curl_easy_setopt(curl, CURLOPT_POST, 1L);
- assert(curlRes == CURLE_OK);
-
- curlRes = curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_from_memory);
- assert(curlRes == CURLE_OK);
-
- struct memory req_body = {
- .body = "{\"name\": \"client1\"}",
- .size = strlen(req_body.body),
- };
- curlRes = curl_easy_setopt(curl, CURLOPT_READDATA, &req_body);
- assert(curlRes == CURLE_OK);
-
- curlRes = curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_to_memory);
- assert(curlRes == CURLE_OK);
-
- struct memory body = {0};
- curlRes = curl_easy_setopt(curl, CURLOPT_WRITEDATA, &body);
- assert(curlRes == CURLE_OK);
-
- curlRes = curl_easy_perform(curl);
- assert(curlRes == CURLE_OK);
-
- long code;
- curlRes = curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &code);
- assert(code == 200);
-
- char *ct;
- curlRes = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct);
- assert(curlRes == CURLE_OK);
- assert(ct != NULL);
- assert(strcmp(ct, "application/json") == 0);
-
- assert(body.size >= 0);
- // Parse response to extract secret
- cJSON *rootJson = cJSON_ParseWithLength(body.body, body.size);
- assert(rootJson != NULL);
- cJSON *idJson = cJSON_GetObjectItemCaseSensitive(rootJson, "id");
- assert(cJSON_IsString(idJson));
- assert(strcmp(idJson->valuestring, "1") == 0);
- cJSON *secretJson = cJSON_GetObjectItemCaseSensitive(rootJson, "secret");
- assert(cJSON_IsString(secretJson));
- assert(strlen(secretJson->valuestring) == 32);
- strncpy(client_secret, secretJson->valuestring, CLIENT_SECRET_LEN);
- cJSON_Delete(rootJson);
- free(body.body);
- body = (struct memory){0};
+ struct CreateClientResult result;
+ int ret = create_client(&app, "client1", &result);
+ assert(ret == 0);
+ assert(result.id == 1);
+ assert(strlen(result.secret) == 32);
+ strncpy(client_secret, result.secret, CLIENT_SECRET_LEN);
}
{