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

Merge branch 'Release1' of https://git.onem2m.org/TST/ATS into Release1

parents 656c88af 4882a091
No related branches found
No related tags found
1 merge request!24STF531 REG TCs
...@@ -1691,13 +1691,19 @@ module OneM2M_Functions { ...@@ -1691,13 +1691,19 @@ module OneM2M_Functions {
* @return Internal resource index of AE or -1 in case of failure * @return Internal resource index of AE or -1 in case of failure
* @verdict inconc if no AE registration request is received * @verdict inconc if no AE registration request is received
*/ */
function f_ae_preamble_registerAe() runs on CseSimu return integer { function f_ae_preamble_registerAe(template UtTriggerPrimitive p_utRequest := m_create) runs on CseSimu return integer {
var MsgIn v_request; var MsgIn v_request;
var PrimitiveContent v_modifiedResource; var PrimitiveContent v_modifiedResource;
var integer v_resourceIndex, v_parentIndex; var integer v_resourceIndex, v_parentIndex;
var RequestPrimitive v_rp; var RequestPrimitive v_rp;
if(not(ispresent(p_utRequest.primitiveContent))) {
p_utRequest.primitiveContent.aE := m_contentCreateAe(omit, omit, omit, omit);
}
f_sendUtPrimitive(p_utRequest);
tc_ac.start; tc_ac.start;
alt { alt {
[] mcaPort.receive(mw_request(mw_createAe)) -> value v_request { [] mcaPort.receive(mw_request(mw_createAe)) -> value v_request {
...@@ -1725,7 +1731,55 @@ module OneM2M_Functions { ...@@ -1725,7 +1731,55 @@ module OneM2M_Functions {
f_checkCseSimuStatus(); f_checkCseSimuStatus();
return v_resourceIndex; return v_resourceIndex;
} }//end function f_ae_preamble_register
/**
* @desc Waits for Container create request and process it
* @return Internal resource index of Container or -1 in case of failure
* @verdict inconc if no Container create request is received
*/
function f_ae_preamble_createContainer(template UtTriggerPrimitive p_utRequest := m_create) runs on CseSimu return integer {
var MsgIn v_request;
var PrimitiveContent v_modifiedResource;
var integer v_resourceIndex, v_parentIndex;
var RequestPrimitive v_rp;
if(not(ispresent(p_utRequest.primitiveContent))) {
p_utRequest.primitiveContent.container := m_contentCreateContainer;
}
f_sendUtPrimitive(p_utRequest);
tc_ac.start;
alt {
[] mcaPort.receive(mw_request(mw_createContainer(?,?))) -> value v_request {
tc_ac.stop;
v_rp := v_request.primitive.requestPrimitive;
v_parentIndex := f_getResourceIndex(v_rp.to_);
v_resourceIndex := f_ae_createResource(v_rp.primitiveContent, v_parentIndex, v_rp.resourceType, v_modifiedResource);
if(v_resourceIndex != -1) {
mcaPort.send(m_response(m_responsePrimitive_content(int2001, v_rp.requestIdentifier, v_modifiedResource)));
setverdict(pass, __SCOPE__&":INFO: Container created successfuly");
}
else {
mcaPort.send(m_response(m_responsePrimitive(int5000, v_request.primitive.requestPrimitive.requestIdentifier)));
setverdict(inconc, __SCOPE__&":INFO: Container creation failed");
}
}
[] tc_ac.timeout {
setverdict(inconc, __SCOPE__&":INFO: Container create request not received");
stop;
}
}
f_checkCseSimuStatus();
return v_resourceIndex;
} //end function f_ae_preamble_createContainer
} // end preambleFunctions } // end preambleFunctions
...@@ -2556,6 +2610,31 @@ module OneM2M_Functions { ...@@ -2556,6 +2610,31 @@ module OneM2M_Functions {
} }
function f_sendUtPrimitive(template UtTriggerPrimitive p_utRequest) runs on Tester {
p_utRequest.from_ := "UNINITIALIZED";
p_utRequest.requestIdentifier := "m_uttriggerPrimitive" & f_rnd(1, 1000000);
utPort.send(valueof(p_utRequest));
tc_wait.start;
alt{
[] utPort.receive(mw_utResponseOK) {
tc_wait.stop;
setverdict(pass, __SCOPE__, " : Triggering message is successfully received!");
}
[] utPort.receive(mw_utResponseKO) {
tc_wait.stop;
setverdict(inconc, __SCOPE__, " : Error while receiving Triggering message!");
}
[] tc_wait.timeout{
setverdict(inconc, __SCOPE__, " : Timeout due to no response received from requested SUT!");
}
}
}
group AltstepFunctions { group AltstepFunctions {
/** /**
......
...@@ -22,5 +22,9 @@ module OneM2M_Pics { ...@@ -22,5 +22,9 @@ module OneM2M_Pics {
modulepar boolean PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT := true; modulepar boolean PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT := true;
modulepar boolean PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT := true; modulepar boolean PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT := true;
modulepar boolean PICS_PRIMITIVE_SCOPE_CSE_RELATIVE := true;
modulepar boolean PICS_PRIMITIVE_SCOPE_SP_RELATIVE := true;
modulepar boolean PICS_PRIMITIVE_SCOPE_ABSOLUTE := true;
} // end of module } // end of module
...@@ -52,4 +52,15 @@ module OneM2M_Ports { ...@@ -52,4 +52,15 @@ module OneM2M_Ports {
RequestPrimitive, ResponsePrimitive, PrimitiveContent, MyResource; RequestPrimitive, ResponsePrimitive, PrimitiveContent, MyResource;
} }
/**
* @desc Port to transport control commands to Upper Tester Application
*/
type port UpperTesterPort message {
in
UtTriggerAckPrimitive;
out
UtTriggerPrimitive;
}
}//end module }//end module
...@@ -120,6 +120,32 @@ module OneM2M_Templates { ...@@ -120,6 +120,32 @@ module OneM2M_Templates {
filterCriteria := omit, filterCriteria := omit,
discoveryResultType := omit discoveryResultType := omit
}; };
/**
* @desc Base Receive RETRIEVE request primitive
* @param p_targetResourceAddress Target resource address
*/
template RequestPrimitive mw_retrieveResource(XSD.ID p_targetResourceAddress) := {
operation := int2,
to_ := p_targetResourceAddress,
from_ := ?,
requestIdentifier := ?,
resourceType := ?,
primitiveContent := ?,
role := *,
originatingTimestamp := *,
requestExpirationTimestamp := *,
resultExpirationTimestamp := *,
operationExecutionTime := *,
responseType := *,
resultPersistence := *,
resultContent := *,
eventCategory := *,
deliveryAggregation := *,
groupRequestIdentifier := *,
filterCriteria := *,
discoveryResultType := *
};
/** /**
* @desc RETRIEVE request primitive for a single attribute in To field ("targetResourceAddress#AttributeName") * @desc RETRIEVE request primitive for a single attribute in To field ("targetResourceAddress#AttributeName")
...@@ -315,6 +341,29 @@ module OneM2M_Templates { ...@@ -315,6 +341,29 @@ module OneM2M_Templates {
filterCriteria := omit, filterCriteria := omit,
discoveryResultType := omit discoveryResultType := omit
}; };
template RequestPrimitive mw_update(template XSD.ID p_from := *, template XSD.ID p_to := ?) := {
operation := int3,
to_ := p_to,
from_ := p_from,
requestIdentifier := ?,
resourceType := ?,
primitiveContent:= ?,
role := *,
originatingTimestamp := *,
requestExpirationTimestamp := *,
resultExpirationTimestamp := *,
operationExecutionTime := *,
responseType := *,
resultPersistence := *,
resultContent := *,
eventCategory := *,
deliveryAggregation := *,
groupRequestIdentifier := *,
filterCriteria := *,
discoveryResultType := *
};
/** /**
* @desc Base UPDATE request primitive for Ae resource * @desc Base UPDATE request primitive for Ae resource
...@@ -323,6 +372,16 @@ module OneM2M_Templates { ...@@ -323,6 +372,16 @@ module OneM2M_Templates {
requestIdentifier := "m_updateAe", requestIdentifier := "m_updateAe",
primitiveContent:= {aE := m_contentUpdateAe} primitiveContent:= {aE := m_contentUpdateAe}
}; };
/**
* @desc Reception template for update Ae resource
*/
template RequestPrimitive mw_updateAe(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_update := {
resourceType := int2,
primitiveContent:= {aE := ?}
};
/** /**
* @desc Base UPDATE request primitive for Container resource * @desc Base UPDATE request primitive for Container resource
...@@ -332,6 +391,14 @@ module OneM2M_Templates { ...@@ -332,6 +391,14 @@ module OneM2M_Templates {
primitiveContent:= {container := m_contentUpdateContainer} primitiveContent:= {container := m_contentUpdateContainer}
}; };
/**
* @desc Base Reception template for update Container
*/
template RequestPrimitive mw_updateContainer(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_update := {
resourceType := int3,
primitiveContent := {container := ?}
};
/** /**
* @desc Base UPDATE request primitive for ContentInstance resource * @desc Base UPDATE request primitive for ContentInstance resource
*/ */
...@@ -505,9 +572,9 @@ module OneM2M_Templates { ...@@ -505,9 +572,9 @@ module OneM2M_Templates {
/** /**
* @desc Reception template for AE registration * @desc Reception template for AE registration
*/ */
template RequestPrimitive mw_createAe(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_create := { template RequestPrimitive mw_createAe(template XSD.ID p_from := *, template XSD.ID p_to := ?, template AE_optional p_ae := ?) modifies mw_create := {
resourceType := int2, resourceType := int2,
primitiveContent := {aE := ?} primitiveContent := {aE := p_ae}
}; };
template (value) RequestPrimitive m_createAeAux(template (omit) AcpType p_accessControlPolicyIds := omit, in template (omit) PoaList p_poaList) modifies m_create := { template (value) RequestPrimitive m_createAeAux(template (omit) AcpType p_accessControlPolicyIds := omit, in template (omit) PoaList p_poaList) modifies m_create := {
...@@ -656,7 +723,15 @@ module OneM2M_Templates { ...@@ -656,7 +723,15 @@ module OneM2M_Templates {
template RequestPrimitive mw_createContentInstanceAnnc(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_create := { template RequestPrimitive mw_createContentInstanceAnnc(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_create := {
resourceType := int10014, resourceType := int10014,
primitiveContent := {contentInstanceAnnc := ?} primitiveContent := {contentInstanceAnnc := ?}
}; };
/**
* @desc Reception template for CREATE ContentInstance
*/
template RequestPrimitive mw_createContentInstance(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_create := {
resourceType := int4,
primitiveContent := {contentInstance := ?}
};
/** /**
* @desc Base Reception template for CREATE ContentInstanceAnnc * @desc Base Reception template for CREATE ContentInstanceAnnc
...@@ -861,6 +936,14 @@ module OneM2M_Templates { ...@@ -861,6 +936,14 @@ module OneM2M_Templates {
resourceType := int23, resourceType := int23,
primitiveContent := {subscription := m_contentCreateSubscription (p_notificationURI, p_name)} primitiveContent := {subscription := m_contentCreateSubscription (p_notificationURI, p_name)}
}; };
/**
* @desc Reception template for CREATE Subscription
*/
template RequestPrimitive mw_createSubscription(template XSD.ID p_from := *, template XSD.ID p_to := ?) modifies mw_create := {
resourceType := int23,
primitiveContent := {subscription := ?}
};
template (value) RequestPrimitive m_createSubscriptionAdvanced( XSD.ID p_parentResourceAddress, template (value) RequestPrimitive m_createSubscriptionAdvanced( XSD.ID p_parentResourceAddress,
in template (omit) XSD.String p_name := omit, in template (omit) XSD.String p_name := omit,
...@@ -967,14 +1050,86 @@ module OneM2M_Templates { ...@@ -967,14 +1050,86 @@ module OneM2M_Templates {
filterCriteria := omit, filterCriteria := omit,
discoveryResultType := omit discoveryResultType := omit
}; };
template RequestPrimitive mw_deleteRequest(template XSD.ID p_resourceAddress := ?) := {
operation := int4,
to_ := p_resourceAddress,
from_ := ?,
requestIdentifier := ?,
resourceType := *,
primitiveContent := *,
role := *,
originatingTimestamp := *,
requestExpirationTimestamp := *,
resultExpirationTimestamp := *,
operationExecutionTime := *,
responseType := *,
resultPersistence := *,
resultContent := *,
eventCategory := *,
deliveryAggregation := *,
groupRequestIdentifier := *,
filterCriteria := *,
discoveryResultType := *
};
}//end group Delete }//end group Delete
group Notify { group Notify {
/** /**
* @desc Base NOTIFY request primitive * @desc Base NOTIFY request primitive
*/ */
template RequestPrimitive m_notifyRequest := {
operation := int5,
to_ := "NotInitialized",
from_ := omit,
requestIdentifier := testcasename() & "-m_notifyRequest" & f_rnd(1, 1000000),
resourceType := omit,
primitiveContent := {notification := m_contentCreateNotification_allOmit},
role := omit,
originatingTimestamp := omit,
requestExpirationTimestamp := omit,
resultExpirationTimestamp := omit,
operationExecutionTime := omit,
responseType := omit,
resultPersistence := omit,
resultContent := omit,
eventCategory := omit,
deliveryAggregation := omit,
groupRequestIdentifier := omit,
filterCriteria := omit,
discoveryResultType := omit
};
/**
* @desc Base NOTIFY Aggregated request primitive
*/
template RequestPrimitive m_notifyAggregatedRequest := {
operation := int5,
to_ := "NotInitialized",
from_ := omit,
requestIdentifier := testcasename() & "-m_notifyAggregatedRequest" & f_rnd(1, 1000000),
resourceType := omit,
primitiveContent := {aggregatedNotification := {notification_list := {m_contentCreateNotification_allOmit,m_contentCreateNotification_allOmit}}},
role := omit,
originatingTimestamp := omit,
requestExpirationTimestamp := omit,
resultExpirationTimestamp := omit,
operationExecutionTime := omit,
responseType := omit,
resultPersistence := omit,
resultContent := omit,
eventCategory := omit,
deliveryAggregation := omit,
groupRequestIdentifier := omit,
filterCriteria := omit,
discoveryResultType := omit
};
/**
* @desc Base NOTIFY request primitive
*/
template RequestPrimitive mw_notifyBase := { template RequestPrimitive mw_notifyBase := {
operation := int5, operation := int5,
to_ := ?, to_ := ?,
...@@ -1038,6 +1193,22 @@ module OneM2M_Templates { ...@@ -1038,6 +1193,22 @@ module OneM2M_Templates {
group ContentCreate { group ContentCreate {
template PrimitiveContent m_primitiveContentAe(template AE_optional p_ae) := {
aE := p_ae
}
template PrimitiveContent m_primitiveContentContainer(template Container_optional p_container) := {
container := p_container
}
template PrimitiveContent m_primitiveContentContentInstance(template ContentInstance_optional p_contentInstance) := {
contentInstance := p_contentInstance
}
template PrimitiveContent m_primitiveContentCSEBase(template CSEBase_optional p_cSEBase) := {
cSEBase := p_cSEBase
}
template PrimitiveContent mw_primitiveContent := ?; template PrimitiveContent mw_primitiveContent := ?;
/** /**
...@@ -1564,9 +1735,9 @@ module OneM2M_Templates { ...@@ -1564,9 +1735,9 @@ module OneM2M_Templates {
notificationEventType_list := p_notificationEventType_list// TODO this list should be able to be omited see 9.6.8 (TS0001) notificationEventType_list := p_notificationEventType_list// TODO this list should be able to be omited see 9.6.8 (TS0001)
}; };
template (value) BatchNotify m_batchNotify (in XSD.NonNegativeInteger p_number) := { template (value) BatchNotify m_batchNotify (in XSD.NonNegativeInteger p_number, in XSD.Duration p_duration := "PT20S") := {
number := p_number, number := p_number,
duration := "PT5S" //TODO duration has to be set to 1s and match to the Duration regex duration := p_duration //TODO duration has to be set to 1s and match to the Duration regex
}; };
//normaly duration can be omited //normaly duration can be omited
...@@ -1595,7 +1766,7 @@ module OneM2M_Templates { ...@@ -1595,7 +1766,7 @@ module OneM2M_Templates {
ontologyRef := omit,//O ontologyRef := omit,//O
content := p_primitiveContent//M content := p_primitiveContent//M
}; };
/** /**
* @desc Base primitiveContent for CREATE operation for ContentInstanceAnnc resource * @desc Base primitiveContent for CREATE operation for ContentInstanceAnnc resource
* @param p_primitiveContent Content for the ContentInstanceAnnc * @param p_primitiveContent Content for the ContentInstanceAnnc
...@@ -1784,6 +1955,22 @@ module OneM2M_Templates { ...@@ -1784,6 +1955,22 @@ module OneM2M_Templates {
notificationForwardingURI := p_notifForwardingURI notificationForwardingURI := p_notifForwardingURI
}; };
template (value) Notification m_contentCreateNotification_allOmit := {
notificationEvent := {
representation := omit,
operationMonitor := {
operation := omit,
originator := omit
},
notificationEventType := omit
},
verificationRequest := omit,
subscriptionDeletion := omit,
subscriptionReference := omit,
creator := omit,
notificationForwardingURI := omit
};
/** /**
* @desc Base primitiveContent for CREATE operation for StatConfig resource * @desc Base primitiveContent for CREATE operation for StatConfig resource
* @param p_primitiveConten t Content for the StatConfig * @param p_primitiveConten t Content for the StatConfig
...@@ -2180,7 +2367,39 @@ module OneM2M_Templates { ...@@ -2180,7 +2367,39 @@ module OneM2M_Templates {
} }
}//end group ContentUpdate }//end group ContentUpdate
group RequestContent {
group CreateRequest {
}
group UpdateRequest {
template AE_optional mw_contentAeUpdateRequest modifies mw_contentAe_any := {
resourceName := omit,//NP
resourceType := omit,//NP
resourceID := omit,//NP
parentID := omit,//NP
creationTime := omit,//NP
lastModifiedTime := omit,//NP
app_ID := omit,//NP
aE_ID := omit//NP
};
template Container_optional mw_contentContainerUpdateRequest modifies mw_contentContainer_any := {
resourceName := omit,//NP
resourceType := omit,//NP
resourceID := omit,//NP
parentID := omit,//NP
creationTime := omit,//NP
lastModifiedTime := omit//NP
};
}//End of group UpdateRequest
}//end of group RequestContent
group ResponseContent { group ResponseContent {
template AE_optional mw_contentAeBase := { template AE_optional mw_contentAeBase := {
...@@ -2821,6 +3040,11 @@ module OneM2M_Templates { ...@@ -2821,6 +3040,11 @@ module OneM2M_Templates {
subscriberURI := omit,//O subscriberURI := omit,//O
choice := omit//O choice := omit//O
} }
template Subscription_optional m_contentSubscription modifies m_contentSubscription_allOmit := {
resourceType := int23 //M
}
template Subscription_optional mw_contentSubscription_rc1 modifies mw_contentSubscriptionBase := { template Subscription_optional mw_contentSubscription_rc1 modifies mw_contentSubscriptionBase := {
choice := omit //O choice := omit //O
} }
...@@ -2898,6 +3122,25 @@ module OneM2M_Templates { ...@@ -2898,6 +3122,25 @@ module OneM2M_Templates {
template ContentInstance_optional mw_contentContentInstance_rc1 modifies mw_contentContentInstanceBase := { template ContentInstance_optional mw_contentContentInstance_rc1 modifies mw_contentContentInstanceBase := {
} }
template ContentInstance_optional m_contentContentInstance_allOmit := {
resourceName := omit,//M
resourceType := omit,//M
resourceID := omit,//M
parentID := omit,//M
creationTime := omit,//M
lastModifiedTime := omit,//M
labels := omit ,//O
expirationTime := omit,//M
announceTo := omit,//O
announcedAttribute := omit,//O
stateTag := omit,//M
creator := omit,//O
contentInfo := omit,//O
contentSize := omit,//M
ontologyRef := omit,//O
content := omit//M
};
template Container_optional mw_contentContainerBase := { template Container_optional mw_contentContainerBase := {
resourceName := ?,//M resourceName := ?,//M
resourceType := ?,//M resourceType := ?,//M
...@@ -3130,6 +3373,52 @@ module OneM2M_Templates { ...@@ -3130,6 +3373,52 @@ module OneM2M_Templates {
group SpecialContents { group SpecialContents {
template (value) AE_optional m_contentCreateAe_Invalid := {
resourceName := omit,//O
resourceType := omit,//NP
resourceID := omit,//NP
parentID := omit,//NP
creationTime := omit,//NP
lastModifiedTime := omit,//NP
labels := omit,//O
accessControlPolicyIDs := omit,//O
expirationTime := omit,//O
announceTo := omit,//O
announcedAttribute := omit,//O
appName := omit,//O
app_ID := omit,//M
aE_ID := omit,//NP
pointOfAccess := omit, //O
ontologyRef := omit,//O
nodeLink := omit,//NP
requestReachability := omit,//M
contentSerialization := omit,//O
choice := omit//NP
};
template AE_optional mw_contentCreateAe_invalid := {
resourceName := *,//O
resourceType := *,//NP
resourceID := *,//NP
parentID := *,//NP
creationTime := *,//NP
lastModifiedTime := *,//NP
labels := *,//O
accessControlPolicyIDs := *,//O
expirationTime := *,//O
announceTo := *,//O
announcedAttribute := *,//O
appName := *,//O
app_ID := omit,//M
aE_ID := *,//NP
pointOfAccess := *, //O
ontologyRef := *,//O
nodeLink := *,//NP
requestReachability := omit,//M
contentSerialization := *,//O
choice := *//NP
};
template (value) AE_update_invalid m_contentUpdateAe_invalid := { template (value) AE_update_invalid m_contentUpdateAe_invalid := {
resourceName := omit,//M resourceName := omit,//M
resourceType := omit,//M resourceType := omit,//M
...@@ -3384,7 +3673,160 @@ module OneM2M_Templates { ...@@ -3384,7 +3673,160 @@ module OneM2M_Templates {
}//end group InfoPortTemplates }//end group InfoPortTemplates
}//end group ResponsePrimitives }//end group ResponsePrimitives
group UpperTester {
template (value) UtTriggerPrimitive m_utCreate := {
operation := int1,
to_ := "NotInitialized",
from_ := "NotInitialized",
requestIdentifier := testcasename() & "-m_utCreate" & f_rnd(1, 1000000),
resourceType := omit,
primitiveContent := omit,
role := omit,
originatingTimestamp := omit,
requestExpirationTimestamp := omit,
resultExpirationTimestamp := omit,
operationExecutionTime := omit,
responseType := omit,
resultPersistence := omit,
resultContent := omit,
eventCategory := omit,
deliveryAggregation := omit,
groupRequestIdentifier := omit,
filterCriteria := omit,
discoveryResultType := omit
};
template (value) UtTriggerPrimitive m_utCreateContainer modifies m_utCreate := {
requestIdentifier := testcasename() & "-m_utCreateContainer" & f_rnd(1, 1000000),
resourceType := int3,
primitiveContent := {container := m_contentContainer_allOmit}
}
template (value) UtTriggerPrimitive m_utCreateContentInstance modifies m_utCreate := {
requestIdentifier := testcasename() & "-m_utCreateContentInstance" & f_rnd(1, 1000000),
resourceType := int4,
primitiveContent := {contentInstance := m_contentContentInstance_allOmit}
}
template (value) UtTriggerPrimitive m_utCreateSubscription modifies m_utCreate := {
requestIdentifier := testcasename() & "-m_utCreateSubscription" & f_rnd(1, 1000000),
resourceType := int23,
primitiveContent := {subscription := m_contentSubscription}
}
template (value) UtTriggerPrimitive m_utRetrieveResource(XSD.ID p_targetResourceAddress, in XSD.ID p_originator) := {
operation := int2,
to_ := p_targetResourceAddress,
from_ := p_originator,
requestIdentifier := "m_utRetrieveResource" & f_rnd(1, 1000000),
resourceType := omit,
primitiveContent := omit,
role := omit,
originatingTimestamp := omit,
requestExpirationTimestamp := omit,
resultExpirationTimestamp := omit,
operationExecutionTime := omit,
responseType := omit,
resultPersistence := omit,
resultContent := omit,
eventCategory := omit,
deliveryAggregation := omit,
groupRequestIdentifier := omit,
filterCriteria := omit,
discoveryResultType := omit
};
template (value) UtTriggerPrimitive m_utUpdate := {
operation := int3,
to_ := "NotInitialized",
from_ := "NotInitialized",
requestIdentifier := testcasename() & "-m_utUpdate" & f_rnd(1, 1000000),
resourceType := omit,
primitiveContent := omit,
role := omit,
originatingTimestamp := omit,
requestExpirationTimestamp := omit,
resultExpirationTimestamp := omit,
operationExecutionTime := omit,
responseType := omit,
resultPersistence := omit,
resultContent := omit,
eventCategory := omit,
deliveryAggregation := omit,
groupRequestIdentifier := omit,
filterCriteria := omit,
discoveryResultType := omit
};
template (value) UtTriggerPrimitive m_utUpdateContainer modifies m_utUpdate := {
requestIdentifier := testcasename() & "-m_utUpdateContainer" & f_rnd(1, 1000000),
resourceType := int3,
primitiveContent := {container := m_contentUpdateContainer}
}
template (value) UtTriggerPrimitive m_utDeleteRequest := {
operation := int4,
to_ := "NotInitialized",
from_ := "NotInitialized",
requestIdentifier := testcasename() & "-m_utDeleteRequest" & f_rnd(1, 1000000),
resourceType := omit,
primitiveContent := omit,
role := omit,
originatingTimestamp := omit,
requestExpirationTimestamp := omit,
resultExpirationTimestamp := omit,
operationExecutionTime := omit,
responseType := omit,
resultPersistence := omit,
resultContent := omit,
eventCategory := omit,
deliveryAggregation := omit,
groupRequestIdentifier := omit,
filterCriteria := omit,
discoveryResultType := omit
};
template (value) UtTriggerPrimitive m_utDeleteResource(XSD.ID p_targetResourceAddress, in XSD.ID p_originator) modifies m_utDeleteRequest := {
to_ := p_targetResourceAddress,
from_ := p_originator
};
template UtTriggerAckPrimitive mw_utResponseOK := {
responseStatusCode := int2000,
requestIdentifier := ?,
primitiveContent := *,
to_ := *,
from_ := *,
originatingTimestamp := *,
resultExpirationTimestamp := *,
eventCategory := *
}
template UtTriggerAckPrimitive mw_utResponseKO := {
responseStatusCode := int4000,
requestIdentifier := ?,
primitiveContent := *,
to_ := *,
from_ := *,
originatingTimestamp := *,
resultExpirationTimestamp := *,
eventCategory := *
}
template UtTriggerAckPrimitive mw_utResponse(ResponseStatusCode p_statusCode) := {
responseStatusCode := p_statusCode,
requestIdentifier := ?,
primitiveContent := *,
to_ := *,
from_ := *,
originatingTimestamp := *,
resultExpirationTimestamp := *,
eventCategory := *
}
}
} // end of module } // end of module
\ No newline at end of file
...@@ -25,6 +25,7 @@ module OneM2M_TestSystem { ...@@ -25,6 +25,7 @@ module OneM2M_TestSystem {
type component Tester { type component Tester {
port AdapterControlPort acPort; port AdapterControlPort acPort;
port InfoPort infoPort; port InfoPort infoPort;
port UpperTesterPort utPort;
//timers //timers
timer tc_ac := PX_TAC; timer tc_ac := PX_TAC;
timer tc_wait; timer tc_wait;
......
...@@ -4130,6 +4130,10 @@ module OneM2M_Types { ...@@ -4130,6 +4130,10 @@ module OneM2M_Types {
with { with {
encode "adapter"; encode "adapter";
} }
type RequestPrimitive UtTriggerPrimitive;
type ResponsePrimitive UtTriggerAckPrimitive;
type record AttributeAux { type record AttributeAux {
XSD.NCName name, XSD.NCName name,
......
This diff is collapsed.
...@@ -11,13 +11,14 @@ ...@@ -11,13 +11,14 @@
* @desc Module containing test cases for oneM2M * @desc Module containing test cases for oneM2M
* *
*/ */
module OneM2M_Testcases { module OneM2M_Testcases_CSE {
import from OneM2M_TestSystem all; import from OneM2M_TestSystem all;
import from OneM2M_Templates all; import from OneM2M_Templates all;
import from OneM2M_Types all;//{type XSD.ID}; import from OneM2M_Types all;//{type XSD.ID};
import from OneM2M_TypesAndValues all; import from OneM2M_TypesAndValues all;
import from OneM2M_Pixits all; import from OneM2M_Pixits all;
import from LibCommon_Time all;
import from OneM2M_Pics all; import from OneM2M_Pics all;
import from OneM2M_Functions all; import from OneM2M_Functions all;
import from XSD all; import from XSD all;
...@@ -18111,7 +18112,9 @@ module OneM2M_Testcases { ...@@ -18111,7 +18112,9 @@ module OneM2M_Testcases {
*/ */
testcase TC_CSE_SUB_NTF_003() runs on AeSimu system CseSystem { testcase TC_CSE_SUB_NTF_003() runs on AeSimu system CseSystem {
// Local variables // Local variables
const integer numberOfAggregatedNotification := 2; timer t_batchNotificationTimer := PX_TAC * 2.0;
var float v_elapsedTime;
const integer c_numberOfAggregatedNotification := 2;
var Labels v_labels_1:= {"VALUE_1"}; var Labels v_labels_1:= {"VALUE_1"};
var Labels v_labels_2:= {"VALUE_2"}; var Labels v_labels_2:= {"VALUE_2"};
var integer v_aeIndex := -1; var integer v_aeIndex := -1;
...@@ -18136,7 +18139,7 @@ module OneM2M_Testcases { ...@@ -18136,7 +18139,7 @@ module OneM2M_Testcases {
f_cse_preamble_subscriptionVerification(v_ae2Index, v_createRequest, int23); f_cse_preamble_subscriptionVerification(v_ae2Index, v_createRequest, int23);
v_createRequest := m_createSubscriptionAdvanced(f_getResourceAddress(v_aeIndex), -, {f_getResourceAddress(v_ae2Index)},omit,omit,m_batchNotify(numberOfAggregatedNotification), omit, omit, -, int2); v_createRequest := m_createSubscriptionAdvanced(f_getResourceAddress(v_aeIndex), -, {f_getResourceAddress(v_ae2Index)},omit,omit,m_batchNotify(c_numberOfAggregatedNotification + 1, "PT10S" ), omit, omit, -, int2);//batchNotify/number greater than number of notifications to be sent so that batchNotify/duration expires before
v_resourceIndex := f_cse_createResource(int23, v_createRequest, v_aeIndex);//Subscription v_resourceIndex := f_cse_createResource(int23, v_createRequest, v_aeIndex);//Subscription
...@@ -18145,18 +18148,26 @@ module OneM2M_Testcases { ...@@ -18145,18 +18148,26 @@ module OneM2M_Testcases {
}; };
// Test Body // Test Body
vc_ae2.start(f_cse_notifyProcedure_aggregatedNoficationHandler(v_contentResponse, 2)); // check that no notification is received vc_ae2.start(f_cse_notifyProcedure_aggregatedNoficationHandler(v_contentResponse, c_numberOfAggregatedNotification));
v_updateRequest.primitiveContent.aE.labels := v_labels_1; v_updateRequest.primitiveContent.aE.labels := v_labels_1;
v_request:= f_getUpdateRequestPrimitive(int2, v_aeIndex, v_updateRequest); // Update request 1 v_request:= f_getUpdateRequestPrimitive(int2, v_aeIndex, v_updateRequest); // Update request 1
f_cse_updateResource(v_request); f_cse_updateResource(v_request);
t_batchNotificationTimer.start;
v_updateRequest := m_updateAeBase; v_updateRequest := m_updateAeBase;
v_updateRequest.requestIdentifier := "m_updateAe" & f_rnd(1, 1000000);
v_updateRequest.primitiveContent.aE.appName := "MyAppName2"; v_updateRequest.primitiveContent.aE.appName := "MyAppName2";
v_request:= f_getUpdateRequestPrimitive(int2, v_aeIndex, v_updateRequest); // Update request 2 v_request:= f_getUpdateRequestPrimitive(int2, v_aeIndex, v_updateRequest); // Update request 2
f_cse_updateResource(v_request); f_cse_updateResource(v_request);
vc_ae2.done;
v_elapsedTime := t_batchNotificationTimer.read;
t_batchNotificationTimer.stop;
if(v_elapsedTime < 10.0) {
setverdict(fail, __SCOPE__ & ": Notifications sent before bathNotify/duration expired");
}
f_checkComponentDoneAndGetVerdict(vc_ae2); f_checkComponentDoneAndGetVerdict(vc_ae2);
//Postamble //Postamble
......
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