Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Add test from v0.4 dea49e3

Note this test completes in 3 seconds on v0.4 and 7 minutes on master. NOT
GOOD.
  • Loading branch information...
commit 49806864e489dd73bdda56ec66a1c8a9450fa4a7 1 parent 5300829
@ry ry authored
Showing with 56 additions and 0 deletions.
  1. +56 −0 test/pummel/test-net-write-callbacks.js
View
56 test/pummel/test-net-write-callbacks.js
@@ -0,0 +1,56 @@
+// Copyright Joyent, Inc. and other Node contributors.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a
+// copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to permit
+// persons to whom the Software is furnished to do so, subject to the
+// following conditions:
+//
+// The above copyright notice and this permission notice shall be included
+// in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
+// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+// USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+var common = require('../common');
+var net = require('net');
+var assert = require('assert');
+
+var cbcount = 0;
+var N = 500000;
+
+var server = net.Server(function(socket) {
+ socket.on('data', function(d) {
+ console.error("got %d bytes", d.length);
+ });
+
+ socket.on('end', function() {
+ console.error("end");
+ socket.destroy();
+ server.close();
+ });
+});
+
+server.listen(common.PORT, function() {
+ var client = net.createConnection(common.PORT);
+
+ client.on('connect', function() {
+ for (var i = 0; i < N; i++) {
+ client.write("hello world", function() {
+ cbcount++;
+ });
+ }
+ client.end();
+ });
+});
+
+process.on('exit', function() {
+ assert.equal(N, cbcount);
+});
Please sign in to comment.
Something went wrong with that request. Please try again.