Minor changes to give more consistent output; no functional changes to tests. Change-Id: I6c4ef74587c59b786761735c7bd528f3d7f94905
		
			
				
	
	
		
			93 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# Tests for DevStack functions
 | 
						|
# address_in_net()
 | 
						|
 | 
						|
TOP=$(cd $(dirname "$0")/.. && pwd)
 | 
						|
 | 
						|
# Import common functions
 | 
						|
source $TOP/functions
 | 
						|
 | 
						|
source $TOP/tests/unittest.sh
 | 
						|
 | 
						|
echo "Testing IP addr functions"
 | 
						|
 | 
						|
function test_cidr2netmask {
 | 
						|
    local mask=0
 | 
						|
    local ips="128 192 224 240 248 252 254 255"
 | 
						|
    local ip
 | 
						|
    local msg
 | 
						|
 | 
						|
    msg="cidr2netmask(/0) == 0.0.0.0"
 | 
						|
    assert_equal "0.0.0.0" $(cidr2netmask $mask) "$msg"
 | 
						|
 | 
						|
    for ip in $ips; do
 | 
						|
        mask=$(( mask + 1 ))
 | 
						|
        msg="cidr2netmask(/$mask) == $ip.0.0.0"
 | 
						|
        assert_equal "$ip.0.0.0" $(cidr2netmask $mask) "$msg"
 | 
						|
    done
 | 
						|
 | 
						|
    for ip in $ips; do
 | 
						|
        mask=$(( mask + 1 ))
 | 
						|
        msg="cidr2netmask(/$mask) == 255.$ip.0.0"
 | 
						|
        assert_equal "255.$ip.0.0" $(cidr2netmask $mask) "$msg"
 | 
						|
    done
 | 
						|
 | 
						|
    for ip in $ips; do
 | 
						|
        mask=$(( mask + 1 ))
 | 
						|
        msg="cidr2netmask(/$mask) == 255.255.$ip.0"
 | 
						|
        assert_equal "255.255.$ip.0" $(cidr2netmask $mask) "$msg"
 | 
						|
    done
 | 
						|
 | 
						|
    for ip in $ips; do
 | 
						|
        mask=$(( mask + 1 ))
 | 
						|
        msg="cidr2netmask(/$mask) == 255.255.255.$ip"
 | 
						|
        assert_equal "255.255.255.$ip" $(cidr2netmask $mask) "$msg"
 | 
						|
    done
 | 
						|
}
 | 
						|
 | 
						|
test_cidr2netmask
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 240.0.0.0) == 160.0.0.0"
 | 
						|
assert_equal $(maskip 169.254.169.254 240.0.0.0) 160.0.0.0 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.0.0.0) == 169.0.0.0"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.0.0.0) 169.0.0.0 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.240.0.0) == 169.240.0.0"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.240.0.0) 169.240.0.0 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.255.0.0) == 169.254.0.0"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.255.0.0) 169.254.0.0 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.255.240.0) == 169.254.160.0"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.255.240.0) 169.254.160.0 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.255.255.0) == 169.254.169.0"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.255.255.0) 169.254.169.0 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.255.255.240) == 169.254.169.240"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.255.255.240) 169.254.169.240 "$msg"
 | 
						|
 | 
						|
msg="maskip(169.254.169.254 255.255.255.255) == 169.254.169.254"
 | 
						|
assert_equal $(maskip 169.254.169.254 255.255.255.255) 169.254.169.254 "$msg"
 | 
						|
 | 
						|
 | 
						|
for mask in 8 12 16 20 24 26 28; do
 | 
						|
    msg="address_in_net($10.10.10.1 10.10.10.0/$mask)"
 | 
						|
    if address_in_net 10.10.10.1 10.10.10.0/$mask; then
 | 
						|
        passed "$msg"
 | 
						|
    else
 | 
						|
        failed "$msg"
 | 
						|
    fi
 | 
						|
 | 
						|
    msg="! address_in_net($10.10.10.1 11.11.11.0/$mask)"
 | 
						|
    if ! address_in_net 10.10.10.1 11.11.11.0/$mask; then
 | 
						|
        passed "$msg"
 | 
						|
    else
 | 
						|
        failed "$msg"
 | 
						|
    fi
 | 
						|
done
 | 
						|
 | 
						|
report_results
 |