Search in sources :

Example 6 with VirtualGroupProviderService

use of org.onosproject.incubator.net.virtual.provider.VirtualGroupProviderService in project onos by opennetworkinglab.

the class VirtualNetworkGroupManagerTest method testAuditWithExtraneousMissingGroups.

// Test AUDIT process with extraneous groups and missing groups
private void testAuditWithExtraneousMissingGroups(NetworkId networkId, DeviceId deviceId) {
    VirtualNetworkGroupManager groupManager;
    VirtualGroupProviderService providerService;
    if (networkId.id() == 1) {
        groupManager = groupManager1;
        providerService = providerService1;
    } else {
        groupManager = groupManager2;
        providerService = providerService2;
    }
    PortNumber[] ports1 = { PortNumber.portNumber(31), PortNumber.portNumber(32) };
    PortNumber[] ports2 = { PortNumber.portNumber(41), PortNumber.portNumber(42) };
    GroupId gId1 = new GroupId(1);
    Group group1 = createSouthboundGroupEntry(gId1, Arrays.asList(ports1), 0, deviceId);
    GroupId gId2 = new GroupId(2);
    Group group2 = createSouthboundGroupEntry(gId2, Arrays.asList(ports2), 0, deviceId);
    List<Group> groupEntries = Arrays.asList(group1, group2);
    providerService.pushGroupMetrics(deviceId, groupEntries);
    GroupKey key = new DefaultGroupKey("group1BeforeAudit".getBytes());
    Group createdGroup = groupManager.getGroup(deviceId, key);
    List<GroupOperation> expectedGroupOps = Arrays.asList(GroupOperation.createDeleteGroupOperation(gId1, Group.Type.SELECT), GroupOperation.createDeleteGroupOperation(gId2, Group.Type.SELECT), GroupOperation.createAddGroupOperation(createdGroup.id(), Group.Type.SELECT, createdGroup.buckets()));
    if (deviceId.equals(VDID1)) {
        provider.validate(networkId, deviceId, expectedGroupOps);
    }
}
Also used : VirtualGroupProviderService(org.onosproject.incubator.net.virtual.provider.VirtualGroupProviderService) DefaultGroup(org.onosproject.net.group.DefaultGroup) Group(org.onosproject.net.group.Group) GroupKey(org.onosproject.net.group.GroupKey) DefaultGroupKey(org.onosproject.net.group.DefaultGroupKey) DefaultGroupKey(org.onosproject.net.group.DefaultGroupKey) PortNumber(org.onosproject.net.PortNumber) GroupOperation(org.onosproject.net.group.GroupOperation) GroupId(org.onosproject.core.GroupId)

Aggregations

VirtualGroupProviderService (org.onosproject.incubator.net.virtual.provider.VirtualGroupProviderService)6 DefaultGroup (org.onosproject.net.group.DefaultGroup)6 DefaultGroupKey (org.onosproject.net.group.DefaultGroupKey)6 Group (org.onosproject.net.group.Group)6 GroupKey (org.onosproject.net.group.GroupKey)6 GroupOperation (org.onosproject.net.group.GroupOperation)5 PortNumber (org.onosproject.net.PortNumber)4 ArrayList (java.util.ArrayList)2 GroupId (org.onosproject.core.GroupId)2 DefaultTrafficTreatment (org.onosproject.net.flow.DefaultTrafficTreatment)2 TrafficTreatment (org.onosproject.net.flow.TrafficTreatment)2 DefaultGroupBucket (org.onosproject.net.group.DefaultGroupBucket)2 GroupBucket (org.onosproject.net.group.GroupBucket)2 GroupBuckets (org.onosproject.net.group.GroupBuckets)2