Как протестировать на отсутствие файла с serverspec?

Руководство serverspec по типам ресурсов не объясняет, как протестировать на отсутствие файла, а не его присутствие. Это является лучшим, я мог придумать:

describe command('/bin/bash -c "[[ ! -e /var/foo ]]"') do
  its(:exit_status) { should eq 0 }
end

Это кажется ужасно неуклюжим, но лучше, чем усиление builtins:

describe file('/var/foo') do
  it { should_not be_file }
  it { should_not be_directory }
  it { should_not be_socket }
  it { should_not be_symlink }
end

Существует ли лучший способ сделать это?

6
задан 23 June 2015 в 21:26
1 ответ

Объект serverpec File теперь отвечает .exists? , так что это работает:

describe file('/var/foo') do
  it { should_not exist }
end

Функция была добавлена ​​ в serverpec v2.17.0.

6
ответ дан 3 December 2019 в 00:28

Теги

Похожие вопросы