commit dd415c31d8a0d57fbe4a3ab721e2a95d7afa4495 (HEAD, origin/onos-1.3, onos-1.3)
Author: Jonathan Hart [jono@onlab.us]
AuthorDate: Mon Nov 16 10:56:20 2015 -0800
Commit: Jonathan Hart [jono@onlab.us]
CommitDate: Mon Nov 16 14:14:24 2015 -0800
Protect against exceptions thrown in application's packet processors.
Case 1: Setting up test environment - PASS
Setup the test environment including installing ONOS, starting Mininet and ONOScli sessions.
- 	1.1 Create cell file - No Result  
- 	1.2 Applying cell variable to environment - No Result  
- 	1.3 Starting Mininet - PASS  
- 	1.4 Git checkout and pull master - No Result  
- 	1.5 Using mvn clean install - PASS  
- 	1.6 Creating ONOS package - PASS  
- 	1.7 Installing ONOS package - PASS  
- 	1.8 Checking if ONOS is up yet - PASS  
- 	1.9 App Ids check - PASS  
Case 2: Assigning devices to controllers - PASS
Assign switches to ONOS using 'ovs-vsctl' and check that an ONOS node becomes the master of the device.
- 	2.1 Assign switches to controllers - PASS  
Case 8: Compare ONOS Topology view to Mininet topology - PASS
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - PASS  
- 	8.8 Device information is correct - PASS  
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 21: Assigning Controller roles for switches - PASS
Check that ONOS is connected to each device. Then manually assign mastership to specific ONOS nodes using 'device-role'
- 	21.1 Assign mastership of switches to specific controllers - PASS  
- 	21.2 Check mastership was correctly assigned - PASS  
Case 8: Compare ONOS Topology view to Mininet topology - PASS
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - PASS  
- 	8.8 Device information is correct - PASS  
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 3: Adding host Intents - PASS
Discover hosts by using pingall then assign predetermined host-to-host intents. After installation, check that the intent is distributed to all nodes and the state is INSTALLED
- 	3.1 Install reactive forwarding app - PASS  
- 	3.2 Check app ids - PASS  
- 	3.3 Discovering Hosts( Via pingall for now ) - PASS  
- 	3.4 Uninstall reactive forwarding app - PASS  
- 	3.5 Check app ids - PASS  
- 	3.6 Add host intents via cli - PASS  
- 	3.7 Intent Anti-Entropy dispersion - PASS  
Case 4: Verify connectivity by sendind traffic across Intents - PASS
Ping across added host intents to check functionality and check the state of the intent
- 	4.1 Ping across added host intents - PASS  
- 	4.2 Check Intent state - PASS  
- 	4.3 Check leadership of topics - PASS  
- 	4.4 Wait a minute then ping again - PASS  
Case 5: Setting up and gathering data for current state - PASS
- 	5.1 Check that each switch has a master - PASS  
- 	5.2 Get the Mastership of each switch from each controller - PASS  
- 	5.3 Check for consistency in roles from each controller - PASS  
- 	5.4 Get the intents from each controller - PASS  
- 	5.5 Check for consistency in Intents from each controller - PASS  
- 	5.6 Get the flows from each controller - PASS  
- 	5.7 Check for consistency in Flows from each controller - PASS  
- 	5.8 Get the OF Table entries - No Result  
- 	5.9 Start continuous pings - No Result  
- 	5.10 Collecting topology information from ONOS - No Result  
- 	5.11 Host view is consistent across ONOS nodes - PASS  
- 	5.12 Each host has an IP address - PASS  
- 	5.13 Cluster view is consistent across ONOS nodes - PASS  
- 	5.14 Cluster view correct across ONOS nodes - PASS  
- 	5.15 Comparing ONOS topology to MN - PASS  
- 	5.16 Device information is correct - PASS  
- 	5.17 Links are correct - PASS  
- 	5.18 Hosts are correct - PASS  
Case 14: Start Leadership Election app - PASS
- 	14.1 Install leadership election app - PASS  
- 	14.2 Run for election on each node - PASS  
- 	14.3 Check that each node shows the same leader - PASS  
Case 16: Install Primitives app - PASS
- 	16.1 Install Primitives app - PASS  
Case 17: Check for basic functionality with distributed primitives - PASS
Test the methods of the distributed primitives (counters and sets) throught the cli
- 	17.1 Increment then get a default counter on each node - PASS  
- 	17.2 Get then Increment a default counter on each node - PASS  
- 	17.3 Counters we added have the correct values - PASS  
- 	17.4 Add -8 to then get a default counter on each node - PASS  
- 	17.5 Add 5 to then get a default counter on each node - PASS  
- 	17.6 Get then add 5 to a default counter on each node - PASS  
- 	17.7 Counters we added have the correct values - PASS  
- 	17.8 Increment and get an in-memory counter on each node - PASS  
- 	17.9 Get then Increment a in-memory counter on each node - PASS  
- 	17.10 Counters we added have the correct values - PASS  
- 	17.11 Add -8 to then get a in-memory counter on each node - PASS  
- 	17.12 Add 5 to then get a in-memory counter on each node - PASS  
- 	17.13 Get then add 5 to a in-memory counter on each node - PASS  
- 	17.14 Counters we added have the correct values - PASS  
- 	17.15 Check counters are consistant across nodes - PASS  
- 	17.16 Counters we added have the correct values - PASS  
- 	17.17 Distributed Set get - PASS  
- 	17.18 Distributed Set size - PASS  
- 	17.19 Distributed Set add() - PASS  
- 	17.20 Distributed Set addAll() - PASS  
- 	17.21 Distributed Set contains() - PASS  
- 	17.22 Distributed Set containsAll() - PASS  
- 	17.23 Distributed Set remove() - PASS  
- 	17.24 Distributed Set removeAll() - PASS  
- 	17.25 Distributed Set addAll() - PASS  
- 	17.26 Distributed Set clear() - PASS  
- 	17.27 Distributed Set addAll() - PASS  
- 	17.28 Distributed Set retain() - PASS  
- 	17.29 Partitioned Transactional maps put - PASS  
- 	17.30 Partitioned Transactional maps get - PASS  
- 	17.31 In-memory Transactional maps put - PASS  
- 	17.32 In-Memory Transactional maps get - PASS  
Case 6: Wait 60 seconds instead of inducing a failure - PASS
Case 8: Compare ONOS Topology view to Mininet topology - PASS
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - PASS  
- 	8.8 Device information is correct - PASS  
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 7: Running ONOS Constant State Tests - PASS
- 	7.1 Check that each switch has a master - PASS  
- 	7.2 Read device roles from ONOS - PASS  
- 	7.3 Check for consistency in roles from each controller - PASS  
- 	7.4 Compare switch roles from before failure - PASS  
- 	7.5 Get the intents and compare across all nodes - PASS  
- 	7.6 Check for consistency in Intents from each controller - PASS  
- 	7.7 Compare current intents with intents before the failure - PASS  
- 	7.8 Get the OF Table entries and compare to before component failure - PASS  
- 	7.9 Leadership Election is still functional - PASS  
Case 4: Verify connectivity by sendind traffic across Intents - PASS
Ping across added host intents to check functionality and check the state of the intent
- 	4.1 Ping across added host intents - PASS  
- 	4.2 Check Intent state - PASS  
- 	4.3 Check leadership of topics - PASS  
- 	4.4 Wait a minute then ping again - PASS  
Case 15: Check that Leadership Election App is still functional - PASS
- 	15.1 Run for election on each node - PASS  
- 	15.2 Check that each node shows the same leader and candidates - PASS  
- 	15.3 Find current leader and withdraw - PASS  
- 	15.4 Check that a new node was elected leader - PASS  
- 	15.5 Check that that new leader was the candidate of old leader - PASS  
- 	15.6 Run for election on old leader( just so everyone is in the hat ) - PASS  
- 	15.7 Check that oldLeader is a candidate, and leader if only 1 node - PASS  
Case 17: Check for basic functionality with distributed primitives - PASS
Test the methods of the distributed primitives (counters and sets) throught the cli
- 	17.1 Increment then get a default counter on each node - PASS  
- 	17.2 Get then Increment a default counter on each node - PASS  
- 	17.3 Counters we added have the correct values - PASS  
- 	17.4 Add -8 to then get a default counter on each node - PASS  
- 	17.5 Add 5 to then get a default counter on each node - PASS  
- 	17.6 Get then add 5 to a default counter on each node - PASS  
- 	17.7 Counters we added have the correct values - PASS  
- 	17.8 Increment and get an in-memory counter on each node - PASS  
- 	17.9 Get then Increment a in-memory counter on each node - PASS  
- 	17.10 Counters we added have the correct values - PASS  
- 	17.11 Add -8 to then get a in-memory counter on each node - PASS  
- 	17.12 Add 5 to then get a in-memory counter on each node - PASS  
- 	17.13 Get then add 5 to a in-memory counter on each node - PASS  
- 	17.14 Counters we added have the correct values - PASS  
- 	17.15 Check counters are consistant across nodes - PASS  
- 	17.16 Counters we added have the correct values - PASS  
- 	17.17 Distributed Set get - PASS  
- 	17.18 Distributed Set size - PASS  
- 	17.19 Distributed Set add() - PASS  
- 	17.20 Distributed Set addAll() - PASS  
- 	17.21 Distributed Set contains() - PASS  
- 	17.22 Distributed Set containsAll() - PASS  
- 	17.23 Distributed Set remove() - PASS  
- 	17.24 Distributed Set removeAll() - PASS  
- 	17.25 Distributed Set addAll() - PASS  
- 	17.26 Distributed Set clear() - PASS  
- 	17.27 Distributed Set addAll() - PASS  
- 	17.28 Distributed Set retain() - PASS  
- 	17.29 Partitioned Transactional maps put - PASS  
- 	17.30 Partitioned Transactional maps get - PASS  
- 	17.31 In-memory Transactional maps put - PASS  
- 	17.32 In-Memory Transactional maps get - PASS  
Case 9: Turn off a link to ensure that Link Discovery is working properly - PASS
- 	9.1 Kill Link between s3 and s28 - PASS  
Case 8: Compare ONOS Topology view to Mininet topology - PASS
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - PASS  
- 	8.8 Device information is correct - PASS  
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 4: Verify connectivity by sendind traffic across Intents - PASS
Ping across added host intents to check functionality and check the state of the intent
- 	4.1 Ping across added host intents - PASS  
- 	4.2 Check Intent state - PASS  
- 	4.3 Check leadership of topics - PASS  
- 	4.4 Wait a minute then ping again - PASS  
Case 10: Restore a link to ensure that Link Discovery is working properly - PASS
- 	10.1 Bring link between s3 and s28 back up - PASS  
Case 8: Compare ONOS Topology view to Mininet topology - PASS
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - PASS  
- 	8.8 Device information is correct - PASS  
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 4: Verify connectivity by sendind traffic across Intents - PASS
Ping across added host intents to check functionality and check the state of the intent
- 	4.1 Ping across added host intents - PASS  
- 	4.2 Check Intent state - PASS  
- 	4.3 Check leadership of topics - PASS  
- 	4.4 Wait a minute then ping again - PASS  
Case 11: Killing a switch to ensure it is discovered correctly - FAIL
- 	11.1 Kill s5 - FAIL  
- Failed to kill switch?
Case 8: Compare ONOS Topology view to Mininet topology - FAIL
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - FAIL  
- ONOS shows 2 SCCs
- 	8.8 Device information is correct - FAIL  
- Device information is incorrect
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 4: Verify connectivity by sendind traffic across Intents - PASS
Ping across added host intents to check functionality and check the state of the intent
- 	4.1 Ping across added host intents - PASS  
- 	4.2 Check Intent state - PASS  
- 	4.3 Check leadership of topics - PASS  
- 	4.4 Wait a minute then ping again - PASS  
Case 12: Adding a switch to ensure it is discovered correctly - PASS
- 	12.1 Add back s5 - PASS  
Case 8: Compare ONOS Topology view to Mininet topology - PASS
Compare topology objects between Mininet and ONOS
- 	8.1 Comparing ONOS topology to MN - No Result  
- 	8.2 Collecting topology information from ONOS - PASS  
- 	8.3 Hosts view is consistent across all ONOS nodes - PASS  
- 	8.4 Hosts information is correct - PASS  
- 	8.5 Host attachment points to the network - PASS  
- 	8.6 Clusters view is consistent across all ONOS nodes - PASS  
- 	8.7 There is only one SCC - PASS  
- 	8.8 Device information is correct - PASS  
- 	8.9 Links are correct - PASS  
- 	8.10 Hosts are correct - PASS  
- 	8.11 Checking ONOS nodes - PASS  
Case 4: Verify connectivity by sendind traffic across Intents - PASS
Ping across added host intents to check functionality and check the state of the intent
- 	4.1 Ping across added host intents - PASS  
- 	4.2 Check Intent state - PASS  
- 	4.3 Check leadership of topics - PASS  
- 	4.4 Wait a minute then ping again - PASS  
Case 13: Test Cleanup - PASS
- 	13.1 Killing tcpdumps - No Result  
- 	13.2 Stopping Mininet - PASS  
- 	13.3 Checking ONOS Logs for errors - No Result  
