Ruby Undefined method error - Using Beaker

73 Views Asked by At

I'm quite new to all of this. I am trying to test out a puppet module using Beaker. I keep getting this:

NoMethodError: undefined method `describe' for 
#Beaker::TestCase:0x007fd6f95e6460
/Users/user1/beaker/Puppet/puppet-files/spec/classes/unit_spec.rb:3  
/Users/user1/.rvm/gems/ruby-2.2.7/gems/beaker-3.24.0/bin/beaker:9  
/Users/user1/.rvm/gems/ruby-2.2.7/bin/ruby_executable_hooks:15  
/Users/user1/.rvm/gems/ruby-2.2.7/bin/ruby_executable_hooks:15.

This is the command that I'm running - "beaker --hosts myhost.yaml --pre-suite spec".

My unit_spec.rb contains this:

require 'puppetlabs_spec_helper/rake_tasks'

describe 'application' do
  context 'applied to supported operating system' do
    on_supported_os.each do |os, facts|
      context "#{os}" do
       let(:facts) do
         facts
       end

       context "without any parameters" do
         let(:params) {{ }}

         it { is_expected.to compile.with_all_deps }
         it { is_expected.to contain_class('files') }
       end
     end
   end
 end


 context 'applied to unsupported operating system' do
   describe 'ubuntu-14-x86_64' do
     let(:facts) {{
       :osfamily        => 'Debian',
       :operatingsystem => 'Ubuntu'
     }}

     it { is_expected.to raise_error(Puppet::Error, /Ubuntu not supported/) }
   end
 end

end

Any help would be much appreciated! Btw, I am using 'puppetlabs_spec_helper/rake_tasks' due to the fact that when I just used 'spec_helper' it gave me an error that it could not "load such file" even though it was there.

0

There are 0 best solutions below