final List<NATTraversalTechnique> natTravListDVCR = new ArrayList<NATTraversalTechnique>();
natTravListDVCR.add(new NATTraversalTechniqueMock("DirectConnection", 3, true));
natTravListDVCR.add(new NATTraversalTechniqueMock("Reversal", 3, true));
final Set<NATTraversalRule> expectedResult = new HashSet<NATTraversalRule>();
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT), natTravListDVCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT), natTravListDVCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_DEPENDENT, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT), natTravListDV));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_AND_PORT_DEPENDENT, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT), natTravListDV));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.DONT_CARE,
NATFeatureRealization.DONT_CARE, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT), natTravListDV));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT, NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED), natTravListDVCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_DEPENDENT, NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED), natTravListDV));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_AND_PORT_DEPENDENT, NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED), natTravListDV));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.CONNECTION_DEPENDENT,
NATFeatureRealization.CONNECTION_DEPENDENT, NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED), natTravListDV));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_DEPENDENT), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_AND_PORT_DEPENDENT), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT, NATFeatureRealization.CONNECTION_DEPENDENT,
NATFeatureRealization.CONNECTION_DEPENDENT), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_DEPENDENT), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED, NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ADDRESS_AND_PORT_DEPENDENT), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED, NATFeatureRealization.CONNECTION_DEPENDENT,
NATFeatureRealization.CONNECTION_DEPENDENT), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.ENDPOINT_INDEPENDENT,
NATFeatureRealization.ENDPOINT_INDEPENDENT, NATFeatureRealization.DONT_CARE,
NATFeatureRealization.DONT_CARE), natTravListCR));
expectedResult.add(new NATTraversalRule(new NATSituation(NATFeatureRealization.NOT_REALIZED,
NATFeatureRealization.NOT_REALIZED, NATFeatureRealization.DONT_CARE, NATFeatureRealization.DONT_CARE),
natTravListCR));
Set<NATTraversalRule> actualResult = this.registry.getRulesForDecisionTreeLearning();