aboutsummaryrefslogtreecommitdiff
path: root/test/disabled
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2011-09-27 12:52:48 -0700
committerRyan Dahl <ry@tinyclouds.org>2011-09-27 12:52:48 -0700
commitf5bdce9cc0abd5e49674ac5791ba623bc8fda085 (patch)
tree0b0496e6b49105de3a2d047a6d71e7bc255d2761 /test/disabled
parent95866a64457ae35b6c04f12dfae53194a431a4b1 (diff)
downloadandroid-node-v8-f5bdce9cc0abd5e49674ac5791ba623bc8fda085.tar.gz
android-node-v8-f5bdce9cc0abd5e49674ac5791ba623bc8fda085.tar.bz2
android-node-v8-f5bdce9cc0abd5e49674ac5791ba623bc8fda085.zip
Disable test-dgram-unix.js test-dgram-unix-anon.js test-dgram-multicast.js
Diffstat (limited to 'test/disabled')
-rw-r--r--test/disabled/test-dgram-multicast.js119
-rw-r--r--test/disabled/test-dgram-unix-anon.js81
-rw-r--r--test/disabled/test-dgram-unix.js75
3 files changed, 275 insertions, 0 deletions
diff --git a/test/disabled/test-dgram-multicast.js b/test/disabled/test-dgram-multicast.js
new file mode 100644
index 0000000000..f3a546fb20
--- /dev/null
+++ b/test/disabled/test-dgram-multicast.js
@@ -0,0 +1,119 @@
+// 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.
+
+// libuv-broken
+
+
+var common = require('../common');
+var assert = require('assert');
+
+var dgram = require('dgram'),
+ util = require('util'),
+ assert = require('assert'),
+ Buffer = require('buffer').Buffer;
+var LOCAL_BROADCAST_HOST = '224.0.0.1';
+var sendMessages = [
+ new Buffer('First message to send'),
+ new Buffer('Second message to send'),
+ new Buffer('Third message to send'),
+ new Buffer('Fourth message to send')
+];
+
+var listenSockets = [];
+
+var sendSocket = dgram.createSocket('udp4');
+
+sendSocket.on('close', function() {
+ console.error('sendSocket closed');
+});
+
+sendSocket.setBroadcast(true);
+sendSocket.setMulticastTTL(1);
+sendSocket.setMulticastLoopback(true);
+
+var i = 0;
+
+sendSocket.sendNext = function() {
+ var buf = sendMessages[i++];
+
+ if (!buf) {
+ try { sendSocket.close(); } catch (e) {}
+ return;
+ }
+
+ sendSocket.send(buf, 0, buf.length,
+ common.PORT, LOCAL_BROADCAST_HOST, function(err) {
+ if (err) throw err;
+ console.error('sent %s to %s', util.inspect(buf.toString()),
+ LOCAL_BROADCAST_HOST + common.PORT);
+ process.nextTick(sendSocket.sendNext);
+ });
+};
+
+var listener_count = 0;
+
+function mkListener() {
+ var receivedMessages = [];
+ var listenSocket = dgram.createSocket('udp4');
+ listenSocket.addMembership(LOCAL_BROADCAST_HOST);
+
+ listenSocket.on('message', function(buf, rinfo) {
+ console.error('received %s from %j', util.inspect(buf.toString()), rinfo);
+ receivedMessages.push(buf);
+
+ if (receivedMessages.length == sendMessages.length) {
+ listenSocket.dropMembership(LOCAL_BROADCAST_HOST);
+ process.nextTick(function() { // TODO should be changed to below.
+ // listenSocket.dropMembership(LOCAL_BROADCAST_HOST, function() {
+ listenSocket.close();
+ });
+ }
+ });
+
+ listenSocket.on('close', function() {
+ console.error('listenSocket closed -- checking received messages');
+ var count = 0;
+ receivedMessages.forEach(function(buf) {
+ for (var i = 0; i < sendMessages.length; ++i) {
+ if (buf.toString() === sendMessages[i].toString()) {
+ count++;
+ break;
+ }
+ }
+ });
+ console.error('count %d', count);
+ //assert.strictEqual(count, sendMessages.length);
+ });
+
+ listenSocket.on('listening', function() {
+ listenSockets.push(listenSocket);
+ if (listenSockets.length == 3) {
+ sendSocket.sendNext();
+ }
+ });
+
+ listenSocket.bind(common.PORT);
+}
+
+mkListener();
+mkListener();
+mkListener();
+
diff --git a/test/disabled/test-dgram-unix-anon.js b/test/disabled/test-dgram-unix-anon.js
new file mode 100644
index 0000000000..860c68c251
--- /dev/null
+++ b/test/disabled/test-dgram-unix-anon.js
@@ -0,0 +1,81 @@
+// 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.
+
+// libuv-broken
+
+
+var common = require('../common');
+var assert = require('assert');
+
+var Buffer = require('buffer').Buffer,
+ fs = require('fs'),
+ dgram = require('dgram'), server, client,
+ server_path = '/tmp/dgram_server_sock',
+ messages_to_send = [
+ new Buffer('First message to send'),
+ new Buffer('Second message to send'),
+ new Buffer('Third message to send'),
+ new Buffer('Fourth message to send')
+ ],
+ timer;
+
+server = dgram.createSocket('unix_dgram');
+server.bind(server_path);
+server.messages = [];
+server.on('message', function(msg, rinfo) {
+ console.log('server got: ' + msg);
+ assert.strictEqual(rinfo.address, ''); // anon client sending
+ server.messages.push(msg.toString());
+ if (server.messages.length === messages_to_send.length) {
+ server.messages.forEach(function(m, i) {
+ assert.strictEqual(m, messages_to_send[i].toString());
+ });
+ server.close();
+ client.close();
+ }
+});
+server.on('listening', function() {
+ console.log('server is listening');
+ client = dgram.createSocket('unix_dgram');
+ messages_to_send.forEach(function(m) {
+ client.send(m, 0, m.length, server_path, function(err, bytes) {
+ if (err) {
+ console.log('Caught error in client send.');
+ throw err;
+ }
+ console.log('client wrote ' + bytes + ' bytes.');
+ });
+ });
+ client.on('close', function() {
+ if (server.fd === null) {
+ clearTimeout(timer);
+ }
+ });
+});
+server.on('close', function() {
+ if (client.fd === null) {
+ clearTimeout(timer);
+ }
+});
+
+timer = setTimeout(function() {
+ throw new Error('Timeout');
+}, 500);
diff --git a/test/disabled/test-dgram-unix.js b/test/disabled/test-dgram-unix.js
new file mode 100644
index 0000000000..bb526696bd
--- /dev/null
+++ b/test/disabled/test-dgram-unix.js
@@ -0,0 +1,75 @@
+// 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.
+
+// libuv-broken
+
+
+var common = require('../common');
+var assert = require('assert');
+
+var fs = require('fs');
+var dgram = require('dgram');
+
+// TODO use common.tmpDir here
+var serverPath = '/tmp/dgram_server_sock';
+var clientPath = '/tmp/dgram_client_sock';
+
+var msgToSend = new Buffer('A message to send');
+
+var server = dgram.createSocket('unix_dgram');
+server.on('message', function(msg, rinfo) {
+ console.log('server got: ' + msg + ' from ' + rinfo.address);
+ assert.strictEqual(rinfo.address, clientPath);
+ assert.strictEqual(msg.toString(), msgToSend.toString());
+ server.send(msg, 0, msg.length, rinfo.address);
+});
+
+server.on('listening', function() {
+ console.log('server is listening');
+
+ var client = dgram.createSocket('unix_dgram');
+
+ client.on('message', function(msg, rinfo) {
+ console.log('client got: ' + msg + ' from ' + rinfo.address);
+ assert.strictEqual(rinfo.address, serverPath);
+ assert.strictEqual(msg.toString(), msgToSend.toString());
+ client.close();
+ server.close();
+ });
+
+ client.on('listening', function() {
+ console.log('client is listening');
+ client.send(msgToSend, 0, msgToSend.length, serverPath,
+ function(err, bytes) {
+ if (err) {
+ console.log('Caught error in client send.');
+ throw err;
+ }
+ console.log('client wrote ' + bytes + ' bytes.');
+ assert.strictEqual(bytes, msgToSend.length);
+ });
+ });
+
+
+ client.bind(clientPath);
+});
+
+server.bind(serverPath);