| 97 CX_TEST_ASSERT(nret5); |
97 CX_TEST_ASSERT(nret5); |
| 98 |
98 |
| 99 parser.start_line = cx_mutstr("GET /uri HTTP/1.1 test\r\n"); |
99 parser.start_line = cx_mutstr("GET /uri HTTP/1.1 test\r\n"); |
| 100 int nret6 = parse_request_line(&parser); |
100 int nret6 = parse_request_line(&parser); |
| 101 CX_TEST_ASSERT(nret6); |
101 CX_TEST_ASSERT(nret6); |
| |
102 |
| |
103 parser.start_line = cx_mutstr(" /uri2 HTTP/1.1\r\n"); |
| |
104 int nret7 = parse_request_line(&parser); |
| |
105 CX_TEST_ASSERT(nret7); |
| |
106 |
| |
107 parser.start_line = cx_mutstr("GET HTTP/1.1\r\n"); |
| |
108 int nret8 = parse_request_line(&parser); |
| |
109 CX_TEST_ASSERT(nret8); |
| 102 } |
110 } |
| 103 } |
111 } |
| 104 |
112 |
| 105 CX_TEST(test_parse_response_line) { |
113 CX_TEST(test_parse_response_line) { |
| 106 CX_TEST_DO { |
114 CX_TEST_DO { |
| 130 int ret3 = parse_response_line(&parser); |
138 int ret3 = parse_response_line(&parser); |
| 131 CX_TEST_ASSERT(!ret3); |
139 CX_TEST_ASSERT(!ret3); |
| 132 CX_TEST_ASSERT(!cx_strcmp(parser.httpv, "HTTP/0.9")); |
140 CX_TEST_ASSERT(!cx_strcmp(parser.httpv, "HTTP/0.9")); |
| 133 CX_TEST_ASSERT(!cx_strcmp(parser.msg, "No Content")); |
141 CX_TEST_ASSERT(!cx_strcmp(parser.msg, "No Content")); |
| 134 CX_TEST_ASSERT(parser.status == 204); |
142 CX_TEST_ASSERT(parser.status == 204); |
| |
143 |
| |
144 // negative tests |
| |
145 memset(&parser, 0, sizeof(HttpParser)); |
| |
146 parser.start_line = cx_mutstr("HTTP/1.1 200\r\n"); |
| |
147 parser.type = 1; |
| |
148 int nret1 = parse_response_line(&parser); |
| |
149 CX_TEST_ASSERT(nret1); |
| |
150 |
| |
151 memset(&parser, 0, sizeof(HttpParser)); |
| |
152 parser.start_line = cx_mutstr("\r\n"); |
| |
153 parser.type = 1; |
| |
154 int nret2 = parse_response_line(&parser); |
| |
155 CX_TEST_ASSERT(nret2); |
| |
156 |
| |
157 memset(&parser, 0, sizeof(HttpParser)); |
| |
158 parser.start_line = cx_mutstr("200\r\n"); |
| |
159 parser.type = 1; |
| |
160 int nret3 = parse_response_line(&parser); |
| |
161 CX_TEST_ASSERT(nret3); |
| |
162 |
| |
163 memset(&parser, 0, sizeof(HttpParser)); |
| |
164 parser.start_line = cx_mutstr("HTTP/1.1 2345 Test Message\r\n"); |
| |
165 parser.type = 1; |
| |
166 int nret4 = parse_response_line(&parser); |
| |
167 CX_TEST_ASSERT(nret4); |
| |
168 |
| |
169 memset(&parser, 0, sizeof(HttpParser)); |
| |
170 parser.start_line = cx_mutstr("HTTP/1.1 xy1 OK\r\n"); |
| |
171 parser.type = 1; |
| |
172 int nret5 = parse_response_line(&parser); |
| |
173 CX_TEST_ASSERT(nret5); |
| |
174 |
| |
175 memset(&parser, 0, sizeof(HttpParser)); |
| |
176 parser.start_line = cx_mutstr(" 200 OK\r\n"); |
| |
177 parser.type = 1; |
| |
178 int nret6 = parse_response_line(&parser); |
| |
179 CX_TEST_ASSERT(nret6); |
| 135 } |
180 } |
| 136 } |
181 } |