142 lines
4.0 KiB
Ruby
142 lines
4.0 KiB
Ruby
require_relative "../../../base"
|
|
|
|
require "vagrant/util/template_renderer"
|
|
|
|
describe "templates/guests/funtoo/network_static" do
|
|
let(:template) { "guests/funtoo/network_static" }
|
|
|
|
it "renders the template" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the gateway" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
gateway: "1.2.3.4",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
gateway='1.2.3.4'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the nameservers" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
nameservers: "ns1.company.com",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
nameservers='ns1.company.com'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the domain" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
domain: "company.com",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
domain='company.com'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the route" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
route: "5.6.7.8",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
route='5.6.7.8'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the gateway6" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
gateway6: "aaaa:0000",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
gateway6='aaaa:0000'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the route6" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
route6: "bbbb:1111",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
route6='bbbb:1111'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
|
|
it "includes the mtu" do
|
|
result = Vagrant::Util::TemplateRenderer.render(template, options: {
|
|
device: "en0",
|
|
ip: "1.1.1.1",
|
|
netmask: "255.255.0.0",
|
|
mtu: "1",
|
|
})
|
|
expect(result).to eq <<-EOH.gsub(/^ {6}/, "")
|
|
#VAGRANT-BEGIN
|
|
# The contents below are automatically generated by Vagrant. Do not modify.
|
|
template='interface'
|
|
ipaddr='1.1.1.1/255.255.0.0'
|
|
mtu='1'
|
|
#VAGRANT-END
|
|
EOH
|
|
end
|
|
end
|