Commit 9c92c56e authored by Antonio Castillo Verdugo's avatar Antonio Castillo Verdugo
Browse files

Merge branch 'STF531-REG-TCs' of https://git.onem2m.org/TST/ATS into STF531-REG-TCs

parents dd589ce7 f7e4486e
......@@ -14,7 +14,7 @@
module OneM2M_TestControl {
import from OneM2M_Testcases all;
import from OneM2M_Testcases_CSE all;
control {
execute(TC_CSE_GEN_CRE_001_CSR());
......@@ -262,11 +262,11 @@ module OneM2M_TestControl {
execute(TC_CSE_GMG_CRE_005());
execute(TC_CSE_GMG_CRE_006());
execute(TC_CSE_GMG_CRE_007());
execute(TC_CSE_GMG_CRE_008_CRE());
/*execute(TC_CSE_GMG_CRE_008_CRE());
execute(TC_CSE_GMG_CRE_008_UPD());
execute(TC_CSE_GMG_CRE_008_RET());
execute(TC_CSE_GMG_CRE_008_DEL());
execute(TC_CSE_GMG_CRE_009());
execute(TC_CSE_GMG_CRE_009());*/
execute(TC_CSE_GMG_UPD_001());
execute(TC_CSE_GMG_UPD_002());
execute(TC_CSE_GMG_UPD_003());
......
......@@ -874,10 +874,9 @@ module OneM2M_Testcases_CSE {
f_cf01Up();
//Preamble
v_cseBaseIndex := f_cse_preamble_createServiceSubscribedProfile({"S*"}); //c_CRUDNDi);
//Test Body
v_request := valueof(m_createAe(PX_APP_ID, omit, omit));
v_request := valueof(m_createAe(PX_APP_ID, omit, "SAE-ID-STEM"));
v_request := f_getCreateRequestPrimitive(v_resourceType, v_request, -1);
......@@ -949,6 +948,25 @@ module OneM2M_Testcases_CSE {
// Tear down
f_cf01Down();
}
/**
* @desc Check that the IUT accepts a create request of <AE> resource with attributes multiplicity equals to 1 and provided preprovisioned SP_relative_AE_ID.
*/
testcase TC_CSE_REG_CRE_003() runs on CseSimu system CseSystem{
var integer v_remoteCseIndex := -1;
//Test Configuration
//f_cf02Up();
//Preamble
v_remoteCseIndex := f_cse_registrationRemoteCse();
vc_aeSimu := AeSimu.create("AE1") alive;
//vc_aeSimu.start(f_a);
}
/**
......@@ -1225,6 +1243,76 @@ module OneM2M_Testcases_CSE {
}; //end TC_CSE_REG_CRE_010
group g_CSE_REG_CRE_013 {
testcase TC_CSE_REG_CRE_013_AE_LBL() runs on AeSimu system CseSystem {
var template RequestPrimitive m_create := m_createAe(PX_APP_ID, omit, omit);
m_create.primitiveContent.aE.labels := {"labels"};
}
testcase TC_CSE_REG_CRE_013_AE_APN() runs on AeSimu system CseSystem {
var template RequestPrimitive m_create := m_createAe(PX_APP_ID, omit, omit);
m_create.primitiveContent.aE.appName := "AeAppName";
}
testcase TC_CSE_REG_CRE_013_AE_POA() runs on AeSimu system CseSystem {
var template RequestPrimitive m_create := m_createAe(PX_APP_ID, omit, omit);
m_create.primitiveContent.aE.pointOfAccess := {PX_AE1_ADDRESS};
}
testcase TC_CSE_REG_CRE_013_AE_NL() runs on AeSimu system CseSystem {
var template RequestPrimitive m_create := m_createAe(PX_APP_ID, omit, omit);
m_create.primitiveContent.aE.nodeLink := "http://127.0.0.1/";
}
testcase TC_CSE_REG_CRE_013_AE_OR() runs on AeSimu system CseSystem {
var template RequestPrimitive m_create := m_createAe(PX_APP_ID, omit, omit);
m_create.primitiveContent.aE.ontologyRef := "MyOntologyRef";
}
function TC_CSE_REG_CRE_013(in template RequestPrimitive p_createAe) runs on AeSimu {
//Local variables
var MsgIn v_response;
var RequestPrimitive v_request;
var ResourceType v_resourceType := int2; //AE
// Test control
// Test component configuration
f_cf01Up();
//Test Body
v_request := valueof(p_createAe);
v_request := f_getCreateRequestPrimitive(v_resourceType, v_request, -1);
mcaPort.send(m_request(v_request));
tc_ac.start;
alt {
[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) {
tc_ac.stop;
setverdict(pass, __SCOPE__ & ": AE creation successfull.");
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int2001))) -> value v_response{
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)));
}
[] tc_ac.timeout {
setverdict(fail, __SCOPE__ & ": No answer while creating AE");
}
}
//Postamble
f_cse_postamble_deleteResources();
// Tear down
f_cf01Down();
}
}
group g_CSE_REG_CRE_016 {
/**
......@@ -1839,9 +1927,9 @@ module OneM2M_Testcases_CSE {
tc_ac.stop;
if ((ispresent(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.nodeLink))){
setverdict(pass, __SCOPE__ & ": Response OK for retrieving for attribute cseType or nodeLink");
setverdict(pass, __SCOPE__ & ": Response OK for retrieving for attribute");
} else {
setverdict(fail, __SCOPE__ & ": Error: Unable to retrieve attribute cseType");
setverdict(fail, __SCOPE__ & ": Error: Unable to retrieve attribute");
}
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response {
......@@ -1870,6 +1958,175 @@ module OneM2M_Testcases_CSE {
} //end g_CSE_REG_RET_002
testcase TC_CSE_REG_RET_003() runs on AeSimu system CseSystem {
// Local variables
var MsgIn v_response;
var integer v_aeIndex := -1;
var template PrimitiveContent v_contentResponse;
// Test control
// Test component configuration
f_cf01Up();
// Test adapter configuration
// Preamble
v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
// Test Body
v_contentResponse.aE := mw_contentAeBase;
mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(), f_getOriginator(v_aeIndex))));//TODO Maybe PX_SUPER_AE_ID
tc_ac.start;
alt {
[] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response {
tc_ac.stop;
setverdict(pass, __SCOPE__ & ": Response OK for retrieving");
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Wrong response status code");
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements");
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
}
[] tc_ac.timeout {
setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
}
}
// Postamble
f_cse_postamble_deleteResources();
// Tear down
f_cf01Down();
}//end TC_CSE_REG_RET_003
group g_CSE_REG_RET_004 {
testcase TC_CSE_REG_RET_004_LBL() runs on Tester system CseSystem {
// Local variables
var AeSimu v_ae1 := AeSimu.create("AE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.aE := mw_contentAeBase;
v_ae1.start(f_CSE_REG_RET_004(v_contentResponse));
v_ae1.done;
}
testcase TC_CSE_REG_RET_004_APN() runs on Tester system CseSystem {
//Local variables
var AeSimu v_ae1 := AeSimu.create("AE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.aE := mw_contentAeBase;
v_ae1.start(f_CSE_REG_RET_004(v_contentResponse));
v_ae1.done;
}
testcase TC_CSE_REG_RET_004_POA() runs on Tester system CseSystem {
//Local variables
var AeSimu v_ae1 := AeSimu.create("AE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.aE := mw_contentAeBase;
v_ae1.start(f_CSE_REG_RET_004(v_contentResponse));
v_ae1.done;
}
testcase TC_CSE_REG_RET_004_NL() runs on Tester system CseSystem {
//Local variables
var AeSimu v_ae1 := AeSimu.create("AE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.aE := mw_contentAeBase;
v_ae1.start(f_CSE_REG_RET_004(v_contentResponse));
v_ae1.done;
}
testcase TC_CSE_REG_RET_004_CSZ() runs on Tester system CseSystem {
//Local variables
var AeSimu v_ae1 := AeSimu.create("AE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.aE := mw_contentAeBase;
v_ae1.start(f_CSE_REG_RET_004(v_contentResponse));
v_ae1.done;
}
function f_CSE_REG_RET_004(template PrimitiveContent p_contentResponse) runs on AeSimu {
//Local variables
var MsgIn v_response;
var integer v_aeIndex := -1;
// Test control
// Test component configuration
f_cf01Up();
// Test adapter configuration
// Preamble
v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(), f_getOriginator(v_aeIndex))));//TODO Maybe PX_SUPER_AE_ID
tc_ac.start;
alt {
[] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response {
tc_ac.stop;
if (ispresent(v_response.primitive.responsePrimitive.primitiveContent)){
if ((ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.appName)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.nodeLink)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.labels)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.pointOfAccess)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.contentSerialization)) ){
setverdict(pass, __SCOPE__ & ": Response OK for retrieving for attribute");
} else {
setverdict(fail, __SCOPE__ & ": Error: Unable to retrieve attribute");
}
} else {
setverdict(fail, __SCOPE__ & ": Error: Primitive content not available");
}
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Wrong response status code");
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements");
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
}
[] tc_ac.timeout {
setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
}
}
// Postamble
f_cse_postamble_deleteResources();
// Tear down
f_cf01Down();
} //end f_CSE_REG_RET_004
} //end g_CSE_REG_RET_004
/**
* @desc Check that if the IUT is IN-CSE, it accepts an retrieval request of <CSEBase> resource and returns the cseType attribute. cseType Attribute is mandatory for IN-CSE
*
......@@ -1904,16 +2161,19 @@ module OneM2M_Testcases_CSE {
alt {
[] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response {
tc_ac.stop;
if (ispresent(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType)){
if (v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType==int1){
setverdict(pass, __SCOPE__ & ": cseType attribute is set to 1 (IN_CSE)");
if (ispresent(v_response.primitive.responsePrimitive.primitiveContent)) {
if (ispresent(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType)){
if (v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType==int1){
setverdict(pass, __SCOPE__ & ": cseType attribute is set to 1 (IN_CSE)");
}else{
setverdict(fail, __SCOPE__ & ": Error, cseType attribute is set to " & int2str(enum2int(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType)));
}
}else{
setverdict(fail, __SCOPE__ & ": Error, cseType attribute is set to " & int2str(enum2int(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType)));
setverdict(fail, __SCOPE__ & ": Error, cseType attribute is not present");
}
}else{
setverdict(fail, __SCOPE__ & ": Error, cseType attribute is not present");
}
} else {
setverdict(fail, __SCOPE__ & ": Error, Primitive content not available");
}
}
[] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response {
tc_ac.stop;
......@@ -1940,6 +2200,163 @@ module OneM2M_Testcases_CSE {
}//end TC_CSE_REG_RET_BV_005
testcase TC_CSE_REG_RET_006() runs on CseSimu system CseSystem {
//Local variables
//Local variables
var MsgIn v_response;
var RequestPrimitive v_request;
var ResourceType v_resourceType := int16; //remoteCSE
var template PrimitiveContent v_contentResponse;
// Test control
// Test component configuration
f_cf04Up();
// Test adapter configuration
// Preamble
vc_remoteCseIndex := f_cse_registerRemoteCse(m_createRemoteCSEBase);
v_contentResponse.remoteCSE := mw_contentRemoteCSEBase;
mccPort.send(m_request(m_retrieveResource(f_getResourceAddress(), f_getOriginator(vc_remoteCseIndex))));
tc_ac.start;
alt {
[] mccPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response {
tc_ac.stop;
setverdict(pass, __SCOPE__ & ": Response OK for retrieving");
}
[] mccPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Wrong response status code");
}
[] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements");
}
[] mccPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
}
[] tc_ac.timeout {
setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
}
}
// Postamble
f_cse_postamble_deleteResourcesCSE();
// Tear down
f_cf04Down();
}//end TC_CSE_REG_RET_006
group g_CSE_REG_RET_007 {
testcase TC_CSE_REG_RET_007_LBL() runs on Tester system CseSystem {
// Local variables
var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.remoteCSE := mw_contentRemoteCSEBase;
v_cse1.start(f_CSE_REG_RET_007(v_contentResponse));
v_cse1.done;
}
testcase TC_CSE_REG_RET_007_CST() runs on Tester system CseSystem {
// Local variables
var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.remoteCSE := mw_contentRemoteCSEBase;
v_cse1.start(f_CSE_REG_RET_007(v_contentResponse));
v_cse1.done;
}
testcase TC_CSE_REG_RET_007_POA() runs on Tester system CseSystem {
// Local variables
var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.remoteCSE := mw_contentRemoteCSEBase;
v_cse1.start(f_CSE_REG_RET_007(v_contentResponse));
v_cse1.done;
}
testcase TC_CSE_REG_RET_007_NL() runs on Tester system CseSystem {
// Local variables
var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
var template PrimitiveContent v_contentResponse;
v_contentResponse.remoteCSE := mw_contentRemoteCSEBase;
v_cse1.start(f_CSE_REG_RET_007(v_contentResponse));
v_cse1.done;
}
function f_CSE_REG_RET_007(template PrimitiveContent p_contentResponse) runs on CseSimu {
var MsgIn v_response;
var RequestPrimitive v_request;
var ResourceType v_resourceType := int16; //remoteCSE
var template PrimitiveContent v_contentResponse;
// Test control
// Test component configuration
f_cf04Up();
// Test adapter configuration
// Preamble
vc_remoteCseIndex := f_cse_registerRemoteCse(m_createRemoteCSEBase);
mccPort.send(m_request(m_retrieveResource(f_getResourceAddress(), f_getOriginator(vc_remoteCseIndex))));
tc_ac.start;
alt {
[] mccPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response {
tc_ac.stop;
if (ispresent(v_response.primitive.responsePrimitive.primitiveContent)){
if ((ispresent(v_response.primitive.responsePrimitive.primitiveContent.remoteCSE.labels)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.remoteCSE.nodeLink)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.remoteCSE.cseType)) or
(ispresent(v_response.primitive.responsePrimitive.primitiveContent.remoteCSE.pointOfAccess))){
setverdict(pass, __SCOPE__ & ": Response OK for retrieving for attribute");
} else {
setverdict(fail, __SCOPE__ & ": Error: Unable to retrieve attribute");
}
} else {
setverdict(fail, __SCOPE__ & ": Error: Primitive content not available");
}
}
[] mccPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Wrong response status code");
}
[] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements");
}
[] mccPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
tc_ac.stop;
setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
}
[] tc_ac.timeout {
setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
}
}
//Postamble
f_cse_postamble_deleteResourcesCSE();
// Tear down
f_cf04Down();
} // f_CSE_REG_RET_007
} //end g_CSE_REG_RET_007
/**
* @desc Check that the IUT accepts a retrieval request of <CSEBase> resource and responds with supportedResourceTypes attribute containing a list of the supported resources and pointOfAccess containing the list of physical addresses to be used by Registree to connect to this CSE (e.g. IP address, FQDN).
*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment