2016-06-05 23:10:19 +00:00
|
|
|
require_relative "../../../../base"
|
|
|
|
|
|
|
|
describe "VagrantPlugins::GuestRedHat::Cap::Flavor" do
|
|
|
|
let(:caps) do
|
|
|
|
VagrantPlugins::GuestRedHat::Plugin
|
|
|
|
.components
|
|
|
|
.guest_capabilities[:redhat]
|
|
|
|
end
|
|
|
|
|
|
|
|
let(:machine) { double("machine") }
|
|
|
|
let(:comm) { VagrantTests::DummyCommunicator::Communicator.new(machine) }
|
|
|
|
|
|
|
|
before do
|
|
|
|
allow(machine).to receive(:communicate).and_return(comm)
|
|
|
|
end
|
|
|
|
|
|
|
|
after do
|
|
|
|
comm.verify_expectations!
|
|
|
|
end
|
|
|
|
|
|
|
|
describe ".flavor" do
|
|
|
|
let(:cap) { caps.get(:flavor) }
|
|
|
|
|
|
|
|
{
|
|
|
|
"CentOS Linux 2.4 release 7" => :rhel_7,
|
|
|
|
"Red Hat Enterprise Linux release 7" => :rhel_7,
|
|
|
|
"Scientific Linux release 7" => :rhel_7,
|
2016-06-12 13:51:55 +00:00
|
|
|
"CloudLinux release 7.2 (Valeri Kubasov)" => :rhel_7,
|
2016-06-05 23:10:19 +00:00
|
|
|
|
|
|
|
"CentOS" => :rhel,
|
|
|
|
"RHEL 6" => :rhel,
|
|
|
|
"banana" => :rhel,
|
|
|
|
}.each do |str, expected|
|
|
|
|
it "returns #{expected} for #{str}" do
|
|
|
|
comm.stub_command("cat /etc/redhat-release", stdout: str)
|
|
|
|
expect(cap.flavor(machine)).to be(expected)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|