void dynamic_1D(TestArg *arg) { HttpEngine engine; HttpRequest request(arg->server, arg->uri, arg->proto); HttpResponse *response; char header[1024], value[1024]; arg->returnVal = 0; memset(header, 'X', 1024); header[1024-1] = '\0'; memset(value, 'Y', 1024); value[1024-1] = '\0'; request.addHeader(header,value); request.setExpectDynamicBody(); response = engine.makeRequest(request); if (response->getStatus() != 200) { Logger::logError(LOGERROR, "server responded with status code %d", response->getStatus()); arg->returnVal = -1; } char *rvheader = response->getDynamicResponse().lookupValue("REQUEST HEADERS", header); if (!rvheader || strcmp(rvheader, value)) { fprintf(stdout, "strlen(rvheader) is %d\n", strlen(rvheader)); fprintf(stdout, "strlen(header) is %d\n", strlen(header)); Logger::logError(LOGERROR, "long header mismatch! (\"%s\")", rvheader); arg->returnVal = -1; } delete response; }
void dynamic_1B(TestArg *arg) { char *uri; HttpEngine engine; HttpRequest *request; HttpResponse *response; arg->returnVal = 0; uri = (char *)malloc(sizeof(TEST_QUERY) + strlen(arg->uri) + 2); sprintf(uri, "%s?%s", arg->uri, TEST_QUERY); request = new HttpRequest(arg->server, uri, arg->proto); request->setExpectDynamicBody(); response = engine.makeRequest(*request); if (response->getStatus() != 200) { Logger::logError(LOGERROR, "server responded with status code %d", response->getStatus()); arg->returnVal = -1; } char *query = response->getDynamicResponse().lookupValue("BASIC", "queryString"); if (!query || strcmp(query, TEST_QUERY)) { Logger::logError(LOGERROR, "query string mismatch! (\"%s\")", query); arg->returnVal = -1; } free(uri); delete request; delete response; }
void dynamic_1C(TestArg *arg) { HttpEngine engine; HttpRequest request(arg->server, arg->uri, arg->proto); HttpResponse *response; arg->returnVal = 0; request.addHeader(HEADER1, VALUE1); request.addHeader(HEADER2, VALUE2); request.addHeader(HEADER3, VALUE3); request.addHeader(HEADER4, VALUE4); request.setExpectDynamicBody(); response = engine.makeRequest(request); if (response->getStatus() != 200) { Logger::logError(LOGERROR, "server responded with status code %d", response->getStatus()); arg->returnVal = -1; } char *header = response->getDynamicResponse().lookupValue("REQUEST HEADERS", HEADER1); if (!header || strcmp(header, VALUE1)) { Logger::logError(LOGERROR, "header1 mismatch! (\"%s\")", header); arg->returnVal = -1; } header = response->getDynamicResponse().lookupValue("REQUEST HEADERS", HEADER2); if (!header || strcmp(header, VALUE2)) { Logger::logError(LOGERROR, "header2 mismatch! (\"%s\")", header); arg->returnVal = -1; } header = response->getDynamicResponse().lookupValue("REQUEST HEADERS", HEADER3); if (!header || strcmp(header, VALUE3)) { Logger::logError(LOGERROR, "header3 mismatch! (\"%s\")", header); arg->returnVal = -1; } header = response->getDynamicResponse().lookupValue("REQUEST HEADERS", HEADER4); if (!header || strcmp(header, VALUE4)) { Logger::logError(LOGERROR, "header4 mismatch! (\"%s\")", header); arg->returnVal = -1; } delete response; }