Ver código fonte

Fixed bug in checking of upper cardinalities, found with test

Yentl Van Tendeloo 9 anos atrás
pai
commit
f0c47aa451
1 arquivos alterados com 2 adições e 2 exclusões
  1. 2 2
      bootstrap/conformance_scd.alc

+ 2 - 2
bootstrap/conformance_scd.alc

@@ -179,7 +179,7 @@ String function conformance_scd(model : Element):
 							return "Lower cardinality violation for outgoing edge at " + model_name
 					if (dict_in(cardinalities[check_type], "tuc")):
 						// An upper cardinality was defined at the target
-						if (integer_gt(cardinalities[check_type]["tuc"], instances)):
+						if (integer_lt(cardinalities[check_type]["tuc"], instances)):
 							return "Upper cardinality violation for outgoing edge at " + model_name
 
 			// Identical, but for outgoing, and thus for A in the figure
@@ -197,7 +197,7 @@ String function conformance_scd(model : Element):
 							return "Lower cardinality violation for incoming edge at " + model_name
 					if (dict_in(cardinalities[check_type], "suc")):
 						// An upper cardinality was defined at the source
-						if (integer_gt(cardinalities[check_type]["suc"], instances)):
+						if (integer_lt(cardinalities[check_type]["suc"], instances)):
 							return "Upper cardinality violation for incoming edge at " + model_name
 
 	// Check multiplicities, if they are defined (optional)