Loathing RSpec and Puppet
Posted on June 28, 2016 (Last modified on July 11, 2024) • 1 min read • 135 wordsThere are words for how much I hate RSpec (especially RSpec-Puppet), but they would be too harsh to write down.
So now that I don’t have to google the same shit over and over again, here’s what you have to do to get basic puppet module testing up and running (replace $MODULE with your module name, of course):
require 'rubygems'
require 'puppetlabs_spec_helper/rake_tasks'fixtures:
  repositories:
    concat: git://github.com/puppetlabs/puppetlabs-concat.git
    # alternate method, for specifying refs
    stdlib:
      repo: git://github.com/puppetlabs/puppetlabs-stdlib.git
      ref:  1.0.0
  symlinks:
    # do _not_ forget this
    $MODULE: "#{source_dir}"require 'rubygems'
require 'puppetlabs_spec_helper/module_spec_helper'# see also http://rspec-puppet.com/
require 'spec_helper'
describe '$MODULE' do
  context 'default' do
    it {
      should contain_file('/etc/haproxy/haproxy.conf')
    }
    # or ...
    it do
      is_expected.to contain_file('/this/syntax/is/even/more/retarded')
    end
  end
endIt’s “rake spec”, not “rake test”. Of course.