root/test/server_test.rb @ 2080b2eb
eda861b3 | Ohad Levy | require 'test_helper'
|
|
eb305390 | Ohad Levy | require "proxy/dhcp"
|
|
class DHCPServerTest < Test::Unit::TestCase
|
|||
def setup
|
|||
@server = Proxy::DHCP::Server.new("testcase")
|
|||
@subnet = Proxy::DHCP::Subnet.new(@server, "192.168.0.0", "255.255.255.0")
|
|||
2080b2eb | Greg Sutcliffe | @subnet.load
|
|
681b123f | Ohad Levy | @record = Proxy::DHCP::Record.new(:subnet => @subnet, :ip => "192.168.0.11", :mac => "aa:bb:cc:dd:ee:ff")
|
|
eb305390 | Ohad Levy | end
|
|
def test_should_provide_subnets
|
|||
assert_respond_to @server, :subnets
|
|||
end
|
|||
def test_should_add_subnet
|
|||
counter = @server.subnets.size
|
|||
Proxy::DHCP::Subnet.new(@server, "192.168.1.0", "255.255.255.0")
|
|||
assert_equal counter+1, @server.subnets.size
|
|||
end
|
|||
def test_should_not_add_duplicate_subnets
|
|||
assert_raise Proxy::DHCP::Error do
|
|||
Proxy::DHCP::Subnet.new(@server, "192.168.0.0", "255.255.255.0")
|
|||
end
|
|||
end
|
|||
def test_should_find_subnet_based_on_network
|
|||
assert_equal @subnet, @server.find_subnet("192.168.0.0")
|
|||
end
|
|||
def test_should_find_subnet_based_on_dhcp_record
|
|||
assert_equal @subnet, @server.find_subnet(@record)
|
|||
end
|
|||
def test_should_find_subnet_based_on_ipaddr
|
|||
ip = IPAddr.new "192.168.0.11"
|
|||
assert_equal @subnet, @server.find_subnet(ip)
|
|||
end
|
|||
def test_should_find_record_based_on_ip
|
|||
assert_equal @record, @server.find_record("192.168.0.11")
|
|||
end
|
|||
def test_should_find_record_based_on_dhcp_record
|
|||
assert_equal @record, @server.find_record(@record)
|
|||
end
|
|||
def test_should_find_record_based_on_ipaddr
|
|||
ip = IPAddr.new "192.168.0.11"
|
|||
assert_equal @record, @server.find_record(ip)
|
|||
end
|
|||
def test_should_retrun_nil_when_no_subnet
|
|||
subnet = @server.find_subnet IPAddr.new("1.20.76.0")
|
|||
assert_nil subnet
|
|||
end
|
|||
def test_should_have_a_name
|
|||
assert !@server.name.nil?
|
|||
end
|
|||
end
|