Newer
Older
// Test component configuration
// Preamble
// Start components
v_mapem := f_getComponent(c_compMap);
v_spatem := f_getComponent(c_compSpat);
v_mapem.start(f_IS_TLM_GEN_MSGF_BV_12_MAPEM());
v_spatem.start(f_IS_TLM_GEN_MSGF_BV_12_SPATEM());
// Synchronization
f_serverSync2ClientsAndStop({c_prDone, c_tbDone});
// Cleanup
f_cf02Down();
} // End of function f_IS_TLM_GEN_MSGF_BV_12
/**
* @desc TP Function for TC_IS_TLM_GEN_MSGF_BV_12_MAPEM
*/
function f_IS_TLM_GEN_MSGF_BV_12_MAPEM () runs on ItsMapemSpatem {
// Local variables
var MapemInd v_mapem;
var IntersectionReferenceID v_id;
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
// Preamble
f_prInitialState();
f_awaitMapeMessage(
mw_mapemInd(
mw_mapemPdu(
mw_mapem(
{mw_intersectionGeometry(
?,//IntersectionReferenceId
-,
-,
{mw_roadLane(
-,//laneID
?,//laneAttributes
-,//p_ingressApproach
-,//egressApproach
? //connectsTo
)}
)}
)
)),
v_mapem
);
v_id := v_mapem.msgIn.map_.intersections[0].id;
log("IntersectionReferenceID = ", v_id);
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
} // End of function f_IS_TLM_GEN_MSGF_BV_12_MAPEM
/**
* @desc TP Function for TC_IS_TLM_GEN_MSGF_BV_12_SPATEM
*/
function f_IS_TLM_GEN_MSGF_BV_12_SPATEM () runs on ItsMapemSpatem {
// Local variables
// Preamble
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatem_intersections(
{mw_IntersectionState(
?, //IntersectionReferenceID p_id
-, //MsgCount p_revision
-, //IntersectionStatusObject p_status
{mw_movementState( //MovementList p_states
?,//SignalGroupID,
{mw_movementEvent( //MovementEventList,
-,
-,//timing
{mw_advisorySpeed( //speeds
(ecoDrive, transit),//type (ecoDrive (2) or transit (3))
? //speed
)}
)}
)}
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received SAPTEM PDU header. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
/**
*/
// Local variables
var ItsMapemSpatem v_mapem;
var ItsMapemSpatem v_spatem;
if (not (PICS_SPATEM_GENERATION and PICS_SPATEM_PEDESTRIAN_MANOEUVRES)) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION AND PICS_SPATEM_PEDESTRIAN_MANOEUVRES required for executing the TC ***");
// Test component configuration
f_cf02Up();
// Preamble
// Start components
v_mapem := f_getComponent(c_compMap);
v_spatem := f_getComponent(c_compSpat);
v_mapem.start(f_IS_TLM_GEN_MSGF_BV_13_MAPEM());
v_spatem.start(f_IS_TLM_GEN_MSGF_BV_13_SPATEM());
// Synchronization
f_serverSync2ClientsAndStop({c_prDone, c_tbDone});
// Cleanup
f_cf02Down();
* @desc TP Function for TC_IS_TLM_GEN_MSGF_BV_13_MAPEM
function f_IS_TLM_GEN_MSGF_BV_13_MAPEM () runs on ItsMapemSpatem {
// Local variables
var MapemInd v_mapem;
// Preamble
f_awaitMapeMessage(
mw_mapemInd(
mw_mapemPdu(
mw_mapem(
{mw_intersectionGeometry(
-,
-,
{mw_roadLane(
-,//laneID
?,//laneAttributes
-,//p_ingressApproach
-,//egressApproach
? //connectsTo
)}
)}
)
)),
v_mapem
);
v_id := v_mapem.msgIn.map_.intersections[0].id;
log("IntersectionReferenceID = ", v_id);
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
* @desc TP Function for TC_IS_TLM_GEN_MSGF_BV_13_SPATEM
function f_IS_TLM_GEN_MSGF_BV_13_SPATEM () runs on ItsMapemSpatem {
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
// Wait for SPATEM sent
tc_ac.start(2.0);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatem_intersections(
{mw_IntersectionState(
?, //IntersectionReferenceID p_id
-, //MsgCount p_revision
-, //IntersectionStatusObject p_status
{mw_movementEvent( //MovementEventList,
-,
-,//timing
{mw_advisorySpeed( //speeds
greenwave,//type (greenwave (1))
? //speed
)}
)}
)}
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received SAPTEM PDU header. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
/**
*/
// Local variables
var ItsMapemSpatem v_mapem;
var ItsMapemSpatem v_spatem;
if (not (PICS_SPATEM_GENERATION and PICS_SPATEM_HAS_EGRESS_QUEUE)) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION AND PICS_SPATEM_PEDESTRIAN_MANOEUVRES required for executing the TC ***");
// Test component configuration
// Preamble
// Start components
v_mapem := f_getComponent(c_compMap);
v_spatem := f_getComponent(c_compSpat);
v_mapem.start(f_IS_TLM_GEN_MSGF_BV_14_MAPEM());
v_spatem.start(f_IS_TLM_GEN_MSGF_BV_14_SPATEM());
Bostjan Pintar
committed
// Synchronization
f_serverSync2ClientsAndStop({c_prDone, c_tbDone});
Bostjan Pintar
committed
Bostjan Pintar
committed
Bostjan Pintar
committed
/**
* @desc TP Function for TC_IS_TLM_GEN_MSGF_BV_14_MAPEM
Bostjan Pintar
committed
*/
function f_IS_TLM_GEN_MSGF_BV_14_MAPEM () runs on ItsMapemSpatem {
// Local variables
var MapemInd v_mapem;
Bostjan Pintar
committed
// Preamble
f_prInitialState();
f_awaitMapeMessage(
mw_mapemInd(
mw_mapemPdu(
mw_mapem(
{mw_intersectionGeometry(
-,
-,
{mw_roadLane(
-,//laneID
?,//laneAttributes
-,//p_ingressApproach
-,//egressApproach
? //connectsTo
)}
)}
)
)),
v_mapem
);
v_id := v_mapem.msgIn.map_.intersections[0].id;
log("IntersectionReferenceID = ", v_id);
Bostjan Pintar
committed
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
Bostjan Pintar
committed
Bostjan Pintar
committed
/**
* @desc TP Function for TC_IS_TLM_GEN_MSGF_BV_14_SPATEM
Bostjan Pintar
committed
*/
function f_IS_TLM_GEN_MSGF_BV_14_SPATEM () runs on ItsMapemSpatem {
Bostjan Pintar
committed
Bostjan Pintar
committed
// Preamble
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
Bostjan Pintar
committed
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
// Wait for SPATEM sent
tc_ac.start(2.0);
// Test Body
tc_ac.start;
Bostjan Pintar
committed
alt {
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatem_intersections(
?, //IntersectionReferenceID p_id
-, //MsgCount p_revision
-, //IntersectionStatusObject p_status
-,
{mw_connectionManeuverAssist_queueAndAvailableStorageLength}
)}
)
)
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received SAPTEM PDU header. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
Bostjan Pintar
committed
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
Bostjan Pintar
committed
} // End of group spateMessageFormat
Bostjan Pintar
committed
/**
* @desc TP Function for f_IS_TLM_GEN_EVGN_BV_01
*/
function f_IS_TLM_GEN_EVGN_BV_01() runs on ItsMapemSpatem {
// Local variables
Bostjan Pintar
committed
// Test control
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
setverdict(inconc);
stop;
}
Bostjan Pintar
committed
// Test component configuration
f_cfUp();
Bostjan Pintar
committed
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatemWellFormatted
))) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received well-formed SPATEM. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Received a SPATEM with incorrect information. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
Bostjan Pintar
committed
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_EVGN_BV_01
/**
* @desc TP Function for f_IS_TLM_GEN_EVGN_BV_02
*/
function f_IS_TLM_GEN_EVGN_BV_02() runs on ItsMapemSpatem {
// Local variables
var SpatemInd v_spatem;
// Test control
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
setverdict(inconc);
stop;
}
// Test component configuration
f_cfUp();
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
f_awaitSpateMessage(
mw_spatemInd(
mw_spatemPdu(
mw_spatemWellFormatted
)
),
v_spatem
);
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
f_utTriggerEvent(m_utTriggerEvent(spatProfile0)); // FIXME Add parameters to update default profile or create a MamSpatUpdate message
tc_ac.start;
alt {
[] mapemSpatemPort.receive(v_spatem) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: The same SPATEM was received. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatemWellFormatted
))) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received a new well-formed SPATE message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Received a SPATEM with incorrect information. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_EVGN_BV_02
/**
* @desc TP Function for f_IS_TLM_GEN_EVGN_BV_03
*/
function f_IS_TLM_GEN_EVGN_BV_03() runs on ItsMapemSpatem {
// Local variables
Bostjan Pintar
committed
// Test control
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
setverdict(inconc);
stop;
}
Bostjan Pintar
committed
// Test component configuration
f_cfUp();
Bostjan Pintar
committed
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
mapemSpatemPort.clear;
tc_noac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
))) {
tc_noac.stop;
log("*** " & testcasename() & ": FAIL: No more SPATEM messages were expected. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_noac.timeout {
log("*** " & testcasename() & ": PASS: TLM Service terminated. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
}
// Postamble
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_EVGN_BV_03
/**
* @desc TP Function for f_IS_TLM_GEN_EVGN_BV_04
*/
function f_IS_TLM_GEN_EVGN_BV_04() runs on ItsMapemSpatem {
// Local variables
var SpatemInd v_spatem;
Bostjan Pintar
committed
// Test control
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
setverdict(inconc);
stop;
}
Bostjan Pintar
committed
// Test component configuration
f_cfUp();
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
f_awaitSpateMessage(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
)
),
v_spatem
);
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
f_utTriggerEvent(m_utTriggerEvent(spatProfile0)); // FIXME Add parameters to update default profile or create a MamSpatUpdate message
tc_ac.start;
alt {
[] mapemSpatemPort.receive(v_spatem) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: A different SPATE message was expected. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatemWellFormatted
))) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received a new well-formed SPATE message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Received a SPATEM with incorrect information. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_EVGN_BV_04
group spateCommunication {
Bostjan Pintar
committed
/**
* @desc TP Function for f_IS_TLM_GEN_COM_BV_01
*/
function f_IS_TLM_GEN_COM_BV_01 () runs on ItsMapemSpatem {
// Local variables
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
// Test component configuration
f_cfUp();
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatem_with_region_id
))) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received MAPEM using GBC. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_COM_BV_01
/**
* @desc TP Function for f_IS_TLM_GEN_COM_BV_02_01
*/
function f_IS_TLM_GEN_COM_BV_02_01 () runs on ItsMapemSpatem {
// Local variables
const UInt8 c_gnNhBtpB := 2;
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
// Test component configuration
f_cfUp();
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemIndWithGnParameters(
mw_spatemPdu,
c_gnNhBtpB
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Expected SPATEM encapsultated in BTP-B packet received. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(mw_spatemIndWithGnParameters(mw_spatemPdu(mw_defaultSpatem), omit)) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: no GN NH information in SpatemInd ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
[] mapemSpatemPort.receive(mw_spatemInd(mw_spatemPdu(mw_defaultSpatem))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Expected SPATEM received, but not encapsulated in BTP-B packet ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_COM_BV_02_01
/**
* @desc TP Function for f_IS_TLM_GEN_COM_BV_02
*/
function f_IS_TLM_GEN_COM_BV_02 () runs on ItsMapemSpatem {
// Local variables
const UInt16 c_gnNhBtpBPort := 2004;
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
// Test component configuration
f_cfUp();
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemIndWithBtpParameters(
mw_spatemPdu,
c_gnNhBtpBPort,
0
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Expected SPATEM encapsultated in BTP packet with port value 2004 received. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(mw_spatemInd(mw_spatemPdu(mw_defaultSpatem))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Expected SPATEM received, but not addressed to the correct destination port. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_COM_BV_02
/**
* @desc TP Function for f_IS_TLM_GEN_COM_BV_03
*/
function f_IS_TLM_GEN_COM_BV_03 () runs on ItsMapemSpatem {
// Local variables
const UInt8 c_gnHtGbc := 4;
Bostjan Pintar
committed
if (not PICS_SPATEM_GENERATION) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION required for executing the TC ***");
// Test component configuration
f_cfUp();
// Preamble
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemIndWithGnParameters(
mw_spatemPdu(
mw_spatemWellFormatted
),
-,
c_gnHtGbc
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Expected SPATEM encapsulated in GBC packet received. ***");
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(
mw_spatemIndWithGnParameters(
mw_spatemPdu(
mw_spatemWellFormatted
),
-,
omit
)) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Eno GN HT information in SpatemInd. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] mapemSpatemPort.receive(
mw_spatemInd(
mw_spatemPdu(
mw_spatemWellFormatted
))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Expected SPATEM received, but not encapsulated in GBC packet. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
//f_utTriggerEvent(m_utTriggerEvent(stopTLMService));
f_poDefault();
f_cfDown();
Bostjan Pintar
committed
} // End of function f_IS_TLM_GEN_COM_BV_03
} // End of group spateCommunication
} // End of group spateMessageDissemination
Bostjan Pintar
committed
group spateSecurityParameters {
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
/**
* @desc TP Function for TC_IS_TLM_GEN_SEC_BV_01
*/
function f_IS_TLM_GEN_SEC_BV_01 () runs on ItsMapemSpatem {
// Local variables
var SpatemInd v_spatem;
// Test control
if (not PICS_SPATEM_GENERATION or not PICS_IS_IUT_SECURED) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION and PICS_IS_IUT_SECURED required for executing the TC ***");
setverdict(inconc);
stop;
}
// Test component configuration
f_cfUp();
// Preamble
f_prInitialState();
f_awaitSpateMessage(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
)
),
v_spatem
);
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemIndWithSecurityParameters(
mw_spatemPdu,
-,
c_its_aid_SPAT
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Expected secured SPATEM received. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
// Postamble
f_poDefault();
f_cfDown();
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
} // End of function f_IS_TLM_GEN_SEC_BV_01
/**
* @desc TP Function for TC_IS_TLM_GEN_SEC_BV_02
*/
function f_IS_TLM_GEN_SEC_BV_02 () runs on ItsMapemSpatem {
// Local variables
var SpatemInd v_spatem;
// Test control
if (not PICS_SPATEM_GENERATION or not PICS_IS_IUT_SECURED) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION and PICS_IS_IUT_SECURED required for executing the TC ***");
setverdict(inconc);
stop;
}
// Test component configuration
f_cfUp();
// Preamble
f_prInitialState();
f_awaitSpateMessage(
mw_spatemInd(
mw_spatemPdu(
mw_defaultSpatem
)
),
v_spatem
);
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_spatemIndWithSecurityParameters(
mw_spatemPdu,
-,
c_its_aid_SPAT
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Expected secured SPATEM received. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
// Postamble
f_poDefault();
f_cfDown();
} // End of function f_IS_TLM_GEN_SEC_BV_02
/**
* @desc TP Function for TC_IS_TLM_GEN_SSP_BV_01
*/
function f_IS_TLM_GEN_SSP_BV_01 () runs on ItsMapemSpatem {
// Local variables
var SpatemInd v_spatem;
// Test control
if (not PICS_SPATEM_GENERATION or not PICS_IS_IUT_SECURED) {
log("*** " & testcasename() & ": PICS_SPATEM_GENERATION and PICS_IS_IUT_SECURED required for executing the TC ***");
setverdict(inconc);
stop;
}
// Test component configuration
f_cfUp();
Bostjan Pintar
committed
// Preamble
f_prInitialState("CERT_SPAT_SSP_NONE");
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
f_utTriggerEvent(m_utTriggerEvent(spatProfile0));