mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
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
This commit is contained in:
parent
e61e6ae587
commit
8500714adc
1 changed files with 13 additions and 22 deletions
|
@ -3,29 +3,20 @@ require 'etc'
|
||||||
|
|
||||||
platform_is_not :windows do
|
platform_is_not :windows do
|
||||||
describe "Etc.sysconf" do
|
describe "Etc.sysconf" do
|
||||||
def should_be_integer_or_nil(value)
|
%w[
|
||||||
if value.nil?
|
SC_ARG_MAX SC_CHILD_MAX SC_HOST_NAME_MAX SC_LOGIN_NAME_MAX SC_NGROUPS_MAX
|
||||||
value.should == nil
|
SC_CLK_TCK SC_OPEN_MAX SC_PAGESIZE SC_RE_DUP_MAX SC_STREAM_MAX
|
||||||
else
|
SC_SYMLOOP_MAX SC_TTY_NAME_MAX SC_TZNAME_MAX SC_VERSION
|
||||||
value.should be_kind_of(Integer)
|
].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
|
||||||
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
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Reference in a new issue