COMMIT New specs for Socket#bind. http://github.com/rubyspec/rubyspec/commit/a33e4f825d04bea2d4a77efba755c4e1320a0e1a --- 20091115T091110 +++ 20091116T091207 @@ -1,19746 +1,19746 @@ ConditionVariable#broadcast - should return self if nothing to broadcast to - should return self if something is waiting for a broadcast -- releases all threads waiting in line for this resource +- releases all threads waiting in line for this resource (ERROR - ) /home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/signal_spec.rb ConditionVariable#signal @@ -24975,9 +24975,19 @@ /home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/accept_spec.rb /home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb -Socket#bind +Socket#bind on SOCK_DGRAM socket - binds to a port -- raises an error if we try to bind to an already bound port +- returns 0 if successful +- raises Errno::EINVAL when binding to an already bound port +- raises Errno::EADDRNOTAVAIL when the specified sockaddr is not available from the local machine +- raises Errno::EACCES when the current user does not have permission to bind + +Socket#bind on SOCK_STREAM socket +- binds to a port (FAILED - ) +- returns 0 if successful (ERROR - ) +- raises Errno::EINVAL when binding to an already bound port (ERROR - ) +- raises Errno::EADDRNOTAVAIL when the specified sockaddr is not available from the local machine +- raises Errno::EACCES when the current user does not have permission to bind /home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/connect_nonblock_spec.rb /home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/connect_spec.rb @@ -27065,6 +27075,38 @@ /home/chkbuild/tmp/build/ruby-1.8.6//mspec/bin/mspec-run:8 ) +ConditionVariable#broadcast releases all threads waiting in line for this resource ERROR +ThreadError: Thread#join: deadlock 0x7f1b085f2df8 - mutual join(0x3d02480) +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/broadcast_spec.rb:55:in `join' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/broadcast_spec.rb:55 +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/broadcast_spec.rb:55:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/broadcast_spec.rb:55 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/broadcast_spec.rb:2:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:163:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:36:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/object.rb:11:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/conditionvariable/broadcast_spec.rb:4 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `load' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:41:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/commands/mspec-run.rb:87:in `run' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/utils/script.rb:217:in `main' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/bin/mspec-run:8 + + ) Date#civil doesn't blow up (illegal instruction and segfault, respectively) when fed huge numbers FAILED Expected FloatDomainError but got NoMemoryError (failed to allocate memory) /home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/expectations/expectations.rb:15:in `fail_with' @@ -27562,6 +27604,97 @@ /home/chkbuild/tmp/build/ruby-1.8.6//mspec/bin/mspec-run:8 ) +Socket#bind on SOCK_STREAM socket binds to a port FAILED +Expected to not get Exception +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/expectations/expectations.rb:15:in `fail_with' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/expectations/should.rb:19:in `should_not' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:56 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/guards/guard.rb:157:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:163:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:36:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/object.rb:11:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:44 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `load' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:41:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/commands/mspec-run.rb:87:in `run' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/utils/script.rb:217:in `main' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/bin/mspec-run:8 + + ) +Socket#bind on SOCK_STREAM socket returns 0 if successful ERROR +Errno::EADDRINUSE: Address already in use - bind(2) +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:60:in `bind' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:60 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/expectations/expectations.rb:15:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:163:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:36:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/object.rb:11:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:44 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `load' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:41:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/commands/mspec-run.rb:87:in `run' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/utils/script.rb:217:in `main' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/bin/mspec-run:8 + + ) +Socket#bind on SOCK_STREAM socket raises Errno::EINVAL when binding to an already bound port ERROR +Errno::EADDRINUSE: Address already in use - bind(2) +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:64:in `bind' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:64 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:60:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `all?' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:135:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:163:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/context.rb:155:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:36:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/object.rb:11:in `describe' +/home/chkbuild/tmp/build/ruby-1.8.6//rubyspec/library/socket/socket/bind_spec.rb:44 +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `load' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `instance_eval' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:67:in `protect' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:55:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `each' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:49:in `files' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/runner/mspec.rb:41:in `process' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/commands/mspec-run.rb:87:in `run' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/lib/mspec/utils/script.rb:217:in `main' +/home/chkbuild/tmp/build/ruby-1.8.6//mspec/bin/mspec-run:8 + + ) Socket#getnameinfo gets the name information and resolves the service FAILED Expected ["localhost", "www"] to equal ["localhost", "http"] @@ -27938,7 +28071,7 @@ Finished in seconds -2900 files, 10944 examples, 33484 expectations, 16 failures, 36 errors +2900 files, 10952 examples, 33497 expectations, 17 failures, 39 errors exit 1 failed(rubyspec) == end #