Skip to content
Snippets Groups Projects
Commit 1859e10f authored by Pramod Kulkarni's avatar Pramod Kulkarni
Browse files

Further improvements to DISCOVERY testcases

parent 28d8e8ff
No related branches found
No related tags found
2 merge requests!25Ae fixes,!15Stf531 discovery test cases
......@@ -868,102 +868,70 @@ module OneM2M_Functions {
} //end f_cse_notifyProcedure
function f_cse_getResourceAddress_IsNonHierarchical(in template PrimitiveContent p_content) runs on CseTester return boolean {
var boolean v_IsNonHierarchical := false;
function f_isNonHierarchical(XSD.ID p_resourceAddress) runs on Tester return boolean {
var integer i;
var integer v_NoOfSlashes:= -1;
var boolean v_CseScope := f_cse_getResourceAddress_IsScopeCseRelative();
var boolean v_SpScope:= f_cse_getResourceAddress_IsScopeSpRelative();
var boolean v_AbsScope:= f_cse_getResourceAddress_IsScopeAbsoluteRelative();
if(v_CseScope and PX_UNSTRUCTURED){
for (i := 0; i < lengthof(p_content.uRIList); i:= i+1){
if(match (p_content.uRIList[i], "/")){
v_NoOfSlashes:= v_NoOfSlashes+1;
}
var integer v_nbOfSlashes:= 0;
for (i := 0; i < lengthof(p_resourceAddress); i:= i+1){
if(match (p_resourceAddress[i], "/")){
v_nbOfSlashes:= v_nbOfSlashes+1;
}
}
if(f_isScopeCseRelative(p_resourceAddress)) {
if(v_nbOfSlashes == 0 ) {
return true;
} else {
return false;
}
} else if (v_SpScope and PX_UNSTRUCTURED){
for (i := 0; i < lengthof(p_content.uRIList); i:= i+1){
if(match (p_content.uRIList[i], "/")){
v_NoOfSlashes:= v_NoOfSlashes+1;
}
} else if (f_isScopeSpRelative(p_resourceAddress)){
if(v_nbOfSlashes == 2 ) {
return true;
} else {
return false;
}
} else if (v_AbsScope and PX_UNSTRUCTURED){
for (i := 0; i < lengthof(p_content.uRIList); i:= i+1){
if(match (p_content.uRIList[i], "/")){
v_NoOfSlashes:= v_NoOfSlashes+1;
}
} else if (f_isScopeAbsolute(p_resourceAddress)){
if(v_nbOfSlashes == 4 ) {
return true;
} else {
return false;
}
} else {
return false;
}
if ( (v_NoOfSlashes == 0) or (v_NoOfSlashes == 1) or (v_NoOfSlashes == 3)){
v_IsNonHierarchical := true;
}
return v_IsNonHierarchical;
}
function f_cse_getResourceAddress_IsHierarchical(in template PrimitiveContent p_content) runs on CseTester return boolean {
var boolean v_IsHierarchical := false;
var integer i;
var integer v_NoOfSlashes:= -1;
var boolean v_CseScope := f_cse_getResourceAddress_IsScopeCseRelative();
var boolean v_SpScope:= f_cse_getResourceAddress_IsScopeSpRelative();
var boolean v_AbsScope:= f_cse_getResourceAddress_IsScopeAbsoluteRelative();
if(v_CseScope and (not (PX_UNSTRUCTURED))){
for (i := 0; i < lengthof(p_content.uRIList); i:= i+1){
if(match (p_content.uRIList[i], "/")){
v_NoOfSlashes:= v_NoOfSlashes+1;
}
}
} else if (v_SpScope and (not(PX_UNSTRUCTURED))){
for (i := 0; i < lengthof(p_content.uRIList); i:= i+1){
if(match (p_content.uRIList[i], "/")){
v_NoOfSlashes:= v_NoOfSlashes+1;
}
}
} else if (v_AbsScope and (not (PX_UNSTRUCTURED))){
for (i := 0; i < lengthof(p_content.uRIList); i:= i+1){
if(match (p_content.uRIList[i], "/")){
v_NoOfSlashes:= v_NoOfSlashes+1;
}
}
}
if ( (v_NoOfSlashes == 1) or (v_NoOfSlashes == 2) or (v_NoOfSlashes == 4)) {
v_IsHierarchical := true;
}
return v_IsHierarchical;
function f_isHierarchical(XSD.ID p_resourceAddress) runs on Tester return boolean {
if(f_isNonHierarchical(p_resourceAddress)) {
return false;
} else {
return true;
}
}
function f_cse_getResourceAddress_IsScopeCseRelative() runs on CseTester return boolean {
var boolean v_CseScope:= false;
if (PX_ADDRESSING_FORMAT == e_cseRelative){
v_CseScope := true;
function f_isScopeCseRelative(XSD.ID p_resourceAddress) runs on Tester return boolean {
if (p_resourceAddress[0] != "/") {
return true;
} else {
return false;
}
return v_CseScope;
}
function f_cse_getResourceAddress_IsScopeSpRelative() runs on CseTester return boolean {
var boolean v_SpScope:= false;
if (PX_ADDRESSING_FORMAT == e_spRelative){
v_SpScope := true;
}
return v_SpScope;
function f_isScopeSpRelative(XSD.ID p_resourceAddress) runs on Tester return boolean {
if ((p_resourceAddress[0] == "/") and (p_resourceAddress[1] != "/")){
return true;
} else {
return false;
}
}
function f_cse_getResourceAddress_IsScopeAbsoluteRelative() runs on CseTester return boolean {
var boolean v_AbsScope:= false;
if(PX_ADDRESSING_FORMAT == e_absolute){
v_AbsScope := true;
}
return v_AbsScope;
function f_isScopeAbsolute(XSD.ID p_resourceAddress) runs on Tester return boolean {
if ((p_resourceAddress[0] == "/") and (p_resourceAddress[1] == "/")) {
return true;
} else {
return false;
}
}
}//end group helpingFunctions
......
......@@ -2788,7 +2788,7 @@ module OneM2M_Templates {
template ResponsePrimitive mw_responseDiscovery := {
responseStatusCode := int2000,
requestIdentifier := ?,
primitiveContent := ?,
primitiveContent := {uRIList := ?},
to_ := *,
from_ := *,
originatingTimestamp := *,
......
......@@ -10396,9 +10396,9 @@ module OneM2M_Testcases {
tc_ac.start;
alt {
[] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) -> value v_response {
[] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response {
tc_ac.stop;
if(not ischosen(v_response.primitive.responsePrimitive.primitiveContent.uRIList)){
if(sizeof(v_response.primitive.responsePrimitive.primitiveContent.uRIList) == 0){
setverdict(pass, testcasename() & ": No Content is present");
}
else
......@@ -10455,7 +10455,7 @@ module OneM2M_Testcases {
[] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response {
tc_ac.stop;
if (f_cse_getResourceAddress_IsNonHierarchical(v_response.primitive.responsePrimitive.primitiveContent)){
if (f_isNonHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[0])){
setverdict(pass, testcasename() & ": Unstructured addresses present in URIList representation");
} else {
setverdict(fail, testcasename() & ": Unstructured addresses absent in URIList representation");
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment