The purpose of this test suite is to verify the functionality of the flow subsystem by comparing the flow rule table on the devices to what ONOS has internally.
In order to test the functionality of the flow subsystem, we use the REST API to perform tasks such as adding flows, deleting flows, and changing selectors and treatments. We then check the devices flow table and what ONOS has registered to make sure the tasks have been completed successfully.
The test environment consists of three ONOS instances and a simple five switch, linear topology to test various configurations of the flow subsystem. Each test case will perform a well defined task, such as adding a flow, and will always be followed by a check test case to make sure no errors or anomalies have occurred.