summaryrefslogtreecommitdiff
path: root/spec/ruby/library/etc/sysconf_spec.rb
blob: 1f2c7a770ff53c66b5b142fc663b9a1c88adc939 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
require_relative '../../spec_helper'
require 'etc'

platform_is_not :windows do
  describe "Etc.sysconf" do
    %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
  end
end