summaryrefslogtreecommitdiff
path: root/spec/ruby
diff options
context:
space:
mode:
authornagachika <nagachika@ruby-lang.org>2025-03-08 18:19:14 +0900
committernagachika <nagachika@ruby-lang.org>2025-03-08 18:19:14 +0900
commitfff5baf200572762a60c624bc7bea866992c2f30 (patch)
tree9e0dfaa60963dbec48f219c792742a8ffc06fbae /spec/ruby
parent54dd27d89d2e6814114f1aff18836a987d5a4ab1 (diff)
merge revision(s) 46b544c54955348ef1ea9692b837b061f59f91cd, d3abee739f4feb91bb9aaae33877d70c8c576db0: [Backport #21095]
Prefer `uname -n` over `hostname`. (#12647) Add fallback for `hostname` if `uname` isn't available. (#12655)
Diffstat (limited to 'spec/ruby')
-rw-r--r--spec/ruby/library/socket/socket/gethostname_spec.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/spec/ruby/library/socket/socket/gethostname_spec.rb b/spec/ruby/library/socket/socket/gethostname_spec.rb
index 4b79747b27..89e1ed496f 100644
--- a/spec/ruby/library/socket/socket/gethostname_spec.rb
+++ b/spec/ruby/library/socket/socket/gethostname_spec.rb
@@ -2,7 +2,15 @@ require_relative '../spec_helper'
require_relative '../fixtures/classes'
describe "Socket.gethostname" do
+ def system_hostname
+ # Most platforms implement this POSIX standard:
+ `uname -n`.strip
+ rescue
+ # Only really required for Windows without MSYS/MinGW/Cygwin etc:
+ `hostname`.strip
+ end
+
it "returns the host name" do
- Socket.gethostname.should == `hostname`.strip
+ Socket.gethostname.should == system_hostname
end
end