2015-09-08 22:05:05 +00:00
|
|
|
# encoding: utf-8
|
2015-10-06 16:55:44 +00:00
|
|
|
# author: Christoph Hartmann
|
|
|
|
# author: Dominik Richter
|
2015-09-08 22:05:05 +00:00
|
|
|
|
|
|
|
require 'helper'
|
2015-10-26 03:04:18 +00:00
|
|
|
require 'inspec/resource'
|
2015-09-08 22:05:05 +00:00
|
|
|
|
2015-10-26 03:04:18 +00:00
|
|
|
describe 'Inspec::Resources::Package' do
|
2015-10-12 11:22:01 +00:00
|
|
|
# arch linux
|
|
|
|
it 'verify arch linux package parsing' do
|
|
|
|
resource = MockLoader.new(:arch).load_resource('package', 'curl')
|
|
|
|
pkg = { name: 'curl', installed: true, version: '7.37.0-1', type: 'pacman' }
|
|
|
|
_(resource.installed?).must_equal true
|
|
|
|
_(resource.version).must_equal '7.37.0-1'
|
|
|
|
_(resource.info).must_equal pkg
|
|
|
|
end
|
2015-10-12 08:38:11 +00:00
|
|
|
|
2015-10-12 11:22:01 +00:00
|
|
|
# ubuntu
|
|
|
|
it 'verify ubuntu package parsing' do
|
|
|
|
resource = MockLoader.new(:ubuntu1404).load_resource('package', 'curl')
|
|
|
|
pkg = { name: 'curl', installed: true, version: '7.35.0-1ubuntu2', type: 'deb' }
|
|
|
|
_(resource.installed?).must_equal true
|
|
|
|
_(resource.version).must_equal '7.35.0-1ubuntu2'
|
|
|
|
_(resource.info).must_equal pkg
|
|
|
|
end
|
2015-09-08 22:05:05 +00:00
|
|
|
|
2015-10-12 11:22:01 +00:00
|
|
|
# centos
|
|
|
|
it 'verify centos package parsing' do
|
|
|
|
resource = MockLoader.new(:centos7).load_resource('package', 'curl')
|
2015-11-25 01:06:08 +00:00
|
|
|
pkg = { name: 'curl', installed: true, version: '7.29.0-19.el7', type: 'rpm' }
|
2015-10-12 11:22:01 +00:00
|
|
|
_(resource.installed?).must_equal true
|
2015-11-25 01:06:08 +00:00
|
|
|
_(resource.version).must_equal '7.29.0-19.el7'
|
2015-10-12 11:22:01 +00:00
|
|
|
_(resource.info).must_equal pkg
|
|
|
|
end
|
2015-09-08 22:05:05 +00:00
|
|
|
|
2015-12-03 03:08:49 +00:00
|
|
|
# wrlinux
|
|
|
|
it 'verify wrlinux package parsing' do
|
|
|
|
resource = MockLoader.new(:wrlinux).load_resource('package', 'curl')
|
2015-11-25 01:06:08 +00:00
|
|
|
pkg = { name: 'curl', installed: true, version: '7.29.0-19.el7', type: 'rpm' }
|
2015-12-03 03:08:49 +00:00
|
|
|
_(resource.installed?).must_equal true
|
2015-11-25 01:06:08 +00:00
|
|
|
_(resource.version).must_equal '7.29.0-19.el7'
|
2015-12-03 03:08:49 +00:00
|
|
|
_(resource.info).must_equal pkg
|
|
|
|
end
|
|
|
|
|
2015-10-12 11:22:01 +00:00
|
|
|
# windows
|
|
|
|
it 'verify windows package parsing' do
|
|
|
|
resource = MockLoader.new(:windows).load_resource('package', 'Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161')
|
|
|
|
pkg = { name: 'Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161', installed: true, version: '9.0.30729.6161', type: 'windows' }
|
|
|
|
_(resource.installed?).must_equal true
|
|
|
|
_(resource.version).must_equal '9.0.30729.6161'
|
|
|
|
_(resource.info).must_equal pkg
|
|
|
|
end
|
2015-09-23 14:11:48 +00:00
|
|
|
|
2015-10-12 11:22:01 +00:00
|
|
|
# undefined
|
|
|
|
it 'verify package handling on unsupported os' do
|
|
|
|
resource = MockLoader.new(:undefined).load_resource('package', 'curl')
|
|
|
|
_(resource.installed?).must_equal false
|
|
|
|
_(resource.info).must_equal nil
|
2015-09-08 22:05:05 +00:00
|
|
|
end
|
|
|
|
end
|