You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
2.9 KiB
109 lines
2.9 KiB
#ifndef RESPONSE_TEST |
|
#define RESPONSE_TEST value |
|
|
|
#include "munit/munit.h" |
|
#ifndef REQUESTRESPONSE_C |
|
#define REQUESTRESPONSE_C value |
|
#include "requestresponse.test.c" |
|
#endif /* ifndef REQUESTRESPONSE_C */ |
|
#include "../src/response.c" |
|
|
|
|
|
MunitResult testResponseNewStatus(const MunitParameter params[], |
|
void* user_data_or_fixture){ |
|
Response *rsp = newResponse(); |
|
munit_assert_int( rsp->statusCode, ==, 200 ); |
|
return MUNIT_OK; |
|
} |
|
|
|
MunitResult testResponseNewStatusMessage(const MunitParameter params[], |
|
void* user_data_or_fixture){ |
|
Response *rsp = newResponse(); |
|
munit_assert_string_equal( rsp->statusMessage, "OK" ); |
|
return MUNIT_OK; |
|
} |
|
|
|
MunitResult testResponseNewVersion(const MunitParameter params[], |
|
void* user_data_or_fixture){ |
|
Response *rsp = newResponse(); |
|
munit_assert_float( rsp->version, ==, 1.1 ); |
|
return MUNIT_OK; |
|
} |
|
|
|
MunitResult testResponseSetBody(const MunitParameter params[], |
|
void* user_data_or_fixture){ |
|
Response *rsp = newResponse(); |
|
responseSetBody( rsp, "Testing", 1 ); |
|
munit_assert_string_equal( rsp->body, "Testing" ); |
|
munit_assert_string_equal( getHeader( rsp->headers, "content-length" )->value, "7" ); |
|
return MUNIT_OK; |
|
} |
|
|
|
MunitResult testResponseToString(const MunitParameter params[], |
|
void* user_data_or_fixture){ |
|
Response *rsp = newResponse(); |
|
responseSetBody( rsp, "Testing", 1 ); |
|
munit_assert_string_equal( responseToString( rsp ), "HTTP/1.1 200 OK\r\nContent-Length: 7\r\nContent-Type: text/plain\r\n\r\nTesting" ); |
|
return MUNIT_OK; |
|
} |
|
|
|
static MunitTest response_tests[] = { |
|
{ |
|
"/new/status", /* name */ |
|
testResponseNewStatus, /* test */ |
|
NULL, /* setup */ |
|
NULL, /* tear_down */ |
|
MUNIT_TEST_OPTION_NONE, /* options */ |
|
NULL /* parameters */ |
|
}, { |
|
"/new/statusMessage", /* name */ |
|
testResponseNewStatusMessage, /* test */ |
|
NULL, /* setup */ |
|
NULL, /* tear_down */ |
|
MUNIT_TEST_OPTION_NONE, /* options */ |
|
NULL /* parameters */ |
|
}, { |
|
"/new/version", /* name */ |
|
testResponseNewVersion, /* test */ |
|
NULL, /* setup */ |
|
NULL, /* tear_down */ |
|
MUNIT_TEST_OPTION_NONE, /* options */ |
|
NULL /* parameters */ |
|
}, { |
|
"/set/body", /* name */ |
|
testResponseSetBody, /* test */ |
|
NULL, /* setup */ |
|
NULL, /* tear_down */ |
|
MUNIT_TEST_OPTION_NONE, /* options */ |
|
NULL /* parameters */ |
|
}, { |
|
"/to/string", /* name */ |
|
testResponseToString, /* test */ |
|
NULL, /* setup */ |
|
NULL, /* tear_down */ |
|
MUNIT_TEST_OPTION_NONE, /* options */ |
|
NULL /* parameters */ |
|
}, |
|
/* Mark the end of the array with an entry where the test |
|
* function is NULL */ |
|
{ NULL, NULL, NULL, NULL, MUNIT_TEST_OPTION_NONE, NULL } |
|
}; |
|
|
|
MunitSuite response_test_suite = { |
|
"/response", /* name */ |
|
response_tests, /* tests */ |
|
NULL, /* suites */ |
|
1, /* iterations */ |
|
MUNIT_SUITE_OPTION_NONE /* options */ |
|
}; |
|
|
|
#ifndef MAINTEST |
|
#define MAINTEST |
|
|
|
int main (int argc, char* argv[]) { |
|
return munit_suite_main(&response_test_suite, NULL, argc, argv); |
|
} |
|
|
|
#endif /* ifndef MAINTEST */ |
|
|
|
#endif /* ifndef RESPONSE_TEST */
|
|
|