Add test for getting parse error from HTTP client
authorRyan Dahl <ry@tinyclouds.org>
Thu, 30 Sep 2010 18:45:27 +0000 (11:45 -0700)
committerRyan Dahl <ry@tinyclouds.org>
Thu, 30 Sep 2010 18:48:19 +0000 (11:48 -0700)
Made this test in response to this thread:
http://groups.google.com/group/nodejs/browse_thread/thread/f82835007a277de2/
But Node appears to be working correctly.

test/simple/test-http-client-parse-error.js [new file with mode: 0644]

diff --git a/test/simple/test-http-client-parse-error.js b/test/simple/test-http-client-parse-error.js
new file mode 100644 (file)
index 0000000..f3a4497
--- /dev/null
@@ -0,0 +1,34 @@
+var common = require("../common");
+var assert = require('assert');
+
+var http = require('http');
+var net = require('net');
+
+// Create a TCP server
+var srv = net.createServer(function(c) {
+  c.write('bad http - should trigger parse error\r\n');
+
+  console.log("connection");
+
+  c.addListener('end', function() { c.end(); });
+});
+srv.listen(common.PORT, '127.0.0.1');
+
+var hc = http.createClient(common.PORT, '127.0.0.1');
+hc.request('GET', '/').end();
+
+var parseError = false;
+
+hc.on('error', function (e) {
+  console.log("got error from client");
+  srv.close();
+  assert.ok(e.message.indexOf("Parse Error") >= 0);
+  parseError = true;
+});
+
+
+process.addListener('exit', function() {
+  assert.ok(parseError);
+});
+
+