()
| 170 | |
| 171 | |
| 172 | function nextTest() { |
| 173 | if (test === 'end') { |
| 174 | return s.close(); |
| 175 | } |
| 176 | |
| 177 | let bufferedResponse = ''; |
| 178 | |
| 179 | const req = http.get({ |
| 180 | port: s.address().port, |
| 181 | headers: { 'X-foo': 'bar' } |
| 182 | }, common.mustCall((response) => { |
| 183 | switch (test) { |
| 184 | case 'headers': |
| 185 | assert.strictEqual(response.statusCode, 201); |
| 186 | assert.strictEqual(response.headers['x-test-header'], 'testing'); |
| 187 | assert.strictEqual(response.headers['x-test-array-header'], |
| 188 | [1, 2, 3].join(', ')); |
| 189 | assert.deepStrictEqual(cookies, response.headers['set-cookie']); |
| 190 | assert.strictEqual(response.headers['x-test-header2'], undefined); |
| 191 | test = 'contentLength'; |
| 192 | break; |
| 193 | |
| 194 | case 'contentLength': |
| 195 | assert.strictEqual(+response.headers['content-length'], content.length); |
| 196 | test = 'transferEncoding'; |
| 197 | break; |
| 198 | |
| 199 | case 'transferEncoding': |
| 200 | assert.strictEqual(response.headers['transfer-encoding'], 'chunked'); |
| 201 | test = 'writeHead'; |
| 202 | break; |
| 203 | |
| 204 | case 'writeHead': |
| 205 | assert.strictEqual(response.headers['x-foo'], 'bar'); |
| 206 | assert.strictEqual(response.headers['x-bar'], 'baz'); |
| 207 | assert.strictEqual(response.statusCode, 200); |
| 208 | test = 'end'; |
| 209 | break; |
| 210 | |
| 211 | default: |
| 212 | assert.fail('Unknown test'); |
| 213 | } |
| 214 | |
| 215 | response.setEncoding('utf8'); |
| 216 | response.on('data', (s) => { |
| 217 | bufferedResponse += s; |
| 218 | }); |
| 219 | |
| 220 | response.on('end', common.mustCall(() => { |
| 221 | assert.strictEqual(bufferedResponse, content); |
| 222 | common.mustCall(nextTest)(); |
| 223 | })); |
| 224 | })); |
| 225 | |
| 226 | assert.deepStrictEqual(req.getHeaderNames(), |
| 227 | ['x-foo', 'host']); |
| 228 | |
| 229 | assert.deepStrictEqual(req.getRawHeaderNames(), |
nothing calls this directly
no test coverage detected
searching dependent graphs…