Test ID | Test Case Name | Steps To Be Performed to Test | Verification Steps
| Priority | Testcase Type(SANITY | FUNCTIONAL) | Status on Xen | Comment |
1 | List NAT rules | 1.acquire a public IP 2.enable static Nat and assign to a VM 3.check the create SNAtt rule by calling listPublicipAddress <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="228ec009-b0a9-4e2d-9e9f-f5bb98b04630"><ac:plain-text-body><![CDATA[ [http://localhost:8096/client/api?command=listPublicIpAddresses&listAll=true&page=1&pagesize=20&isstaticnat=true ]]></ac:plain-text-body></ac:structured-macro> ] | Its should list the Static Nat rules | P1 | FUNCTIONAL
| Pass |
2 | Release SnatIP | 1.acquire a public IP 2.enable static Nat and assign to a VM 3.ssh to mapped VM through public IP 4.release Public IP | 1ogin to router and check the iptables for newly created snat rule 2.able to ssh to vm successfully before releasing the IP 3.defined SNAT rules should be deleted after releasing the public IP 4.state of released public IP should be free in the user_ip_addreses table. 5.StaticNat rules should be removed from iptables in the router | P1 | FUNCTIONAL | Pass |
3 | Disbale Snat and enable again to differentVM | 1.acquire a public IP 2.enable static Nat and assign to a VM 3.ssh to mapped VM through public IP 4.disable the SNAT 5. enable SNAT and assig to different VM 6 ssh to VM using the same public IP | 1ogin to router and check the iptables for newly created snat rule 2.able to ssh to vm successfully before releasing the IP 3.defined SNAT rules should be deleted after releasing the public IP | P1 | FUNCTIONAL Pass | Fail(CLOUDSTACK-99) |
4 | reboot the routerVM | 1.acquire a public IP 2.enable static Nat and assign to a VM 3.ssh to mapped VM through public IP 4.reboot the router 5.again ssh to VM aftet router comes from reboot | 1.login to router and check the iptables for newly create snat rule able to ssh to vm successfully before and after rebooting of router vm | P1 | FUNCTIONAL | Pass |
5 | Stop and start the Router VM | 1.acquire a public IP 2.enable static Nat and assign to a VM 3.ssh to mapped VM through public IP 4.stop and start the router 5.again ssh to VM aftet router comes from reboot | 1.login to router and check the iptables for newly create snat rule able to ssh to vm successfully before and after rebooting of router vm | P1 | FUNCTIONAL | Pass |
6 | perform restartNetwrok | 1.acquire a public IP 2.enable static Nat and assign to a VM 3.ssh to mapped VM through public IP 4.destroy the router 5.again ssh to VM aftet router comes from reboot | 1.login to router and check the iptables for newly create snat rule able to ssh to vm successfully before and after rebooting of router vm | p1 | FUNCTIONAL | Pass |
7 | Port forwarding on source Nat | 1. create an account 2. start the first VM, should start the domain router 3. on this domR (which is also the sourceNAT), create a portforwarding rule to forward ssh traffic to the user VM created in step 1. 4. createPortForwardingRule API - protocol = tcp, privateport = 22, publicport = 22, virtualmachineid = id of vm from step 1. | 1. listPortForwarding rules API should return the added PF rule 2. attempt to do an ssh into the user VM through the sourceNAT | P1 | FUNCTIONAL | Pass |
8 | Port Forward on non source NAT | 1. create an account, deploy first VM 2. acquire an IP using - associateIpAddress 3. perform port forwarding on the acquired IP address for SSH traffic using createPortForwardingRule api | 1. listPortForwardingRules should return the added portforward for the correct IP address and with the correct ports 2. attempt to do an ssh into the userVM through the associated IP address | P1 | Functional | Pass |
9 | delete port forward rule
| 1. Delete the above port forward rules using the deletePortForwardRule APi
| 1. listPortForwardingRules should not return the deleted rule anymore 2. attempt to do ssh should now fail
| P1 | Functional | Pass |
10 | createLoadBalancingRule sourceNAT
| 1. create an account, deploy first and second VM 2. create a LB rule using the createLoadBalancingRule API for ssh Load balancing 3. use assignToLoadBalancerRule API to assign first VM and second VM for round robin load balancing
| 1. listLoadBalancerRules should return the added rule 2. attempt to ssh twice on the load balanced IP 3. verify using the hostname of the VM that round robin is indeed happening as expected
| P1 | Fucntioanl | Pass |
11 | Enable the static NAt from UI | 1.Navigate to Network-guestNetwork-ViewIPaddresses-AcquireNewIP 2.select the newly acquired public IP 3.click on "enable static NAT"icon to enable the static NAT 4.provide the port details and map the vm | enable static nat should be successful | P1 | Functional | Fail Pass(CLOUDSTACK-82) |