components/ruby/ruby-23/patches/05-test-ruby-test_process_rb.patch
author April Chin <april.chin@oracle.com>
Thu, 08 Dec 2016 12:39:42 -0800
changeset 7469 422c29c822ab
permissions -rw-r--r--
PSARC/2016/585 Add Ruby 2.3 23085411 Upgrade Ruby to 2.3 24966407 problems with Ruby 2.1 manpages
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7469
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     1
# Solaris specific change; not appropriate for contributing upstream.
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     2
#
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     3
# Remove the test_popen_exit test so it won't run; SIGTERM is sent to the
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     4
# ruby process causing the entire test run to terminate when this test is run.
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     5
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     6
--- ruby-2.3.1-orig/test/ruby/test_process.rb	2016-03-29 00:11:32.000000000 -0700
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     7
+++ ruby-2.3.1/test/ruby/test_process.rb	2016-11-28 15:32:30.591404723 -0800
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     8
@@ -1729,35 +1729,6 @@ class TestProcess < Test::Unit::TestCase
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
     9
     }
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    10
   end
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    11
 
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    12
-  def test_popen_exit
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    13
-    bug11510 = '[ruby-core:70671] [Bug #11510]'
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    14
-    pid = nil
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    15
-    opt = {timeout: 10, stdout_filter: ->(s) {pid = s}}
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    16
-    if windows?
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    17
-      opt[:new_pgroup] = true
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    18
-    else
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    19
-      opt[:pgroup] = true
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    20
-    end
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    21
-    assert_ruby_status(["-", RUBY], <<-'end;', bug11510, **opt)
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    22
-      RUBY = ARGV[0]
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    23
-      th = Thread.start {
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    24
-        Thread.current.abort_on_exception = true
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    25
-        IO.popen([RUBY, "-esleep 15", err: [:child, :out]]) {|f|
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    26
-          STDOUT.puts f.pid
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    27
-          STDOUT.flush
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    28
-          sleep(2)
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    29
-        }
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    30
-      }
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    31
-      sleep(0.001) until th.stop?
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    32
-    end;
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    33
-    assert_match(/\A\d+\Z/, pid)
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    34
-  ensure
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    35
-    if pid
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    36
-      pid = pid.to_i
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    37
-      [:TERM, :KILL].each {|sig| Process.kill(sig, pid) rescue break}
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    38
-    end
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    39
-  end
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    40
-
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    41
   def test_execopts_new_pgroup
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    42
     return unless windows?
422c29c822ab PSARC/2016/585 Add Ruby 2.3
April Chin <april.chin@oracle.com>
parents:
diff changeset
    43