From 7dfd2832db7d8b0962ce513eb2d7cd9e7f812caa Mon Sep 17 00:00:00 2001
From: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org>
Date: Wed, 21 Jun 2023 09:36:48 +0200
Subject: [PATCH] Use of f_compareURIs instead of match as CSE can modify
 resource identifiers format

---
 LibOneM2M/OneM2M_Functions.ttcn     |  2 +-
 OneM2M_Testcases_CSE_Release_1.ttcn | 18 +++++++++---------
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 4036355..152744b 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -1439,7 +1439,7 @@ module OneM2M_Functions {
 							}
 						} else if (p_resourceType == int9) {
 							//Check that group members are correctly in the group
-							if(not(match(v_request.primitiveContent.group_.memberIDs, vc_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs))) {
+							if(lengthof(v_request.primitiveContent.group_.memberIDs) != vc_response.primitive.responsePrimitive.primitiveContent.group_.currentNrOfMembers) {
 								setverdict(inconc, __SCOPE__&":INFO: Wrong number of members in group");
 							}
 						}
diff --git a/OneM2M_Testcases_CSE_Release_1.ttcn b/OneM2M_Testcases_CSE_Release_1.ttcn
index dad61da..19fb24a 100644
--- a/OneM2M_Testcases_CSE_Release_1.ttcn
+++ b/OneM2M_Testcases_CSE_Release_1.ttcn
@@ -9216,7 +9216,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 						v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_aeIndex);
 						if(getverdict == pass){ 
 							if(ischosen(v_primitiveContentRetrievedResource.aE)) {
-								 if(not match (f_resourceIdCleaner(v_primitiveContentRetrievedResource.aE.accessControlPolicyIDs[0]), v_updateRequest.primitiveContent.aE.accessControlPolicyIDs[0])){
+								 if(not f_compareURIs(v_acpIndex2, v_primitiveContentRetrievedResource.aE.accessControlPolicyIDs[0])){
 									  setverdict(fail, __SCOPE__ & ": Error: Access Control policy ID attribute not updated correctly");
 							}
 						  }
@@ -10833,11 +10833,11 @@ module OneM2M_Testcases_CSE_Release_1 {
 							tc_ac.stop;
 							setverdict(pass, __SCOPE__ & ": Resource created successfully");
 						
-							if(not match({v_memberID}, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){
-								setverdict(fail, __SCOPE__ & ": Error, presence of duplicate member IDs ");
-							}
 							if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 1) {
 							   setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute");      
+							}
+							if(not f_compareURIs(v_containerIndex, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0])){
+								setverdict(fail, __SCOPE__ & ": Error, presence of duplicate member IDs ");
 							} 
 						}
 						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
@@ -11060,7 +11060,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 								setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not provided");
 							} 
 							else {
-								if(not match({f_getResourceAddress(v_containerIndex)}, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){
+								if(not f_compareURIs(v_containerIndex, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0])){
 									setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not correct");
 								}
 							}
@@ -11412,7 +11412,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 								if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 1) {
 								   setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute");      
 								}                               
-								if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0] != v_memberId_2){
+								if(not(f_compareURIs(v_containerIndex_2, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0]))){
 									setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not correct");
 								}
 							}
@@ -11435,7 +11435,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					 v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					 if(getverdict == pass){ 
 						 if(ischosen(v_primitiveContentRetrievedResource.group_)){
-							if(v_primitiveContentRetrievedResource.group_.memberIDs[0] != v_memberId_2){
+							if(not(f_compareURIs(v_containerIndex_2, v_primitiveContentRetrievedResource.group_.memberIDs[0]))){
 								setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not updated");
 							}
 						  }
@@ -11715,7 +11715,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 								if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 1) {
 								   setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute");      
 								}                               
-								if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0] != v_memberId_1){
+								if(not(f_compareURIs(v_containerIndex, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0]))){
 									setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not correct");
 								}
 							}                                   
@@ -11742,7 +11742,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 								setverdict(fail, __SCOPE__ & ": Error,  memberTypeValidated attribute not updated");
 							}
 		
-							if(v_primitiveContentRetrievedResource.group_.memberIDs[0] != v_memberId_1){
+							if(not(f_compareURIs(v_containerIndex, v_primitiveContentRetrievedResource.group_.memberIDs[0]))){
 								setverdict(fail, __SCOPE__ & ": Error,  memberIDs attribute not correct");
 							}
 						  }
-- 
GitLab