summaryrefslogtreecommitdiff
path: root/test/parallel/test-tcp-wrap-connect.js
diff options
context:
space:
mode:
authorSantiago Gimeno <santiago.gimeno@gmail.com>2016-04-09 18:47:50 +0200
committerJames M Snell <jasnell@gmail.com>2016-04-20 09:14:33 -0700
commit2dc5ad460a8bc014a47ca25c73a8f343ef296d27 (patch)
treed81d9b69b3a73ce9ba430e3a51128ec3db168047 /test/parallel/test-tcp-wrap-connect.js
parent54dd7c38e507b35ee0ffadc41a716f1782b0d32f (diff)
downloadnode-new-2dc5ad460a8bc014a47ca25c73a8f343ef296d27.tar.gz
test: move more tests from sequential to parallel
Only `test-stdin-from-file.js` has been modified so that the `stdin.txt` is written in a temp directory instead of the `fixtures` directory. PR-URL: https://github.com/nodejs/node/pull/6187 Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'test/parallel/test-tcp-wrap-connect.js')
-rw-r--r--test/parallel/test-tcp-wrap-connect.js60
1 files changed, 60 insertions, 0 deletions
diff --git a/test/parallel/test-tcp-wrap-connect.js b/test/parallel/test-tcp-wrap-connect.js
new file mode 100644
index 0000000000..9373906c6f
--- /dev/null
+++ b/test/parallel/test-tcp-wrap-connect.js
@@ -0,0 +1,60 @@
+'use strict';
+var common = require('../common');
+var assert = require('assert');
+var TCP = process.binding('tcp_wrap').TCP;
+var TCPConnectWrap = process.binding('tcp_wrap').TCPConnectWrap;
+var ShutdownWrap = process.binding('stream_wrap').ShutdownWrap;
+
+function makeConnection() {
+ var client = new TCP();
+
+ var req = new TCPConnectWrap();
+ var err = client.connect(req, '127.0.0.1', common.PORT);
+ assert.equal(err, 0);
+
+ req.oncomplete = function(status, client_, req_) {
+ assert.equal(0, status);
+ assert.equal(client, client_);
+ assert.equal(req, req_);
+
+ console.log('connected');
+ var shutdownReq = new ShutdownWrap();
+ var err = client.shutdown(shutdownReq);
+ assert.equal(err, 0);
+
+ shutdownReq.oncomplete = function(status, client_, req_) {
+ console.log('shutdown complete');
+ assert.equal(0, status);
+ assert.equal(client, client_);
+ assert.equal(shutdownReq, req_);
+ shutdownCount++;
+ client.close();
+ };
+ };
+}
+
+/////
+
+var connectCount = 0;
+var endCount = 0;
+var shutdownCount = 0;
+
+var server = require('net').Server(function(s) {
+ console.log('got connection');
+ connectCount++;
+ s.resume();
+ s.on('end', function() {
+ console.log('got eof');
+ endCount++;
+ s.destroy();
+ server.close();
+ });
+});
+
+server.listen(common.PORT, makeConnection);
+
+process.on('exit', function() {
+ assert.equal(1, shutdownCount);
+ assert.equal(1, connectCount);
+ assert.equal(1, endCount);
+});