aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby/test_io.rb
Commit message (Collapse)AuthorAgeFilesLines
* * test/ruby/test_io.rb: remove temporally files early.akr2012-07-191-319/+348
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add tests for IO#seek.akr2012-06-251-1/+34
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Split one big test to seven tests.naruse2012-06-051-42/+75
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_flush_in_finalizer1): don't use IO.for_fdnagachika2012-05-131-1/+1
| | | | | | | | to close IO objects. it create IO object with already closed fd, and cause occasional Errno::EBADF in following tests. [ruby-core:45020] [Bug #6228] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO): revert r35631. it broke the intent ofnagachika2012-05-131-8/+0
| | | | | | test_flush_in_finalizer1. [ruby-core:43951] [Bug ##6228] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (class TestIO): Disable GC during IO tests toluislavena2012-05-121-0/+8
| | | | | | | avoid file descriptors being GC'ed. Suggestion by Tomoyuki Chikanaga [ruby-core:43951][Bug #6228] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix multithread issue in the test of r35391naruse2012-04-191-3/+2
| | | | | | | pipe() uses threads and its reader thread may work before the writer writes "foob". On such case, the reader will raise error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (io_readpartial): Document the output buffer parameter isdrbrain2012-04-181-0/+41
| | | | | | | | | | | | | | | | | | overwritten with the read contents even when non-empty. Patch by yu nobuoka. [ruby-trunk - Bug #6285] * io.c (io_read_nonblock): ditto. * io.c (io_read): ditto. * io.c (rb_io_sysread): ditto. * io.c (argf_read): ditto. * io.c (argf_readpartial): ditto. * ext/stringio/stringio.c (strio_read): ditto. * test/ruby/test_argf.rb (class TestArgf): Add test for existing behavior of read outbuf. * test/ruby/test_io.rb (class TestIO): ditto. * test/stringio/test_stringio.rb (class TestStringIO): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Decrease the default level of try_fdopen.naruse2012-04-081-1/+1
| | | | | | | Because it cause Bus Error: http://u32.rubyci.org/~chkbuild/ruby-trunk/log/20120407T230202Z.log.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (try_fdopen): more GCable.nobu2012-03-231-3/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated.usa2012-03-221-15/+17
| | | | | | | see [ruby-core:43550] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_pos_with_getc): added.usa2012-03-211-0/+22
| | | | | | | see [Bug #6179][ruby-core:43518] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Rescue even if it test_readpartial_locktmp RuntimeError. [Bug#6099]naruse2012-03-091-4/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_readpartial_locktmp): skip onusa2012-02-291-0/+1
| | | | | | | windows because of the platform restriction. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (io_fread, io_getpartial, rb_io_sysread): set buffer sizenobu2012-02-281-0/+33
| | | | | | | after check if readable, which can cause thread switch. [ruby-dev:45297][Bug #6099] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34846 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* forgotten to commit at r34834.usa2012-02-271-6/+6
| | | | | | | * test/ruby/test_io.rb (TestIO#test_setpos): use binmode. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (rb_io_extract_modeenc): fail only if conflictingnobu2012-02-221-4/+7
| | | | | | text/binary modes given explicitly. [ruby-dev:45268][Bug #6055] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (rb_io_s_foreach): argument check before making Enumerator.nobu2012-02-221-0/+7
| | | | | | [ruby-dev:31525] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (rb_io_s_foreach): return enumerator including kerwordnobu2012-02-221-0/+3
| | | | | | arguments. [ruby-dev:45267][Bug #6054] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add test for r34624.naruse2012-02-151-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (io_setstrbuf): defer resizing buffer string until data isnobu2012-02-131-4/+26
| | | | | | read actually. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Suppress warnings.naruse2012-01-181-7/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_autoclose_true_closed_by_finalizer,nagachika2012-01-091-10/+33
| | | | | | | test_autoclose_true_closed_by_finalizer): skip if IO objects are not recycled yet. [ruby-dev:45098] [Bug #5850] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_autoclose): Tempfile.new doesn'tusa2011-12-261-23/+20
| | | | | | | accept the block argument. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Run the test only if /dev/tty exists.naruse2011-11-271-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (ioctl_narg_len, linux_iocparm_len): reinstantiate linuxkosaki2011-11-251-0/+13
| | | | | | | | specific narg length calculation. * test/ruby/test_io.rb (test_ioctl_linux2): add new test for old and unstructured ioctl. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33839 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/openssl/test_engine.rb: use IO#reopen to restore stderr.akr2011-11-241-0/+9
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add a test.akr2011-11-241-0/+35
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (ioctl_narg_len): don't use _IOC_SIZE macro on Linux.naruse2011-11-231-0/+9
| | | | | | | | | | | | On Linux some constants for ioctl(2) doesn't include the size of its return value and 16bit value; for example FIONREAD 0x541B. Moreover the manual, ioctl_list(2), says "Note that the size bits are very unreliable: in lots of cases they are wrong, either because of buggy macros using sizeof(sizeof(struct)), or because of legacy values." So we shouldn't use it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_fcntl_dupfd): there is no known platformakr2011-11-211-1/+1
| | | | | | | | which don't have F_DUPFD. [ruby-dev:44874] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_fcntl_dupfd): the argument of F_DUPFD isakr2011-11-211-1/+1
| | | | | | | minimum file descriptor. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_fcntl_dupfd): fix OpenBSD testkosaki2011-11-151-2/+2
| | | | | | | | failure. [ruby-dev:44872] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r33752 and fix test case based [ruby-dev:44866].ayumin2011-11-141-4/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_fcntl_dupfd): fix test error onayumin2011-11-141-1/+2
| | | | | | SnowLeopard. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_fcntl_dupfd): skip if Fcntl::DUPFDkosaki2011-11-121-1/+1
| | | | | | | | is not defined. Pointed out by CHIKANAGA Tomoyuki. Thanks. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_fcntl_dupfd): add another fcntl test.kosaki2011-11-121-0/+11
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_fcntl_lock_freebsd): add a testcasekosaki2011-11-121-1/+36
| | | | | | | | of fcntl lock for freebsd. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (ioctl_req_t): Type of req argument of ioctl() depend on platform.kosaki2011-11-121-0/+12
| | | | | | | | | | | | | Moreover almost all linux ioctl can't be represented by 32bit integer (i.e. MSB is 1). We need wrap ioctl argument type. [Bug #5429] [ruby-dev:44589] * io.c (struct ioctl_arg): ditto. * io.c (rb_ioctl): ditto. * test/ruby/test_io.rb (test_ioctl_linux): add a testcase for ioctl git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add test for close-on-exec.akr2011-11-031-0/+25
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (copy_stream_fallback_body): check nil for EOF of read method.akr2011-10-231-0/+22
| | | | | | | patch by Eric Wong. [ruby-core:39134] [Bug #5237] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h (rb_fd_set_cloexec): declared.akr2011-10-221-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * io.c (rb_fd_set_cloexec): new function. (ruby_dup): call rb_fd_set_cloexec to set close-on-exec flag. (rb_sysopen_internal): ditto. (rb_pipe): ditto. (io_reopen): ditto. (io_cntl): ditto. * process.c (rb_f_exec): change the default :close_others option to true. (rb_f_system): ditto. (move_fds_to_avoid_crash): call rb_fd_set_cloexec to set close-on-exec flag. (ruby_setsid): ditto. (rb_daemon): ditto. * thread_pthread.c (rb_thread_create_timer_thread): call rb_fd_set_cloexec to set close-on-exec flag. * ruby.c (load_file_internal): ditto. * file.c (rb_file_s_truncate): ditto. (file_load_ok): ditto. * random.c (fill_random_seed): ditto. * ext/pty/pty.c (chfunc): ditto. (get_device_once): ditto. * ext/openssl/ossl_bio.c (ossl_obj2bio): ditto. * ext/socket/init.c (rsock_socket): ditto. (rsock_s_accept_nonblock): ditto. (rsock_s_accept): ditto. * ext/socket/socket.c (rsock_sock_s_socketpair): ditto. * ext/socket/ancdata.c (discard_cmsg): ditto. (make_io_for_unix_rights): ditto. * ext/socket/unixsocket.c (unix_recv_io): ditto. * ext/io/console/console.c (console_dev): ditto. [ruby-core:38140] [Feature #5041] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (rb_io_each_byte): rbuf can be refreshed during yield.nobu2011-07-301-0/+10
| | | | | | | [Bug #5119] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * error.c (rb_warn_m): accept multiple args in like puts. rdocnobu2011-07-171-0/+17
| | | | | | patch by Erik Price at [ruby-core:38119]. [Feature #5029] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (fill_cbuf): finish reading at EOF, and the readconv hasnobu2011-06-181-0/+20
| | | | | | | | been cleared by another thread while io_fillbuf() is waiting at select(). a patch in [ruby-core:37197] by Hiroshi Shirosaki <h.shirosaki AT gmail.com>. fixed #3840 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_copy_stream_socket): fixkosaki2011-06-161-2/+2
| | | | | | | | | test hanging up issue. Patch by CHIKANAGA Tomoyuki. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (test_copy_stream_socket): wait a child processakr2011-06-151-13/+16
| | | | | | | | | | | before SIGUSR1 handler is removed. * test/pathname/test_pathname.rb (define_assertion): use line number for test method names. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c: fix IO.copy_stream interrupt handling.akr2011-06-091-0/+32
| | | | | | | | | | | | | | | | based on the patch by Eric Wong. [ruby-core:36156] * vm_core.h (rb_thread_call_with_gvl): don't declare here. * thread.c: include internal.h. (rb_thread_execute_interrupts): new function. * internal.h (rb_thread_execute_interrupts): declared. (rb_thread_call_with_gvl): declared. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_s_{,bin}write): do not create a filekazu2011-06-061-52/+50
| | | | | | under /tmp. [Bug #4846] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c: Add File.write, File.binwrite. [Feature #1081] [ruby-core:21701]sorah2011-06-021-0/+57
| | | | | | | | * test/ruby/test_io.rb: Test for File.write, File.binwrite. * NEWS: News for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_open_mode): MUST release resourcesusa2011-05-311-4/+8
| | | | | | | explicitly. fix problem of r31671 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e