Portanto, isso se deve em grande parte a uma nova instância de uma classe chamada OmnitruckClient
sendo criado na receita padrão do chef-servidor.
O OmnitruckClient é basicamente uma chamada HTTP para o terminal Omnitruck, que deve retornar uma URL na qual a receita chef-servidor fará o download do pacote.
Existem algumas maneiras de lidar com o teste desse comportamento em que posso pensar.
Como a 'plataforma' virtual nativa ChefSpec é chamada de chefsepc
, o serviço Omnitruck nunca responderá com um link de URL correto, então um método seria fornecer uma plataforma e uma versão para o Spec teste, que pode ter outros valores mais tarde.
Você pode fornecer essas seleções na configuração geral do RSpec ou no caso por teste (ou até mesmo em cada convergência).
Acho mais fácil configurá-los no arquivo spec_helper.rb. Veja aqui para mais informações sobre as opções de configuração.
Outro modo pode ser tentar zombar / arrancar a classe OmnitruckClient (ou o método Net :: HTTP.get que ele usa), mas parece que isso pode ser um pouco mais confuso, e eu realmente não consegui para trabalhar ainda.