Sha256: f8a26b6a1a02ce48172525a67017c828bb3d715c6986247ec5dd16ec526ca297

Contents?: true

Size: 1.84 KB

Versions: 6

Compression:

Stored size: 1.84 KB

Contents

# encoding: utf-8
# author: Christoph Hartmann
# author: Dominik Richter

require 'helper'
require 'inspec/resource'

describe 'Inspec::Resources::Package' do
  # 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

  # 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

  # centos
  it 'verify centos package parsing' do
    resource = MockLoader.new(:centos7).load_resource('package', 'curl')
    pkg = { name: 'curl', installed: true, version: '7.29.0', type: 'rpm' }
    _(resource.installed?).must_equal true
    _(resource.version).must_equal '7.29.0'
    _(resource.info).must_equal pkg
  end

  # 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

  # 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
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
inspec-0.9.5 test/unit/resources/package_test.rb
inspec-0.9.4 test/unit/resources/package_test.rb
inspec-0.9.3 test/unit/resources/package_test.rb
inspec-0.9.2 test/unit/resources/package_test.rb
inspec-0.9.1 test/unit/resources/package_test.rb
inspec-0.9.0 test/unit/resources/package_test.rb