summaryrefslogtreecommitdiff
path: root/test/io
AgeCommit message (Collapse)Author
2022-01-12[ruby/io-nonblock] Use omit instead of skip for test-unitHiroshi SHIBATA
https://github.com/ruby/io-nonblock/commit/a7bfbfa049
2022-01-12[ruby/io-wait] Use omit instead of skip for test-unitHiroshi SHIBATA
https://github.com/ruby/io-wait/commit/75543ab1bc
2022-01-05Fix `Leaked file descriptor: TestIO_Console#test_console_kw`Kazuhiro NISHIYAMA
``` Leaked file descriptor: TestIO_Console#test_console_kw: 10 : #<File:/dev/tty> ```
2021-12-29Sync io-console gem.Samuel Williams
2021-11-16[ruby/io-wait] Disable ractor test which is meaningless on earlier versionsNobuyoshi Nakada
https://github.com/ruby/io-wait/commit/e8e1e99d4c
2021-11-16[ruby/io-wait] Use `omit` as per test-unitNobuyoshi Nakada
https://github.com/ruby/io-wait/commit/1f59f7b02f
2021-11-14show encoding for each pathKoichi Sasada
2021-11-14test/io/console/test_io_console.rb: dump debug output to stderrYusuke Endoh
make test-all in parallel mode seems to hide stdout
2021-11-12test/io/console/test_io_console.rb: add debug codeYusuke Endoh
to debug the following failure http://ci.rvm.jp/results/trunk-test@ruby-sky1/3708240 ``` /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `===': incompatible encoding regexp match (US-ASCII regexp with UTF-16BE string) (Encoding::CompatibilityError) /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `each' /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `grep' /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:10:in `<class:TestIO_Console>' /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb:9:in `<top (required)>' <internal:/tmp/ruby/v3/src/trunk-test/lib/rubygems/core_ext/kernel_require.rb>:85:in `require' <internal:/tmp/ruby/v3/src/trunk-test/lib/rubygems/core_ext/kernel_require.rb>:85:in `require' /tmp/ruby/v3/src/trunk-test/tool/lib/test/unit/parallel.rb:122:in `run' /tmp/ruby/v3/src/trunk-test/tool/lib/test/unit/parallel.rb:211:in `<main>' running file: /tmp/ruby/v3/src/trunk-test/test/io/console/test_io_console.rb ```
2021-10-11[ruby/io-console] Skip Interrupt test on Solaris tooNobuyoshi Nakada
https://github.com/ruby/io-console/commit/48db3616da
2021-03-07[ruby/io-wait] Declare as Ractor-safeNobuyoshi Nakada
Fixes https://bugs.ruby-lang.org/issues/17659 https://github.com/ruby/io-wait/commit/ba338b4764 Notes: Merged: https://github.com/ruby/ruby/pull/4244
2021-03-07[ruby/io-wait] Refined uncommon device type testsNobuyoshi Nakada
https://github.com/ruby/io-wait/commit/0c73ebcf5d Notes: Merged: https://github.com/ruby/ruby/pull/4244
2021-02-05[ruby/io-console] Mark all tests that use run_pty as pend on JRubyCharles Oliver Nutter
JRuby's PTY.spawn does not produce a process with its own controlling terminal, which is necessary for testing these raw escape sequences. This commit marks those tests as pending. The functionality tested appears to work at a command line, but due to this PTY bug in JRuby we cannot test it this way. See https://github.com/jruby/jruby/issues/6552 https://github.com/ruby/io-console/commit/a486b72e5e https://github.com/ruby/io-console/commit/b5c8e7bfd8
2021-02-05[ruby/io-console] Use omit instead of skipCharles Oliver Nutter
This test runs with test/unit now, which defines omit instead of skip. https://github.com/ruby/io-console/commit/bd731d0b8d
2021-02-05[ruby/io-console] Skip test on JRubyCharles Oliver Nutter
The subprocess script here works fine at a command line, but when run as a pty subprocess during the tests the master side hangs waiting for output. https://github.com/ruby/io-console/commit/4a21610ece
2021-02-05[ruby/io-console] Add console.rb to search for pathsCharles Oliver Nutter
https://github.com/ruby/io-console/commit/74567376c4
2021-02-05[ruby/io-console] Run subprocesses without test librariesNobuyoshi Nakada
Now io/console is loaded from test-unit indirectly, test-unit requires power_assert which requires io/console. https://github.com/ruby/io-console/commit/8817d07951 https://github.com/ruby/io-console/commit/639cce89de
2021-01-05[ruby/io-console] Ignore chomp! result and return the modified stringNobuyoshi Nakada
https://github.com/ruby/io-console/commit/09e5ccc729
2020-10-11[ruby/io-console] Fix timeout type error (#18)Nobuyoshi Nakada
Fixed TypeError when IO#getch timed out `rb_io_wait` returns a bit-flags Integer representing available events, or Qfalse if timed out. Also the result of `NUM2INT` is not a `VALUE`. ``` $ ./bin/ruby -v -rio/console -e "p IO.console.getch(intr: true, time: 0.1)" ruby 3.0.0dev (2020-10-09T20:27:30Z master 5ea2ea74cc) [x64-mingw32] -e:1:in `getch': no implicit conversion of false into Integer (TypeError) from -e:1:in `<main>' ``` https://github.com/ruby/io-console/commit/3bdfaf62df
2020-08-27[ruby/io-console] Bug 17128: In test_set_winsize_console, wrapped re-size in ↵Leam Hall
a begin-rescue-else. https://github.com/ruby/io-console/commit/a22333c33a
2020-07-30Add explicitly require for Dir.mktmpdirHiroshi SHIBATA
2020-05-09Use %w instead of %i not to create unused IDsNobuyoshi Nakada
2020-05-09test/io/console/test_io_console.rb: Rescue Errno::ENXIO for SolarisYusuke Endoh
https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20200509T100003Z.fail.html.gz ``` 1) Failure: TestIO_Console#test_failed_path [/export/home/users/chkbuild/cb-gcc/tmp/build/20200509T100003Z/ruby/test/io/console/test_io_console.rb:40]: [Errno::ENODEV, Errno::ENOTTY, Errno::EBADF] exception expected, not #<Errno::ENXIO: No such device or address - /dev/null>. ```
2020-05-09[ruby/io-console] Fails with EBADF on mingwNobuyoshi Nakada
https://github.com/ruby/io-console/commit/530cec574c
2020-05-09[ruby/io-console] Expanded expected errorsNobuyoshi Nakada
May fail with ENOTTY instead of ENODEV. https://github.com/ruby/io-console/commit/fe117b89e0
2020-05-09[ruby/io-console] Added test for failed pathNobuyoshi Nakada
https://github.com/ruby/io-console/commit/06a540f9b4
2020-01-18[ruby/io-console] Filter Ruby engine name rather than just /ruby/Charles Oliver Nutter
This breaks tests using this path on JRuby because the `jruby` executable turns into `jjruby` after the sub. https://github.com/ruby/io-console/commit/e5951aa34c
2019-12-29[ruby/io-console] Enable only interrupt bits on `intr: true`Nobuyoshi Nakada
https://github.com/ruby/io-console/commit/baaf929041
2019-12-24Scale sleeping times to wait for the OS operationsNobuyoshi Nakada
2019-12-24Synchronize with a Queue instead of sleepingNobuyoshi Nakada
2019-12-24Revert "Scale sleeping times"Koichi Sasada
This reverts commit e57d6194218efc73c30f3fed9dd321d2e357030b. Test fails: http://ci.rvm.jp/results/trunk-gc-asserts@ruby-sky1/2518563 http://ci.rvm.jp/results/trunk-gc_compact@silicon-docker/2518533
2019-12-24Scale sleeping timesNobuyoshi Nakada
2019-12-18[ruby/io-console] Skip Interrupt test on LinuxNobuyoshi Nakada
Hangs up only in ruby/ruby on Travis-CI. https://github.com/ruby/io-console/commit/de39aa6dd6
2019-12-18[ruby/io-console] Set raw mode strictly same as cfmakerawNobuyoshi Nakada
* Default VMIN and VTIME to minimum input. * Disable parity check bits explicitly. * Disable all bits for flow control on input. Co-Authored-By: NARUSE, Yui <naruse@airemix.jp> https://github.com/ruby/io-console/commit/5ce201a686
2019-12-18[ruby/io-console] Skip interruptNobuyoshi Nakada
https://github.com/ruby/io-console/commit/8ed5a2bcc3
2019-12-17[ruby/io-console] Timeout in the child processNobuyoshi Nakada
https://github.com/ruby/io-console/commit/b8411689a5
2019-12-17[ruby/io-console] Use IO.console instead of STDINNobuyoshi Nakada
https://github.com/ruby/io-console/commit/9e3ec5b936
2019-12-17[ruby/io-console] Disable implementation-defined special control charactersNobuyoshi Nakada
In raw mode with interrupt enabled. https://github.com/ruby/io-console/commit/e9e8e3ff17
2019-12-17[ruby/io-console] Added the test for intr optionNobuyoshi Nakada
https://github.com/ruby/io-console/commit/4f01db102d
2019-12-05test/io/console/test_io_console.rb: add a memo for the mysterious hackYusuke Endoh
2019-12-05test/io/console/test_io_console.rb: Try the hack for SolarisYusuke Endoh
I'm not entirely sure why, but test_set_winsize_console gets stuck on Solaris (and if I recall, macOS). I found a hack for FreeBSD, so I want to give it a try on Solaris too.
2019-12-02Wait for the main thread to start reading by QueueNobuyoshi Nakada
Otherwise, the written data to pty before the reading started may be just lost.
2019-09-25Revert "[ruby/io-console] Skip cursor position test on Solaris"Kazuhiro NISHIYAMA
This reverts commit 5294ded681992ced2ecbd31c814b63265d2f591e.
2019-09-25[ruby/io-console] Unique paths to be addedNobuyoshi Nakada
https://github.com/ruby/io-console/commit/a3ad851b6c
2019-09-25[ruby/io-console] Load the current librariesNobuyoshi Nakada
https://github.com/ruby/io-console/commit/ab7653c543
2019-09-25[ruby/io-console] Skip cursor position test on SolarisNobuyoshi Nakada
It results in a mysterious failure. https://github.com/ruby/io-console/commit/e3543c3da4
2019-09-24[ruby/io-console] Made cursor position 0-originNobuyoshi Nakada
https://github.com/ruby/io-console/commit/9377e37295
2018-12-31test_io_wait.rb: try to stabilize test_wait_readablek0kubun
that randomly fails https://rubyci.org/logs/mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-trunk/log/20181231T103312Z.fail.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-14Suppress uninitialized instance variable warningsnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-22io + socket: make pipes and sockets nonblocking by defaultnormal
All normal Ruby IO methods (IO#read, IO#gets, IO#write, ...) are all capable of appearing to be "blocking" when presented with a file description with the O_NONBLOCK flag set; so there is little risk of incompatibility within Ruby-using programs. The biggest compatibility risk is when spawning external programs. As a result, stdin, stdout, and stderr are now always made blocking before exec-family calls. This change will make an event-oriented MJIT usable if it is waiting on pipes on POSIX_like platforms. It is ALSO necessary to take advantage of (proposed lightweight concurrency (aka "auto-Fiber") or any similar proposal for network concurrency: https://bugs.ruby-lang.org/issues/13618 Named-pipe (FIFO) are NOT yet non-blocking by default since they are rarely-used and may introduce compatibility problems and extra syscall overhead for a common path. Please revert this commit if there are problems and if I am afk since I am afk a lot, lately. [ruby-core:89950] [Bug #14968] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e