Update Iot.js
[platform/upstream/iotjs.git] / test / run_pass / test_httpclient_timeout.js
1 /* Copyright 2015-present Samsung Electronics Co., Ltd. and other contributors
2  *
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15
16
17
18 var assert = require('assert');
19 var http = require('http');
20
21 var timeouted = false;
22
23 var options = {
24   method: 'GET',
25   port: 3002
26 };
27
28 var server = http.createServer(function(req, res) {
29   // do nothing
30 });
31
32 server.listen(options.port, function() {
33   var req = http.request(options, function(res) {
34   });
35   req.on('close', function() {
36     server.close();
37   });
38   var destroyer = function() {
39     timeouted = true;
40     req.socket.destroy();
41   }
42   req.setTimeout(100, destroyer);
43   req.on('error', function(){});
44   req.end();
45 });
46
47
48 process.on('exit', function(code) {
49   assert.equal(code,0);
50   assert.equal(timeouted, true);
51 });