Commit Graph

769 Commits (cd921c2c62cc5ab4d79ed403f8f646566b8ac526)

Author SHA1 Message Date
Michael W 645c3b3713 Fixed: clearTimeouts calling multiple times
When clearTimeouts was called on a timer multiple times, it would break the
doubly-linked list along with future timeouts. This patch fixes that.
2010-11-29 18:17:13 -08:00
Ryan Dahl 1dbbaa7fa0 Add test to show ECONNREFUSED works 2010-11-29 17:36:59 -08:00
Jeremy Martin 144b2a5338 Fix number of args emitted by EventEmitter during "fast case" (lte 3 args) 2010-11-29 17:25:50 -08:00
Oleg Slobodskoi 02083412eb assert.throws can now accept as RegExp
makes validation of errors more flexible
2010-11-29 17:22:36 -08:00
Ryan Dahl 3fceb491d4 Style 2010-11-29 16:19:28 -08:00
Ryan Dahl 735b9d50a3 Simplify state transitions in http.Client
Fixes new bug shown in test-http-allow-req-after-204-res.js pointed out by
Tom Carden <tom.carden@gmail.com>.
2010-11-29 14:21:51 -08:00
Ryan Dahl 85827bde34 Avoid cascading EADDRINUSE test failure
See note in test-securepair-client.js
2010-11-29 14:21:51 -08:00
Ryan Dahl 105501c195 test-fs-realpath: Don't ceate things in /tmp; use tmpDir 2010-11-29 00:10:37 -08:00
Ryan Dahl 102b1d999d Add simple securepair client test 2010-11-28 18:40:50 -08:00
isaacs a52f59b437 Use a proper tty test. 2010-11-27 11:36:34 -08:00
Daniel Gröber ea29cb4e46 cmake cleanup
* Removed useless include_directories
 * Print ssl library path in build summary
 * ExternalProject also exists on 2.8.0
 * include pummel tests when testing with ctest
 * Moved tests.cmake to test/CMakeList.txt
 * Removed inconsistent, unnecessary condition in else
2010-11-23 23:33:19 -06:00
Ryan Dahl a6f6532dfb Fix test-securepair-server 2010-11-23 18:30:52 -08:00
Ryan Dahl 4f32a59307 Fix buffer.slice(0, 0) 2010-11-23 12:20:22 -08:00
isaacs b52b4196ab Fix problem with requireNative not exporting 'module' object
Broke require('constants'). Add unrelated test which breaks it.
2010-11-22 11:55:31 -08:00
Ben Noordhuis 611dffabb6 Support CNAME lookups in DNS module. 2010-11-21 20:53:57 -08:00
Ben Noordhuis f0b8cc6a94 require() should work with `node --eval`.
with tests

Fix module path resolve bug.  Normally the module path is taken from
realpath(__filename) but with eval there is (of course) no filename
2010-11-21 20:24:26 -08:00
Ryan Dahl 2320497992 Revert "Merge branch 'writev'"
This reverts commit cd9515efd9, reversing
changes made to df46c8e698.

Too slow. Needs more work.
2010-11-20 20:55:15 -08:00
Marco Rogers 118b88e44f update repl to distinguish JSON.parse SyntaxErrors from the rest 2010-11-20 20:36:14 -08:00
Ryan Dahl 15d5378684 Add failing test for TLS server 2010-11-19 13:28:13 -08:00
Ryan Dahl 0b1214c16b Fix a bug regarding queueSize, add asserts 2010-11-18 16:47:38 -08:00
Ryan Dahl 3884b4185a Small clean ups 2010-11-18 16:47:38 -08:00
Ryan Dahl fa556a1425 Add callback to socket.write(), fix test-sendfds 2010-11-18 16:47:38 -08:00
Ryan Dahl 913789da3e IOWatcher::Dump(), writev 2010-11-18 16:47:31 -08:00
Ryan Dahl df46c8e698 Rip out the old TLS implementation 2010-11-18 16:46:37 -08:00
Ryan Dahl 2a750bffcc Add tests for querystring.unescapeBuffer 2010-11-18 16:22:14 -08:00
Ryan Dahl 2219c64a04 fix race in test-http-big-proxy-responses.js 2010-11-18 13:50:54 -08:00
Ryan Dahl cea3a95f9f Add ref to buffer during fs.write and fs.read
There was the possibility the buffer could be GCed while the eio_req was
pending.  Still needs test coverage for the fs.read() problem.

See:
http://groups.google.com/group/nodejs/browse_thread/thread/c11f8b683f37cef
2010-11-16 16:26:55 -08:00
Ryan Dahl cf05257fb7 Test for server.listen() more carefully, fix bug 2010-11-16 15:33:21 -08:00
Ryan Dahl 4144024e6b Test and fix for self-assigned port from net.Server 2010-11-15 20:22:54 -08:00
Ryan Dahl 8b1082825c Rename require('javascript') to require('vm') 2010-11-15 18:37:27 -08:00
isaacs 9996b459e1 Implement new path.join behavior
1. Express desired path.join behavior in tests.
2. Update fs.realpath to reflect new path.join behavior
3. Update url.resolve() to use new path.join behavior.
2010-11-14 22:49:26 -08:00
isaacs 589e27948b writeFile fixes
writeFileSync could exhibit pathological behavior when a buffer could
not be written to the file in a single write() call.

Also, writeFile was not quite as optimized as it could be.
2010-11-14 01:43:30 -08:00
Ryan Dahl d787a444c5 Use require('javascript') instead of process.binding('evals') 2010-11-13 15:19:15 -08:00
Ryan Dahl c7b24efd21 Move ev_loop out of javascript 2010-11-11 16:34:26 -08:00
Ryan Dahl 06267f4d8d Remove -e from echo in test. Non-portable 2010-11-10 22:32:26 -08:00
Guillaume Tuton 07da49b095 Set FD_CLOEXEC flag on stdio FDs before spawning.
With regression test.
2010-11-07 13:07:14 -08:00
Ben Noordhuis b4def4806c Make writes to process.env update the real environment. Tests included. 2010-11-03 12:15:07 -07:00
Ryan Dahl 07812c47a4 Add test for http-buffer problem
Already fixed in 7e24a05cba
2010-11-01 18:23:13 -07:00
Ryan Dahl 97c9745063 Back to WAF
Too much instability right now. Hopefully we can revisit autoconf soon.
2010-11-01 16:51:20 -07:00
Chandra Sekar S 2b08bacd56 Removed range read optimization as it doesn't work with libeio. 2010-11-01 08:28:57 -07:00
Ryan Dahl 7a48fd8455 Handle null values in clearTimeout 2010-10-29 00:00:43 -07:00
isaacs 987cbbc191 Handle cyclic links smarter in fs.realpath
Rather than aborting in the face of *any* repeated link in a given path,
instead only abort if such a cycle actually makes a given path unresolvable.

Test for this by doing a normal stat.  Still use the seenLinks object to
cache link contents so as to cut own a little bit on readlink calls.

Also add a pathological test that fails without the change to fs.js.
2010-10-27 17:02:42 -07:00
Ryan Dahl 2470d2ee92 allowHalfOpen disabled by default
Users too often would forget to add

  socket.on('end', function () {
    socket.end();
  });

Which is a mistake. Therefore we default to this behavior and
only optionally let people handle the 'end' case themselves.
2010-10-26 01:10:18 -07:00
Ryan Dahl fcd0c3ebc0 Remove test-base64-bigfile
Already tested in test/simple/test-buffer.js. Takes too long, uses too much
memory.
2010-10-24 19:21:12 -07:00
Ryan Dahl 15594eaf87 Replace WAF with make/autoconf 2010-10-24 18:39:36 -07:00
Ryan Dahl 477df1aaec Revert "Add some failing tests for path.join"
This reverts commit 8c0e87f9c3.

(Revert until fix comes)
2010-10-23 15:35:58 -07:00
Ryan Dahl 38f117cb6d one more 'listening' race condition 2010-10-23 14:26:31 -07:00
Ryan Dahl 44234e9cc7 Fix a few 'listening' race conditions
in
test-net-timeout
test-http-client-parse-error
2010-10-23 14:13:04 -07:00
Ryan Dahl 9bf2975f78 Make sure Error object on exec() gets killed member
Also default to SIGTERM for destruction when exceeding timeout or buffer on
exec()
2010-10-23 11:37:40 -07:00
Ryan Dahl d9a5edb2b0 Fix test-net-eaddrinuse 2010-10-23 11:22:24 -07:00
Ryan Dahl 604f4fdf8c Write write.txt into the tmpdir 2010-10-22 10:02:30 -07:00
Jorge Chamorro Bieling 99e19aa398 Remove unneeded function wrappers 2010-10-21 17:11:59 -07:00
Ryan Dahl ceb5331a64 Force exit on SIGINT but still reset flags on stdio fds
Add test that one can ctrl+c out of a script spinning infinitely.
2010-10-21 12:28:04 -07:00
Ryan Dahl 6570cd99e5 Fix execFile timeouts, improve tests
It seems that a parent will not get a SIGCHLD if the child is killed by the
parent? It's unclear, so make 'exit' callback manually.
2010-10-20 19:20:52 -07:00
Ryan Dahl 8c0e87f9c3 Add some failing tests for path.join 2010-10-20 13:03:49 -07:00
Aaron Heckmann bd8e4f656e Prevents child_process.exec timeouts from throwing when the child was previously killed. 2010-10-20 12:46:51 -07:00
isaacs 226eff5104 Add require.resolve.
Also, hack the repl so that it works as expected there, too.
2010-10-20 12:12:07 -07:00
Johan Euphrosine 5d400cfd3a net listen should emit eaddrinuse error 2010-10-18 17:00:13 -07:00
Jorge Chamorro Bieling c735b4663a unbase64 skips over *any* illegal chars 2010-10-18 15:22:10 -07:00
Ryan Dahl 40f675b64b Fix race conditions in test-http-upgrade-client2 2010-10-18 15:05:18 -07:00
Ryan Dahl 4adadc38f4 fix test-base64-bigfile for linux 2010-10-18 15:00:49 -07:00
Ryan Dahl 97255c2651 Fix test harness for Linux
Mostly just upgraded tools/test.py to the latest one that's in V8.  But also
fixing the before and after hooks to preserve the test/tmp directory so that
running tests manually usually works.
2010-10-18 14:54:39 -07:00
isaacs 25b5bc01a6 A big base64 file encoding/decoding test
Originally written to try to track down this bug report:
http://permalink.gmane.org/gmane.comp.lang.javascript.nodejs/13924

As it turns out, it's showing a completely different kind of failure.  When
the file is base64 encoded with the native program, then decoded with node,
it doesn't match the original.  Something's fishy.
2010-10-18 11:36:23 -07:00
Ryan Dahl cf1db4f304 base64 decode should handle whitespace 2010-10-18 11:34:35 -07:00
Peteris Krumins a6ee3bac85 Add EventEmitter.prototype.once 2010-10-16 20:43:09 -07:00
Nathan Rajlich 9b1ff070e6 Upgrade http-parser with a fix for spaces in headers 2010-10-13 02:47:10 -07:00
Joshua Peek 73b29d79b9 Don't flush net writeQueue on end() if its still connecting 2010-10-13 02:37:53 -07:00
Micheil Smith 372a7c9a3e Migrated from sys.p to console.dir 2010-10-11 16:21:45 -07:00
Ryan Dahl ee8522996a Enable pipe test 2010-10-11 16:08:53 -07:00
Ryan Dahl 1879d8211d Remove sys in new tests 2010-10-11 16:07:18 -07:00
Micheil Smith e38eb0c5a4 Soft migration of sys -> util, Removal of deprecated utils module. 2010-10-11 15:21:36 -07:00
Ryan Dahl 0a0e90dcca Add broken test passing a buffer through http 2010-10-11 14:54:32 -07:00
Ryan Dahl 2944e03a03 Closer to a working pipe 2010-10-11 01:22:38 -07:00
Ryan Dahl 007881b648 No long have tcp module 2010-10-11 01:22:24 -07:00
Felix Geisendörfer 3cd09e7ba5 Stress test for http upload timeouts
This was meant to find a bug in setTimeout, but there doesn't seem to be
one. So this test can no help to prevent future regressions.
2010-10-11 00:25:48 -07:00
Ryan Dahl 1d3142a882 TCP clients should buffer writes before connection 2010-10-10 23:09:14 -07:00
Ryan Dahl 81ac0d5088 pipe-test fixes 2010-10-10 22:10:47 -07:00
Ryan Dahl 393f0071e4 Improve pipe-test. Still not working 2010-10-10 20:18:47 -07:00
Ryan Dahl bc695475b9 Add Stream base class with stream.pipe 2010-10-10 17:27:03 -07:00
Joshaven Potter 3d4e4d8909 syntax fixes to pass jslint 2010-10-06 20:40:57 -07:00
isaacs 8ff7954165 Fix #325. Add test and check for zero-length file contents in fs.readFileSync 2010-10-04 12:50:58 -07:00
Ryan Dahl 38f8665f3a lib/http.js - nested loop stepping on variables of outer loop
Fixes #318.
2010-10-04 10:50:37 -07:00
isaacs e9b6b0b327 Report "weird" errors a little better.
There are a few kinds of errors that are very confusing.
1. Errors raised in nextTick
2. Errors emitted on the "error" event
3. RangeErrors that crash the program (or anything without a stack trace)

Long traces will make make these better, of course.  In the meantime, this
adds a few handy signposts (in the form of better error reporting and
comments on the otherwise inscrutable code printed to the terminal) that can
help new users find the cause, or at least, ask for help more effectively.
2010-10-02 06:44:28 -07:00
Mark Nottingham d59512f6f4 Add support for handling Expect: 100-continue
HTTP/1.1 requests, either with an event (check_continue) or automatically, if no event handler is present.

Add client-side expect/continue support, tests.

Expound upon client requirements for expect/continue.
2010-10-01 15:30:53 -07:00
Marco Rogers 4a7562d28f fix encoding option on ReadStream, updated test 2010-10-01 15:16:25 -07:00
Ryan Dahl 265cda97d7 Fix zero length buffer bug for http res.end()
Reported by Kadir Pekel <kadirpekel@gmail.com>
2010-09-30 17:13:01 -07:00
Mark Nottingham 1b24fc6678 Consume HTTP trailing headers 2010-09-30 16:30:40 -07:00
Ryan Dahl ee9af66990 Add test for getting parse error from HTTP client
Made this test in response to this thread:
http://groups.google.com/group/nodejs/browse_thread/thread/f82835007a277de2/
But Node appears to be working correctly.
2010-09-30 11:48:19 -07:00
Fedor Indutny 5535aa3d51 Fixed 'upgrade' event for httpclient
onend and ondata was cleaning on parser end
2010-09-23 10:29:20 -07:00
isaacs 4d0456f827 Don't use stat in fs.readFile[Sync]
Original patch c/o Evan Larkin <evan.larkin.iit@gmail.com>
2010-09-22 22:06:32 -07:00
Tj Holowaychuk 893ebe7230 Fixed fs.ReadStream() start: 0 bug 2010-09-22 10:22:43 -07:00
Mikeal Rogers cc1d61cbb3 HTTP: close connection on connection:close header.
rnewson found a good bug in keep-alive. we were only using the request
headers we send to enable/disable keep-alive but when the server sends
Connection: close we need to close down the connection regardless.

I wrote up a patch the Robert verified makes all his test client code work
now and I also added a new unittest for it.
2010-09-22 10:17:07 -07:00
isaacs dff1b5ad10 Don't try to run extension loaders unless they're actually functions 2010-09-22 10:13:25 -07:00
Ryan Dahl 1b1bee8099 Fix test/message/undefined_reference_in_new_context 2010-09-20 10:03:50 -07:00
Tim-Smart 0f16af7ee4 Remove registerExtension, add .extensions. Tests.
Updated extensions tests
2010-09-20 09:56:43 -07:00
isaacs bb08f0c219 Remove require.async
This patch removes require.async from nodejs.

1. It complicated the code unnecessarily.
2. Everyone uses sync require anyway.
3. It's got a lot of weird edge cases when mixed with sync require.
4. It is many months behind the commonjs spec anyhow.
2010-09-19 16:52:39 -07:00
Ryan Dahl db73c71280 Pass correct message in HTTP client upgrade
Simplify and correct test.

Fix by Fedor Indutny.
2010-09-19 11:55:18 -07:00
Ryan Dahl 4962702e4a Revert requireNative changes: 4e6b9b0, d429033, 6abbfa0, bcad540
The REPL needs the full require(); add test for that behavior.
2010-09-19 11:22:15 -07:00
Ryan Dahl 776754c33f Remove process._byteLength 2010-09-17 01:06:44 -07:00
Ryan Dahl 9628e28aec Remove process.evalcx 2010-09-17 00:23:27 -07:00