use of org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.nx.action.learn.grouping.nx.learn.FlowMods in project genius by opendaylight.
the class ActionLearnTest method verifyAction.
private void verifyAction(Action action) {
assertTrue(action.getAction() instanceof NxActionLearnNodesNodeTableFlowApplyActionsCase);
NxActionLearnNodesNodeTableFlowApplyActionsCase nxAction = (NxActionLearnNodesNodeTableFlowApplyActionsCase) action.getAction();
NxLearn nxLearn = nxAction.getNxLearn();
assertEquals(IDLE_TIMEOUT, nxLearn.getIdleTimeout().intValue());
assertEquals(HARD_TIMEOUT, nxLearn.getHardTimeout().intValue());
assertEquals(PRIORITY, nxLearn.getPriority().intValue());
assertEquals(COOKIE, nxLearn.getCookie());
assertEquals(FLAGS, nxLearn.getFlags().intValue());
assertEquals(TABLE_ID, nxLearn.getTableId().shortValue());
assertEquals(FIN_IDLE_TIMEOUT, nxLearn.getFinIdleTimeout().intValue());
assertEquals(FIN_HARD_TIMEOUT, nxLearn.getFinHardTimeout().intValue());
assertEquals(5, nxLearn.getFlowMods().size());
int nbChecked = 0;
for (FlowMods flowMods : nxLearn.getFlowMods()) {
if (flowMods.getFlowModSpec() instanceof FlowModAddMatchFromFieldCase) {
FlowModAddMatchFromFieldCase flowModAddMatchFromFieldCase = (FlowModAddMatchFromFieldCase) flowMods.getFlowModSpec();
FlowModAddMatchFromField flowModAddMatchFromField = flowModAddMatchFromFieldCase.getFlowModAddMatchFromField();
assertEquals(0, flowModAddMatchFromField.getSrcOfs().intValue());
assertEquals(1, flowModAddMatchFromField.getSrcField().longValue());
assertEquals(0, flowModAddMatchFromField.getDstOfs().intValue());
assertEquals(2, flowModAddMatchFromField.getDstField().longValue());
assertEquals(3, flowModAddMatchFromField.getFlowModNumBits().intValue());
nbChecked++;
} else if (flowMods.getFlowModSpec() instanceof FlowModAddMatchFromValueCase) {
FlowModAddMatchFromValueCase flowModAddMatchFromValueCase = (FlowModAddMatchFromValueCase) flowMods.getFlowModSpec();
FlowModAddMatchFromValue flowModAddMatchFromValue = flowModAddMatchFromValueCase.getFlowModAddMatchFromValue();
assertEquals(4, flowModAddMatchFromValue.getValue().intValue());
assertEquals(0, flowModAddMatchFromValue.getSrcOfs().intValue());
assertEquals(5, flowModAddMatchFromValue.getSrcField().longValue());
assertEquals(6, flowModAddMatchFromValue.getFlowModNumBits().intValue());
nbChecked++;
} else if (flowMods.getFlowModSpec() instanceof FlowModCopyFieldIntoFieldCase) {
FlowModCopyFieldIntoFieldCase flowModCopyFieldIntoFieldCase = (FlowModCopyFieldIntoFieldCase) flowMods.getFlowModSpec();
FlowModCopyFieldIntoField flowModCopyFieldIntoField = flowModCopyFieldIntoFieldCase.getFlowModCopyFieldIntoField();
assertEquals(0, flowModCopyFieldIntoField.getSrcOfs().intValue());
assertEquals(7, flowModCopyFieldIntoField.getSrcField().longValue());
assertEquals(0, flowModCopyFieldIntoField.getDstOfs().intValue());
assertEquals(8, flowModCopyFieldIntoField.getDstField().longValue());
assertEquals(9, flowModCopyFieldIntoField.getFlowModNumBits().intValue());
nbChecked++;
} else if (flowMods.getFlowModSpec() instanceof FlowModCopyValueIntoFieldCase) {
FlowModCopyValueIntoFieldCase flowModCopyValueIntoFieldCase = (FlowModCopyValueIntoFieldCase) flowMods.getFlowModSpec();
FlowModCopyValueIntoField flowModCopyValueIntoField = flowModCopyValueIntoFieldCase.getFlowModCopyValueIntoField();
assertEquals(10, flowModCopyValueIntoField.getValue().intValue());
assertEquals(0, flowModCopyValueIntoField.getDstOfs().intValue());
assertEquals(11, flowModCopyValueIntoField.getDstField().longValue());
assertEquals(12, flowModCopyValueIntoField.getFlowModNumBits().intValue());
nbChecked++;
} else if (flowMods.getFlowModSpec() instanceof FlowModOutputToPortCase) {
FlowModOutputToPortCase flowModOutputToPortCase = (FlowModOutputToPortCase) flowMods.getFlowModSpec();
FlowModOutputToPort flowModCopyFieldIntoField = flowModOutputToPortCase.getFlowModOutputToPort();
assertEquals(0, flowModCopyFieldIntoField.getSrcOfs().intValue());
assertEquals(13, flowModCopyFieldIntoField.getSrcField().longValue());
assertEquals(14, flowModCopyFieldIntoField.getFlowModNumBits().intValue());
nbChecked++;
}
}
assertEquals(5, nbChecked);
}
Aggregations