summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-08-27 19:08:38 +0000
committereregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-08-27 19:08:38 +0000
commit8500714adc05e2dc889ad20aebdb7fce1a350709 (patch)
tree2ad933ea168945d3b2e37ebecc495be12b08a6e8
parente61e6ae5878fe2843a3dd7fe7f531552a3ac4497 (diff)
Rewrite Etc.sysconf spec to allow nil or Integer for all variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--spec/ruby/library/etc/sysconf_spec.rb35
1 files changed, 13 insertions, 22 deletions
diff --git a/spec/ruby/library/etc/sysconf_spec.rb b/spec/ruby/library/etc/sysconf_spec.rb
index 5c7ad31..e7d59d1 100644
--- a/spec/ruby/library/etc/sysconf_spec.rb
+++ b/spec/ruby/library/etc/sysconf_spec.rb
@@ -3,29 +3,20 @@ require 'etc'
platform_is_not :windows do
describe "Etc.sysconf" do
- def should_be_integer_or_nil(value)
- if value.nil?
- value.should == nil
- else
- value.should be_kind_of(Integer)
+ %w[
+ SC_ARG_MAX SC_CHILD_MAX SC_HOST_NAME_MAX SC_LOGIN_NAME_MAX SC_NGROUPS_MAX
+ SC_CLK_TCK SC_OPEN_MAX SC_PAGESIZE SC_RE_DUP_MAX SC_STREAM_MAX
+ SC_SYMLOOP_MAX SC_TTY_NAME_MAX SC_TZNAME_MAX SC_VERSION
+ ].each do |const|
+ it "returns the value of POSIX.1 system configuration variable #{const}" do
+ var = Etc.const_get(const)
+ value = Etc.sysconf(var)
+ if value.nil?
+ value.should == nil
+ else
+ value.should be_kind_of(Integer)
+ end
end
end
-
- it "returns the value of POSIX.1 system configuration variables" do
- Etc.sysconf(Etc::SC_ARG_MAX).should be_kind_of(Integer)
- should_be_integer_or_nil(Etc.sysconf(Etc::SC_CHILD_MAX))
- Etc.sysconf(Etc::SC_HOST_NAME_MAX).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_LOGIN_NAME_MAX).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_NGROUPS_MAX).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_CLK_TCK).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_OPEN_MAX).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_PAGESIZE).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_RE_DUP_MAX).should be_kind_of(Integer)
- Etc.sysconf(Etc::SC_STREAM_MAX).should be_kind_of(Integer)
- should_be_integer_or_nil(Etc.sysconf(Etc::SC_SYMLOOP_MAX))
- Etc.sysconf(Etc::SC_TTY_NAME_MAX).should be_kind_of(Integer)
- should_be_integer_or_nil(Etc.sysconf(Etc::SC_TZNAME_MAX))
- Etc.sysconf(Etc::SC_VERSION).should be_kind_of(Integer)
- end
end
end