Test overriding ports works properly
This commit is contained in:
parent
29eb419c86
commit
d430d62941
|
@ -20,25 +20,7 @@ describe "vagrant port forwarding" do
|
||||||
env.execute("vagrant", "box", "add", "base", box_path("default")).should succeed
|
env.execute("vagrant", "box", "add", "base", box_path("default")).should succeed
|
||||||
end
|
end
|
||||||
|
|
||||||
it "forwards ports properly" do
|
def assert_port_forwarded_properly(guest_port, host_port)
|
||||||
initialize_environment
|
|
||||||
|
|
||||||
guest_port = 3000
|
|
||||||
host_port = 5000
|
|
||||||
|
|
||||||
environment.workdir.join("Vagrantfile").open("w+") do |f|
|
|
||||||
f.puts(<<VFILE)
|
|
||||||
Vagrant::Config.run do |config|
|
|
||||||
config.vm.box = "base"
|
|
||||||
config.vm.forward_port #{guest_port}, #{host_port}
|
|
||||||
end
|
|
||||||
VFILE
|
|
||||||
end
|
|
||||||
|
|
||||||
assert_execute("vagrant", "up")
|
|
||||||
|
|
||||||
thr = nil
|
|
||||||
begin
|
|
||||||
# Start up a web server in another thread by SSHing into the VM.
|
# Start up a web server in another thread by SSHing into the VM.
|
||||||
thr = Thread.new do
|
thr = Thread.new do
|
||||||
assert_execute("vagrant", "ssh", "-c", "python -m SimpleHTTPServer #{guest_port}")
|
assert_execute("vagrant", "ssh", "-c", "python -m SimpleHTTPServer #{guest_port}")
|
||||||
|
@ -55,6 +37,44 @@ VFILE
|
||||||
# The server needs to die. This is how.
|
# The server needs to die. This is how.
|
||||||
thr.kill if thr
|
thr.kill if thr
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "forwards ports properly" do
|
||||||
|
initialize_environment
|
||||||
|
|
||||||
|
guest_port = 3000
|
||||||
|
host_port = 5000
|
||||||
|
|
||||||
|
environment.workdir.join("Vagrantfile").open("w+") do |f|
|
||||||
|
f.puts(<<VFILE)
|
||||||
|
Vagrant::Config.run do |config|
|
||||||
|
config.vm.box = "base"
|
||||||
|
config.vm.forward_port #{guest_port}, #{host_port}
|
||||||
|
end
|
||||||
|
VFILE
|
||||||
|
end
|
||||||
|
|
||||||
|
assert_execute("vagrant", "up")
|
||||||
|
assert_port_forwarded_properly(guest_port, host_port)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "properly overrides port forwarding from the same port" do
|
||||||
|
initialize_environment
|
||||||
|
|
||||||
|
guest_port = 3000
|
||||||
|
host_port = 5000
|
||||||
|
|
||||||
|
environment.workdir.join("Vagrantfile").open("w+") do |f|
|
||||||
|
f.puts(<<VFILE)
|
||||||
|
Vagrant::Config.run do |config|
|
||||||
|
config.vm.box = "base"
|
||||||
|
config.vm.forward_port #{guest_port}, #{host_port - 1}
|
||||||
|
config.vm.forward_port #{guest_port}, #{host_port}
|
||||||
|
end
|
||||||
|
VFILE
|
||||||
|
end
|
||||||
|
|
||||||
|
assert_execute("vagrant", "up")
|
||||||
|
assert_port_forwarded_properly(guest_port, host_port)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "detects and corrects port collisions" do
|
it "detects and corrects port collisions" do
|
||||||
|
|
Loading…
Reference in New Issue