6.3.2 Handler Integrity
3GPP51.013Release 17Test specification for Subscriber Identity Module (SIM) Application Programming Interface (API) for Java CardTS
6.3.2.1 ProactiveHandler
Test Area Reference: FWK_HIN_PAHD
6.3.2.1.1 Conformance Requirement
6.3.2.1.1.1 Normal Execution
- CRRN1: At the processToolkit invocation the TLV-List is cleared.
- CRRN2: After a call to ProactiveHandler.send method the handler will remain unchanged until the ProactiveHandler.init or appendTLV method are called.
6.3.2.1.1.2 Parameters error
No requirements.
6.3.2.1.1.3 Context Errors
No requirements.
6.3.2.1.2 Test Suite Files:
Test Script: FWK_HIN_PAHD_1.scr
Test Applet: FWK_HIN_PAHD_1.java
FWK_HIN_PAHD_2.java
Load Script: FWK_HIN_PAHD_1.ldr
Cleanup Script: FWK_HIN_PAHD_1.clr
Parameter File: FWK_HIN_PAHD_1.par
6.3.2.1.3 Test Procedure
|
Id |
Description |
API/Framework Expectation |
APDU Expectation |
|---|---|---|---|
|
1 |
At the processToolkit invocation the TLV-List is cleared Applet1 and Applet2 are registered to EVENT_UNFORMATTED_SMS_PP_ENV. 1-An envelope containing an unformatted sms pp is sent to the SIM 2-ProactiveHandler.getLength() method is called by Applet1 |
1- Applet1 is triggered. 2- The return value is 0 |
|
|
2 |
TLV-List change after the init method invocation ProactiveHandler.init() method is called by Applet1 1-ProactiveHandler.getLength() method is called by Applet1 |
1- The return value is 9 |
|
|
3 |
The TLV-List remains unchanged after the send() method invocation 1-ProactiveHandler.send() method is called by Applet1 2-ProactiveHandler.getLength() method is called by Applet1 It’s checked that the content is the same than before the calling to send method using ProactiveHandler.copyValue and Util.arrayCompare methods |
2- The return value is 9, and its contents is the same than before the calling to send method |
1- The proactive command is fetched and the terminal response is issued. |
|
4 |
At the processToolkit invocation the TLV-List is cleared 1-ProactiveHandler.getLength() method is called by Applet2 2-ProactiveHandler.getValueLength() method is called by Applet2 |
1- Applet2 is triggered 2- The return value is 0 3- ToolkitException UNAVAILABLE_ELEMENT is thrown |
6.3.2.1.4 Test Coverage
|
CRR Number |
Test Case Number |
|---|---|
|
CRRN1 |
1, 2, 3, 4 |
|
CRRN2 |
3 |
6.3.2.2 ProactiveResponseHandler
Test Area Reference: FWK_HIN_PRHD
6.3.2.2.1 Conformance Requirement
6.3.2.2.1.1 Normal Execution
- CRRN1: The ProactiveResponseHandler content is changed after the call to ProactiveHandler.send method and remains unchanged until next call to the ProactiveHandler.send method.
- CRRN2: The ProactiveResponseHandler may not be available before the first call to ProactiveHandler.send method, if available the content is cleared.
6.3.2.2.1.2 Parameters error
No requirements.
6.3.2.2.1.3 Context Errors
No requirements.
6.3.2.2.2 Test Suite Files
Test Script: FWK_HIN_PRHD_1.scr
Test Applet: FWK_HIN_PRHD_1.java
Load Script: FWK_HIN_PRHD_1.ldr
Cleanup Script: FWK_HIN_PRHD_1.clr
Parameter File: FWK_HIN_PRHD_1.par
6.3.2.2.3 Test Procedure
|
Id |
Description |
API/Framework Expectation |
APDU Expectation |
|---|---|---|---|
|
1 |
Applet registration and ProactiveResponseHandler obtaining 1-Applet is registered to all events defined in [7]. Using the methods initMenuEntry for EVENT_MENU_SELECTION, requestPollInterval() for EVENT_STATUS_COMMAND, allocateTimer() for EVENT_TIMER_EXPIRATION and setEventList() for the rest of the events. Terminal Profile command is sent to the SIM without the facilities of SET_EVENT_LIST ,SETUP_IDLE_MODE_TEXT, SETUP_MENU and POLL_INTERVAL. For each event: 2-ProactiveResponseHandler.getTheHandler() is called If handler is available, ProactiveResponseHandler.getLength() is called |
1- No exception is thrown 2- Applet is triggered. 3- Behaviour 1: Toolkit Exception HANDLER_NOT_AVAILABLE is thrown. Behaviour 2: No exception is thrown, the return value is 0 |
|
|
2 |
The ProactiveResponseHandler remains unchanged after send method invocation until next send method invocation 1-Applet builds a proactive command ProactiveHandler.send() method is called 2-ProactiveResponseHandler.getLength() method is called 3-ProactiveHandler.init() method is called 4-ProactiveHandler.send() method is called 5-ProactiveResponseHandler.getLength() method is called |
1- The ProactiveResponseHandler contains the terminal response 3- The return value is 12 4- No exception is thrown and the Proactive Response Handler remains unchanged 5- The ProactiveResponseHandler contains the terminal response of the second proactive command 7- The return value is 15 |
2- A proactive command is fetched The terminal response is sent with length 12 6- A proactive command is fetched The terminal response is sent with length 15 |
6.3.2.2.4 Test Coverage
|
CRR Number |
Test Case Number |
|---|---|
|
CRRN1 |
1, 2 |
|
CRRN2 |
1 |
6.3.2.3 EnvelopeHandler
Test Area Reference: FWK_HIN_ENHD
6.3.2.3.1 Conformance Requirement
6.3.2.3.1.1 Normal Execution
- CRRN1: The EnvelopeHandler and its content are available for all triggered toolkit applets, from the invocation to the termination of their processToolkit method
- CRRN2: The SIM Toolkit Framework guarantees that all triggered toolkit applets receive the data.
- CRRN3: The SIM Toolkit Framework shall convert the Update Record EFsms in the EnvelopeHandler TLV List containing Device Identities TLV, Address TLV and SMS TPDU TLV.
- CRRN4: The getEnvelopeTag() method shall return BTAG_SMS_PP_DOWNLOAD.
- CRRN5: The getLength() method shall return the Simple TLV list length.
- CRRN6 The Device Identity Simple TLV is used to store the information about the absolute record number in the EFsms file and the value of the EFsms record status byte.
6.3.2.3.1.2 Parameters error
No requirements.
6.3.2.3.1.3 Context Errors
No requirements.
6.3.2.3.2 Test Suite Files
Test Script: FWK_HIN_ENHD_1.scr
Test Applet: FWK_HIN_ENHD_1.java
Load Script: FWK_HIN_ENHD_1.ldr
Cleanup Script: FWK_HIN_ENHD_1.clr
Parameter File: FWK_HIN_ENHD_1.par
6.3.2.3.3 Test Procedure
|
Id |
Description |
API/Framework Expectation |
APDU Expectation |
|---|---|---|---|
|
1 |
Applet initialization and Envelope Handler integrity checks with EVENT_MENU_SELECTION_HELP_REQUEST 1- Applet is registered to all events defined in TS 43.019 [7] except EVENT_PROFILE_DOWNLOAD and EVENT_STATUS_COMMAND. Using the methods initMenuEntry() for EVENT_MENU_SELECTION, allocateTimer()for EVENT_TIMER_EXPIRATION, and setEventList() for the rest of the events. Perform SIM initialization with all the facilities supported 2-Envelope menu selection with help request is sent to the SIM 3-EnvelopeHandler.getTheHandler() method is called 4-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_HELP_REQUEST 5-A proactive command DISPLAY TEXT is sent 6-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 7- It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. Check that the TAG_HELP_REQUEST is the TLV selected 8-The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1-No exception is thrown 2- Applet is triggered 3- No exception is thrown. 4- No exception is thrown 6- Applet is triggered 7- No exception is thrown and the handler contains the envelope call control by SIM 8- The contents of the envelope handler shall be the same as stored in buffer 1 |
5- 91 xx. A proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
2 |
Envelope Handler integrity checks with EVENT_MENU_SELECTION 1-An envelope menu selection is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_ITEM_IDENTIFIER 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6- It’s checked the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_ITEM_IDENTIFIER is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
3 |
Envelope Handler integrity checks with EVENT_FORMATTED_SMS_PP_ENV 1-A formatted sms pp envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy( ) The EnvelopeHandler.findTLV() method is called with TAG_SMS_TPDU 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy( ) and Util.arrayCompare methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_SMS_TPDU is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
4 |
Envelope Handler integrity checks with EVENT_UNFORMATTED_SMS_PP_ENV 1-A unformatted sms pp envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy( ) The EnvelopeHandler.findTLV method is called with TAG_DEVICE_IDENTITIES 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_DEVICE_IDENTITIES is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1. |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
5 |
Envelope Handler integrity checks with EVENT_UNFORMATTED_SMS_CB 1-A unformatted cellbroadcast envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_CELLBROADCAST_PAGE 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_CELLBROADCAST_PAGE is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1. |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
6 |
Envelope Handler integrity checks with EVENT_TIMER_EXPIRATION 1-A timer expiration envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_TIMER_ID 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_TIMER_ID is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
7 |
Envelope Handler integrity checks with EVENT_CALL_CONTROL_BY_SIM 1-A call control envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_ADDRESS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_ADDRESS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
8 |
Envelope Handler integrity checks with EVENT_ MO_SHORT_MESSAGE_CONTROL_BY_SIM 1-A mo short message control by sim envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_ADDRESS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_ADDRESS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1. |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
9 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_MT_CALL 1-A event download mt call envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_ADDRESS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_ADDRESS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
10 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_CALL_CONNECTED 1-A event download call connected envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_ADDRESS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_ADDRESS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1. |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
11 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_CALL_DISCONNECTED 1-A event download call disconnected envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_ADDRESS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_ADDRESS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1. |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
12 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_LOCATION_STATUS 1-A event download location status envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_LOCATION_STATUS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_LOCATION_STATUS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4-91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
13 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_USER_ACTIVITY 1-A event download user activity envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_DEVICE_IDENTITIES is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
14 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_IDLE_SCREEN_AVAILABLE 1-A event download idle screen available envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_DEVICE_IDENTITIES is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
15 |
Envelope Handler integrity checks with EVENT_ EVENT_DOWNLOAD_CARD_READER_STATUS 1-A event download card reader status envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_CARD_READER_STATUS 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES It’s checked that the TAG_CARD_READER_STATUS is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
16 |
Envelope Handler integrity checks with UNRECOGNIZED_ENVELOPE 1-A unrecognized envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called The EnvelopeHandler.getValueLength() is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
17 |
Envelope Handler integrity checks with EVENT_EVENT_DOWNLOAD_LANGUAGE_SELECTION 1-A event download language selection envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_EVENT_LIST 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_EVENT_LIST is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2-No exception is thrown. 3-No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4-91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
18 |
Envelope Handler integrity checks with EVENT_EVENT_DOWNLOAD_BROWSER_TERMINATION 1-A event download browser termination envelope is sent to SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy() The EnvelopeHandler.findTLV() method is called with TAG_EVENT_LIST 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_EVENT_LIST is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2-No exception is thrown. 3-No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4-91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
19 |
Envelope Handler integrity checks with EVENT_FORMATTED_SMS_PP_UPD 1-Update Record EFsms instruction single and formatted is sent to the SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy( ) The EnvelopeHandler.findTLV() method is called with TAG_SMS_TPDU 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy( ) and Util.arrayCompare methods The EnvelopeHandler.findTLV() method is called with TAG_SMS_TPDU Call Control execution is finished. It’s checked that the TAG_SMS_TPDU is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1 |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
20 |
Envelope Handler integrity checks with EVENT_UNFORMATTED_SMS_PP_UPD 1- Update Record EFsms instruction single and unformatted is sent to the SIM 2-EnvelopeHandler.getTheHandler() method is called 3-Copy the contents of the envelope handler in buffer 1 using EnvelopeHandler.copy( ) The EnvelopeHandler.findTLV method is called with TAG_SMS_TPDU 4-A proactive command DISPLAY TEXT is sent 5-Envelope call control by sim is sent to SIM EnvelopeHandler.getTheHandler() method is called 6-It’s checked that the contents of the envelope handler is the envelope call control using EnvelopeHandler.copy() and Util.arrayCompare() methods The EnvelopeHandler.findTLV() method is called with TAG_DEVICE_IDENTITIES Call Control execution is finished. It’s checked that the TAG_DEVICE_IDENTITIES is the TLV selected 7- The contents of EnvelopeHandler are compared with buffer1 using Util.arrayCompare() |
1- Applet is triggered 2- No exception is thrown. 3- No exception is thrown. 5- Applet is triggered 6- No exception is thrown and the handler contains the envelope call control by SIM 7- The contents of the envelope handler shall be the same as stored in buffer 1. |
4- 91 XX Proactive command Display Text is fetched The terminal Response of DISPLAY TEXT is sent to the SIM |
|
21 |
Check the TLV list conversion for EVENT_FORMATTED_SMS_PP_UPD 1- An EVENT_FORMATTED_SMS_PP_UPD is sent to the SIM. 2- The findTLV(tag == device identities Tag) is called. 3- The getValueByte(offset == 0) is called. 4- The getValueByte(offset == 1) is called. 5- The findTLV(tag == address Tag) is called. 6- Check the content 7- The findTLV(tag == SMS TPDU Tag) is called. 8- Check the content |
1- Applet is triggered 2- No exception is thrown. 3- return the absolute record. 4- return the record status 5- No exception is thrown. 7- No exception is thrown. |
|
|
22 |
Check TLV list conversion for EVENT_FORMATTED_SMS_PP_UPD 1- The getLength() method is called |
1. return the Simple TLV list length |
|
|
23 |
Check TLV list conversion for EVENT_FORMATTED_SMS_PP_UPD 1- The getEnvelopeTag() method is called |
1- return BTAG_SMS_PP_DOWNLOAD |
|
|
24 |
Check the TLV list conversion for EVENT_UNFORMATTED_SMS_PP_UPD 1- An EVENT_UNFORMATTED_SMS_PP_UPD is sent to the SIM. 2- The findTLV(tag == device identities Tag) is called. 3- The getValueByte(offset == 0) is called. 4- The getValueByte(offset == 1) is called. 5- The findTLV(tag == address Tag) is called. 6- Check the content 7- The findTLV(tag == SMS TPDU Tag) is called. 8- Check the content |
1- Applet is triggered 2- No exception is thrown. 3- return the absolute record. 4- return the record status 5- No exception is thrown. 7- No exception is thrown. |
|
|
25 |
Check TLV list conversion for EVENT_UNFORMATTED_SMS_PP_UPD 1- The getLength() method is called |
1. return the Simple TLV list length |
|
|
26 |
Check TLV list conversion for EVENT_UNFORMATTED_SMS_PP_UPD 1- The getEnvelopeTag() method is called |
1- return BTAG_SMS_PP_DOWNLOAD |
6.3.2.3.4 Test Coverage
|
CRR Number |
Test Case Number |
|---|---|
|
CRRN1 |
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 |
|
CRRN2 |
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 |
|
CRRN3 |
21, 24 |
|
CRRN4 |
22, 25 |
|
CRRN5 |
23, 26 |
|
CRRN6 |
21, 24 |
6.3.2.4 EnvelopeResponseHandler
Test Area Reference: FWK_HIN_ERHD
6.3.2.4.1 Conformance Requirement
6.3.2.4.1.1 Normal Execution
- CRRN1: At the processToolkit invocation the TLV-List is cleared.
6.3.2.4.2 Test Suite Files:
Test Script: FWK_HIN_ERHD_1.scr
Test Applet: FWK_HIN_ERHD_1.java
Load Script: FWK_HIN_ERHD_1.ldr
Cleanup Script: FWK_HIN_ERHD_1.clr
Parameter File: FWK_HIN_ERHD_1.par
6.3.2.4.3 Test Procedure
|
Id |
Description |
API/Framework Expectation |
APDU Expectation |
|---|---|---|---|
|
1 |
Applet1 is registered to EVENT_UNRECOGNIZED_ENVELOPE. |
||
|
1-An unrecognised envelope is sent to the SIM |
1- Applet 1 is triggered. |
||
|
2- EnvelopeResponseHandler.getTheHandler()is called by the Applet1. |
|||
|
3- EnvelopeResponseHandler.getLength() method is called by Applet1 |
2- The return value shall be 0. |
6.3.2.4.4 Test Coverage
|
CRR Number |
Test Case Number |
|---|---|
|
CRRN1 |
1 |