class Inspec::Resources::Group


end
its(‘gid’) { should eq 0 }
it { should exist }
describe group(‘root’) do
Usage:

def exists?

verifies if a group exists
def exists?
  !group_info.entries.empty?
end

def flatten_entry(group_info, prop)

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

def gid

def gid
  flatten_entry(group_info, 'gid')
end

def group_info

def group_info
  # we need a local copy for the block
  group = @group.dup
  @groups_cache ||= inspec.groups.where { name == group }
end

def initialize(groupname)

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

def local

def local
  # at this point the implementation only returns local groups
  true
end

def members

def members
  flatten_entry(group_info, 'members')
end

def to_s

def to_s
  "Group #{@group}"
end