inspec/test/unit/resources/etc_group_test.rb

73 lines
2.2 KiB
Ruby
Raw Normal View History

2015-09-05 20:25:25 +00:00
# encoding: utf-8
2015-10-06 16:55:44 +00:00
# author: Christoph Hartmann
# author: Dominik Richter
2015-09-05 20:25:25 +00:00
require 'helper'
2015-10-26 03:04:18 +00:00
require 'inspec/resource'
2015-09-05 20:25:25 +00:00
2015-10-26 03:04:18 +00:00
describe 'Inspec::Resources::EtcGroup' do
2015-09-22 16:31:21 +00:00
let(:resource) { load_resource('etc_group') }
2015-09-05 20:25:25 +00:00
2015-09-22 16:33:05 +00:00
it 'verify /etc/group config parsing' do
_(resource.gids).must_equal [0, 33, 999]
_(resource.groups).must_equal %w{ root www-data GroupWithCaps }
2015-09-22 16:33:05 +00:00
_(resource.users).must_equal %w{ www-data root }
end
2015-09-05 20:25:25 +00:00
2015-09-22 16:33:05 +00:00
it 'verify group filter with no users' do
root_filter = resource.where(name: 'root')
_(root_filter.gids).must_equal [0]
2015-09-22 16:33:05 +00:00
_(root_filter.groups).must_equal ['root']
_(root_filter.users).must_equal []
end
2015-09-05 20:25:25 +00:00
2015-09-22 16:33:05 +00:00
it 'verify group filter with users' do
www_filter = resource.where(name: 'www-data')
_(www_filter.gids).must_equal [33]
2015-09-22 16:33:05 +00:00
_(www_filter.groups).must_equal ['www-data']
_(www_filter.users).must_equal ['www-data', 'root']
end
2015-09-05 20:25:25 +00:00
2015-09-22 16:33:05 +00:00
it 'verify group filter with wrong group' do
wrong_filter = resource.where(name: 'wrong_group')
_(wrong_filter.gids).must_equal []
_(wrong_filter.groups).must_equal []
_(wrong_filter.users).must_equal []
2015-09-05 20:25:25 +00:00
end
it 'verify group filter with gid' do
www_filter = resource.where(gid: 33)
_(www_filter.gids).must_equal [33]
_(www_filter.groups).must_equal ['www-data']
_(www_filter.users).must_equal ['www-data', 'root']
end
it 'verify group filter with wrong gid' do
www_filter = resource.where(group_id: 60)
_(www_filter.gids).must_equal []
_(www_filter.groups).must_equal []
_(www_filter.users).must_equal []
end
it 'verify group filter with group members' do
www_filter = resource.where(users: 'www-data,root')
_(www_filter.gids).must_equal [33]
_(www_filter.groups).must_equal ['www-data']
_(www_filter.users).must_equal ['www-data', 'root']
end
it 'verify group filter with no group members' do
www_filter = resource.where(members: '')
_(www_filter.gids).must_equal [0, 999]
_(www_filter.groups).must_equal ['root', 'GroupWithCaps']
_(www_filter.users).must_equal []
end
it 'verify group filter with wrong member' do
wrong_filter = resource.where(users: 'wrong_member')
_(wrong_filter.gids).must_equal []
_(wrong_filter.groups).must_equal []
_(wrong_filter.users).must_equal []
end
2015-09-05 20:25:25 +00:00
end