Fix node test

pull/7704/head
Yuchen Zeng 9 years ago
parent b48000c7a7
commit db53cc0961
  1. 3
      binding.gyp
  2. 5
      package.json
  3. 8
      src/core/ext/resolver/dns/c_ares/dns_resolver.c
  4. 7
      src/core/ext/resolver/dns/c_ares/grpc_ares_wrapper.c
  5. 7
      templates/binding.gyp.template

@ -485,6 +485,7 @@
}] }]
], ],
'targets': [ 'targets': [
{ {
'cflags': [ 'cflags': [
'-std=c99', '-std=c99',
@ -562,6 +563,7 @@
'type': 'static_library', 'type': 'static_library',
'dependencies': [ 'dependencies': [
'gpr', 'gpr',
'node_modules/cares/deps/cares/cares.gyp:cares',
], ],
'sources': [ 'sources': [
'src/core/lib/surface/init.c', 'src/core/lib/surface/init.c',
@ -819,6 +821,7 @@
"dependencies": [ "dependencies": [
"grpc", "grpc",
"gpr", "gpr",
"node_modules/cares/deps/cares/cares.gyp:cares",
] ]
}, },
{ {

@ -23,14 +23,15 @@
"test": "./node_modules/.bin/mocha src/node/test && npm run-script lint", "test": "./node_modules/.bin/mocha src/node/test && npm run-script lint",
"gen_docs": "./node_modules/.bin/jsdoc -c src/node/jsdoc_conf.json", "gen_docs": "./node_modules/.bin/jsdoc -c src/node/jsdoc_conf.json",
"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha src/node/test", "coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha src/node/test",
"install": "./node_modules/.bin/node-pre-gyp install --fallback-to-build" "install": "./node_modules/.bin/node-pre-gyp install --fallback-to-build --library='static_library'"
}, },
"bundledDependencies": ["node-pre-gyp"], "bundledDependencies": ["node-pre-gyp"],
"dependencies": { "dependencies": {
"arguejs": "^0.2.3", "arguejs": "^0.2.3",
"lodash": "^3.9.3", "lodash": "^3.9.3",
"nan": "^2.0.0", "nan": "^2.0.0",
"protobufjs": "^4.0.0" "protobufjs": "^4.0.0",
"cares": "^1.1.0"
}, },
"devDependencies": { "devDependencies": {
"async": "^1.5.0", "async": "^1.5.0",

@ -177,6 +177,11 @@ static void dns_on_resolved(grpc_exec_ctx *exec_ctx, void *arg,
grpc_client_config_set_lb_policy(config, lb_policy); grpc_client_config_set_lb_policy(config, lb_policy);
GRPC_LB_POLICY_UNREF(exec_ctx, lb_policy, "construction"); GRPC_LB_POLICY_UNREF(exec_ctx, lb_policy, "construction");
} }
if (r->pollent) {
grpc_polling_entity_del_from_pollset_set(exec_ctx, r->pollent,
r->base.pollset_set);
r->pollent = NULL;
}
grpc_resolved_addresses_destroy(addresses); grpc_resolved_addresses_destroy(addresses);
} else { } else {
gpr_log(GPR_ERROR, "addresses == NULL"); gpr_log(GPR_ERROR, "addresses == NULL");
@ -228,6 +233,9 @@ static void dns_next(grpc_exec_ctx *exec_ctx, grpc_resolver *resolver,
r->pollent = pollent; r->pollent = pollent;
grpc_polling_entity_add_to_pollset_set(exec_ctx, pollent, grpc_polling_entity_add_to_pollset_set(exec_ctx, pollent,
r->base.pollset_set); r->base.pollset_set);
} else {
gpr_log(GPR_ERROR, "pollent is NULL");
r->pollent = NULL;
} }
r->resolving = 1; r->resolving = 1;
r->addresses = NULL; r->addresses = NULL;

@ -242,14 +242,18 @@ grpc_ares_request *grpc_resolve_address_ares_impl(
err = grpc_error_set_str(GRPC_ERROR_CREATE("unparseable host:port"), err = grpc_error_set_str(GRPC_ERROR_CREATE("unparseable host:port"),
GRPC_ERROR_STR_TARGET_ADDRESS, name); GRPC_ERROR_STR_TARGET_ADDRESS, name);
grpc_exec_ctx_sched(exec_ctx, on_done, err, NULL); grpc_exec_ctx_sched(exec_ctx, on_done, err, NULL);
goto done;
} else if (port == NULL) { } else if (port == NULL) {
if (default_port == NULL) { if (default_port == NULL) {
err = grpc_error_set_str(GRPC_ERROR_CREATE("no port in name"), err = grpc_error_set_str(GRPC_ERROR_CREATE("no port in name"),
GRPC_ERROR_STR_TARGET_ADDRESS, name); GRPC_ERROR_STR_TARGET_ADDRESS, name);
grpc_exec_ctx_sched(exec_ctx, on_done, err, NULL); grpc_exec_ctx_sched(exec_ctx, on_done, err, NULL);
goto done;
} }
port = gpr_strdup(default_port); port = gpr_strdup(default_port);
} else if (try_fake_resolve(host, port, addrs)) { }
if (try_fake_resolve(host, port, addrs)) {
grpc_exec_ctx_sched(exec_ctx, on_done, GRPC_ERROR_NONE, NULL); grpc_exec_ctx_sched(exec_ctx, on_done, GRPC_ERROR_NONE, NULL);
} else { } else {
err = grpc_ares_ev_driver_create(&ev_driver, pollset_set); err = grpc_ares_ev_driver_create(&ev_driver, pollset_set);
@ -269,6 +273,7 @@ grpc_ares_request *grpc_resolve_address_ares_impl(
grpc_exec_ctx_sched(exec_ctx, &r->request_closure, GRPC_ERROR_NONE, NULL); grpc_exec_ctx_sched(exec_ctx, &r->request_closure, GRPC_ERROR_NONE, NULL);
} }
done:
gpr_free(host); gpr_free(host);
gpr_free(port); gpr_free(port);
return r; return r;

@ -173,6 +173,13 @@
}] }]
], ],
'targets': [ 'targets': [
<%
for lib in libs:
if 'grpc' in lib.transitive_deps or lib.name == 'grpc':
lib.deps.append('node_modules/cares/deps/cares/cares.gyp:cares')
for module in node_modules:
module.deps.append('node_modules/cares/deps/cares/cares.gyp:cares')
%>
% for module in node_modules: % for module in node_modules:
% for lib in libs: % for lib in libs:
% if lib.name in module.transitive_deps and lib.name not in ('boringssl', 'z'): % if lib.name in module.transitive_deps and lib.name not in ('boringssl', 'z'):

Loading…
Cancel
Save