Permalink
Browse files

dns_uv: match the old api better, fix tests

  • Loading branch information...
1 parent c0d3f1f commit 72e18d7f19470b1786186998e3ff75245583fbc1 Bert Belder committed Jul 5, 2011
Showing with 41 additions and 32 deletions.
  1. +2 −2 src/cares_wrap.cc
  2. +39 −30 test/internet/test-dns.js
View
@@ -431,7 +431,7 @@ class QuerySrvWrap: public QueryWrap {
}
Local<Array> srv_records = Array::New();
- Local<String> host_symbol = String::NewSymbol("host");
+ Local<String> name_symbol = String::NewSymbol("name");
Local<String> port_symbol = String::NewSymbol("port");
Local<String> priority_symbol = String::NewSymbol("priority");
Local<String> weight_symbol = String::NewSymbol("weight");
@@ -440,7 +440,7 @@ class QuerySrvWrap: public QueryWrap {
srv_current;
srv_current = srv_current->next) {
Local<Object> srv_record = Object::New();
- srv_record->Set(host_symbol, String::New(srv_current->host));
+ srv_record->Set(name_symbol, String::New(srv_current->host));
srv_record->Set(port_symbol, Integer::New(srv_current->port));
srv_record->Set(priority_symbol, Integer::New(srv_current->priority));
srv_record->Set(weight_symbol, Integer::New(srv_current->weight));
View
@@ -24,7 +24,8 @@ var assert = require('assert');
net = require('net_uv');
isIP = net.isIP,
isIPv4 = net.isIPv4,
- isIPv6 = net.isIPv6;
+ isIPv6 = net.isIPv6,
+ uv = process.useUV;
var expected = 0,
completed = 0,
@@ -58,12 +59,19 @@ function TEST(f) {
process.on('exit', function() {
- console.log(completed + " tests completed");
+ console.log(completed + ' tests completed (using libuv: ' + (!!uv) + ')');
assert.equal(running, false);
assert.strictEqual(expected, completed);
});
+function checkWrap(req) {
+ if (uv) {
+ assert.ok(typeof req === 'object');
+ }
+}
+
+
TEST(function test_resolve4(done) {
var req = dns.resolve4('www.google.com', function(err, ips) {
if (err) throw err;
@@ -77,7 +85,7 @@ TEST(function test_resolve4(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -94,7 +102,7 @@ TEST(function test_resolve6(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -112,7 +120,7 @@ TEST(function test_reverse_ipv4(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -130,7 +138,7 @@ TEST(function test_reverse_ipv6(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -146,7 +154,7 @@ TEST(function test_reverse_bogus(done) {
}
assert.ok(error instanceof Error);
- assert.strictEqual(error.errno, "ENOTIMP");
+ uv && assert.strictEqual(error.errno, 'ENOTIMP');
done();
});
@@ -172,7 +180,7 @@ TEST(function test_resolveMx(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -191,7 +199,7 @@ TEST(function test_resolveNs(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -206,8 +214,8 @@ TEST(function test_resolveSrv(done) {
assert.ok(item);
assert.ok(typeof item === 'object');
- assert.ok(item.host);
- assert.ok(typeof item.host === 'string');
+ assert.ok(item.name);
+ assert.ok(typeof item.name === 'string');
assert.ok(typeof item.port === 'number');
assert.ok(typeof item.priority === 'number');
@@ -217,7 +225,7 @@ TEST(function test_resolveSrv(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -236,7 +244,7 @@ TEST(function test_resolveCname(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -249,7 +257,7 @@ TEST(function test_lookup_ipv4_explicit(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -262,7 +270,7 @@ TEST(function test_lookup_ipv4_implicit(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -275,7 +283,7 @@ TEST(function test_lookup_ipv6_explicit(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -288,19 +296,20 @@ TEST(function test_lookup_ipv6_implicit(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
TEST(function test_lookup_failure(done) {
var req = dns.lookup('does.not.exist', 4, function(err, ip, family) {
assert.ok(err instanceof Error);
- assert.strictEqual(err.errno, 'ENOTFOUND');
+ assert.strictEqual(err.errno, dns.NOTFOUND)
+ uv && assert.strictEqual(err.errno, 'ENOTFOUND');
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
@@ -313,58 +322,58 @@ TEST(function test_lookup_null(done) {
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
TEST(function test_lookup_ip_ipv4(done) {
- var req = dns.lookup("127.0.0.1", function(err, ip, family) {
+ var req = dns.lookup('127.0.0.1', function(err, ip, family) {
if (err) throw err;
- assert.strictEqual(ip, "127.0.0.1");
+ assert.strictEqual(ip, '127.0.0.1');
assert.strictEqual(family, 4);
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
TEST(function test_lookup_ip_ipv6(done) {
- var req = dns.lookup("::1", function(err, ip, family) {
+ var req = dns.lookup('::1', function(err, ip, family) {
if (err) throw err;
assert.ok(net.isIPv6(ip));
assert.strictEqual(family, 6);
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
TEST(function test_lookup_localhost_ipv4(done) {
- var req = dns.lookup("localhost", 4, function(err, ip, family) {
+ var req = dns.lookup('localhost', 4, function(err, ip, family) {
if (err) throw err;
- assert.strictEqual(ip, "127.0.0.1");
+ assert.strictEqual(ip, '127.0.0.1');
assert.strictEqual(family, 4);
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
});
/* Disabled because it appears to be not working on linux. */
/* TEST(function test_lookup_localhost_ipv6(done) {
- var req = dns.lookup("localhost", 6, function(err, ip, family) {
+ var req = dns.lookup('localhost', 6, function(err, ip, family) {
if (err) throw err;
assert.ok(net.isIPv6(ip));
assert.strictEqual(family, 6);
done();
});
- assert.ok(typeof req === 'object');
+ checkWrap(req);
}); */

0 comments on commit 72e18d7

Please sign in to comment.