2016-09-27 11 views
1

Я пытаюсь проверить, что linux-image-extra-#{node['kernel']['release']} будет установлен моей поваренной книгой, и я пытаюсь макет #{node['kernel']['release'] с использованием Fauxhai. Пока что у меня есть;Исправление выпусков ядра на ChefSpec

describe 'my-cookbook::recipe' do 
     let(:chef_run) { ChefSpec::SoloRunner.new(platform: 'ubuntu', version: '14.04').converge(described_recipe) } 

     before do 
      Fauxhai.mock(platform: 'ubuntu', version: '14.04') do |node| 
       node['kernel']['release'] = '3.13.0-66' 
      end 
      end 

     it 'installs linux extra image package do' 
      expect(chef_run).to install_package("linux-image-extra-#{node['kernel']['release']}-generic") 
     end 
    end 

К сожалению, он не подбирает атрибут и производит ошибку, которая показывает это;

Failure/Error: expect(chef_run).to install_package("linux-image-extra-#{node['kernel']['release']}-generic")

ответ

0

способ установки данных платформы от Fauxhai с ChefSpec это передать platform и version параметр конструктору Solo/ServerRunner.

let(:chef_run) { ChefSpec::SoloRunner.new(platform: 'ubuntu', version: '14.04').converge(described_recipe) } 

Больше к точке, вы используете ==, когда вы имеете в виду =. Исправьте все вышеперечисленное. Также вам нужно указать уровень при настройке атрибута узла. Но на самом деле просто используйте данные Fauxhai.

+0

Спасибо за ваш ответ. У меня это уже в моем тесте; извините, я должен был включить это в мой вопрос. Сейчас я обновлю его. –

 Смежные вопросы

  • Нет связанных вопросов^_^