class Inspec::Resources::Group
Usage: describe group('root') do
it { should exist } its('gid') { should eq 0 }
end
Public Class Methods
new(groupname)
click to toggle source
# File lib/inspec/resources/groups.rb, line 103 def initialize(groupname) @group = groupname # select group manager @group_provider = select_group_manager(inspec.os) return skip_resource "The `group` resource is not supported on your OS yet." if @group_provider.nil? end
Public Instance Methods
exists?()
click to toggle source
verifies if a group exists
# File lib/inspec/resources/groups.rb, line 112 def exists? !group_info.entries.empty? end
gid()
click to toggle source
# File lib/inspec/resources/groups.rb, line 116 def gid flatten_entry(group_info, "gid") end
local()
click to toggle source
# File lib/inspec/resources/groups.rb, line 128 def local # at this point the implementation only returns local groups true end
members()
click to toggle source
# File lib/inspec/resources/groups.rb, line 120 def members flatten_entry(group_info, "members") || empty_value_for_members end
members_array()
click to toggle source
# File lib/inspec/resources/groups.rb, line 124 def members_array flatten_entry(group_info, "members_array") || [] end
to_s()
click to toggle source
# File lib/inspec/resources/groups.rb, line 133 def to_s "Group #{@group}" end
Private Instance Methods
empty_value_for_members()
click to toggle source
# File lib/inspec/resources/groups.rb, line 156 def empty_value_for_members inspec.os.windows? ? [] : "" end
flatten_entry(group_info, prop)
click to toggle source
# File lib/inspec/resources/groups.rb, line 139 def flatten_entry(group_info, prop) entries = group_info.entries if entries.empty? nil elsif entries.size == 1 entries.first.send(prop) else raise "found more than one group with the same name, please use `groups` resource" end end
group_info()
click to toggle source
# File lib/inspec/resources/groups.rb, line 150 def group_info # we need a local copy for the block group = @group.dup @groups_cache ||= inspec.groups.where { name == group } end