63 lines
1.7 KiB
Ruby
63 lines
1.7 KiB
Ruby
|
require_relative "../../../../base"
|
||
|
require_relative "../../../../../../plugins/hosts/void/cap/nfs"
|
||
|
require_relative "../../../../../../lib/vagrant/util"
|
||
|
|
||
|
describe VagrantPlugins::HostVoid::Cap::NFS do
|
||
|
|
||
|
include_context "unit"
|
||
|
|
||
|
let(:caps) do
|
||
|
VagrantPlugins::HostVoid::Plugin
|
||
|
.components
|
||
|
.host_capabilities[:void]
|
||
|
end
|
||
|
|
||
|
let(:env) { double("env") }
|
||
|
|
||
|
context ".nfs_check_command" do
|
||
|
it "should provide nfs_check_command capability" do
|
||
|
expect(caps.get(:nfs_check_command)).to eq(described_class)
|
||
|
end
|
||
|
|
||
|
it "should return command to execute" do
|
||
|
expect(caps.get(:nfs_check_command).nfs_check_command(env)).to be_a(String)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
context ".nfs_start_command" do
|
||
|
it "should provide nfs_start_command capability" do
|
||
|
expect(caps.get(:nfs_start_command)).to eq(described_class)
|
||
|
end
|
||
|
|
||
|
it "should return command to execute" do
|
||
|
expect(caps.get(:nfs_start_command).nfs_start_command(env)).to be_a(String)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
context ".nfs_installed" do
|
||
|
let(:exit_code) { 0 }
|
||
|
let(:result) { Vagrant::Util::Subprocess::Result.new(exit_code, "", "") }
|
||
|
|
||
|
before { allow(Vagrant::Util::Subprocess).to receive(:execute).
|
||
|
with(/xbps-query nfs-utils/).and_return(result) }
|
||
|
|
||
|
it "should provide nfs_installed capability" do
|
||
|
expect(caps.get(:nfs_installed)).to eq(described_class)
|
||
|
end
|
||
|
|
||
|
context "when installed" do
|
||
|
it "should return true" do
|
||
|
expect(caps.get(:nfs_installed).nfs_installed(env)).to be_truthy
|
||
|
end
|
||
|
end
|
||
|
|
||
|
context "when not installed" do
|
||
|
let(:exit_code) { 1 }
|
||
|
|
||
|
it "should return false" do
|
||
|
expect(caps.get(:nfs_installed).nfs_installed(env)).to be_falsey
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|