源码对照:4.2.15.2.1
ES10b 拉取通知列表 / TC_eUICC_ES10b.RetrieveNotificationsList
左侧为人工切片入口(-man,来自 原料/切片 的最小可执行脚本),右侧为 Cas 盲生成入口(-cas,仅依据规范生成)。文件按原始编码(多为 GBK)解码为 UTF-8 显示,行号自 1 起;字节级原文与 sha256 见两侧脚本包。完整 unified diff 见本页底部折叠区,以及 报告原文 §4。
-man 入口
Import/TestCase_SGP_23.js
2977 行 / 188257 字符 / gb18030
-cas 入口
TC_eUICC_ES10b_RetrieveNotificationsList/Import/TC_eUICC_ES10b_RetrieveNotificationsList.js
2579 行 / 245160 字符 / gb18030
默认折行显示长行;取消勾选可横向滚动查看原始行宽
-man 人工切片Import/TestCase_SGP_23.js2977 行 / 188257 字符 / gb18030入口函数 @L3
1// slice of Import\TestCase_SGP_23.js - cases: TC_eUICC_ES10b_RetrieveNotificationsList_01_Nominal_Retrieve_by_Sequence_Number_for_Install_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_02_Nominal_Retrieve_by_Sequence_Number_for_Enable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_03_Nominal_Retrieve_by_Sequence_Number_for_Disable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_04_Nominal_Retrieve_by_Sequence_Number_for_Delete_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_05_Nominal_Retrieve_by_Sequence_Number_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses + TC_eUICC_ES10b_RetrieveNotificationsList_06_Nominal_Retrieve_by_Sequence_Number_for_Install_PIR_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_07_Nominal_Retrieve_by_Sequence_Number_for_Disable_and_Delete_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_08_Nominal_Retrieve_by_Sequence_Number_for_Install_OtherSignedNotification_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_09_Nominal_Retrieve_by_Sequence_Number_for_Enable_and_Install_PIR_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_10_Nominal_Retrieve_Sequence_Numbers_that_are_not_present + TC_eUICC_ES10b_RetrieveNotificationsList_11_Nominal_Retrieve_by_Notification_Type_for_Install_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_12_Nominal_Retrieve_by_Notification_Type_for_Enable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_13_Nominal_Retrieve_by_Notification_Type_for_Disable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_14_Nominal_Retrieve_by_Notification_Type_for_Delete_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_15_Nominal_Retrieve_by_Notification_Type_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses + TC_eUICC_ES10b_RetrieveNotificationsList_16_Nominal_Retrieve_by_Notification_Type_for_Install_PIR_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_17_Nominal_Retrieve_by_Notification_Type_for_Disable_and_Delete_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_18_Nominal_Retrieve_by_Notification_Type_for_Install_OtherSignedNotification_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_19_Nominal_Retrieve_by_Notification_Type_for_Enable_and_Install_PIR_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_20_Nominal_Retrieve_by_Notification_Type_for_No_Notifications_available (extracted verbatim)
2
3function TC_eUICC_ES10b_RetrieveNotificationsList_01_Nominal_Retrieve_by_Sequence_Number_for_Install_Notification()
4{
5 Remove_All_the_Notification();
6
7 tracenamestr = "Install PROFILE_OPERATIONAL1. Do not remove both the notifications. ";
8 curDis.TraceStart(sno++,tracenamestr);
9
10 curLogicChannel = 0;
11
12 curDis.TestStepStart("eUICC卡片初始化;");
13 Ini_powerOn_eUICC_LPAe_not_activate();
14
15 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
16 TS_MANAGE_CHANNEL_OPEN();
17
18 curLogicChannel = 1;
19
20 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
21 TS_SELECT("Select ISD",ISD_R_AID,"9000");
22
23 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
24 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
25 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
26 Profile_load_procedure.ES10b_GetEUICCInfo1();
27
28
29 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
30 Profile_load_procedure.ES10b_GetEUICCChallenge();
31
32 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
33 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
34 Profile_load_procedure.ES10b_AuthenticateServer();
35
36 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
37 Profile_load_procedure.ES10b_PrepareDownload();
38
39 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
40 Profile_load_procedure.ES10b_GetEID();
41
42 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
43 Profile_load_procedure.serviceProviderName = SP_NAME1;
44 Profile_load_procedure.profileName = NAME_OP_PROF1;
45 Profile_load_procedure.iconType = "01";
46 Profile_load_procedure.icon = ICON_OP_PROF1;
47 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
48 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
49 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "04F0";//NotificationEvent ::= BIT STRING { notificationInstall(0), notificationEnable(1), notificationDisable(2), notificationDelete(3) }
50 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
51 Profile_load_procedure.profileClass = "02";
52 Profile_load_procedure.mccMnc = MCC_MNC1;
53 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
54
55
56 tracenamestr = "Retrieve by Sequence Number for Install Notification";
57 curDis.TraceStart(sno++,tracenamestr);
58
59 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
60 Profile_load_procedure.ES10b_ListNotification("04F0");
61 try
62 {
63 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
64 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
65 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
66
67 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
68 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
69 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
70 }catch(e){
71 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
72 }
73
74 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
75 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
76 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
77 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
78
79 try
80 {
81 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
82 {
83 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
84 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
85 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
86 }
87 else
88 {
89 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
90 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
91 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
92 }
93
94 }catch(e){
95 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
96 }
97
98 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
99 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
100 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
101 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
102
103 try
104 {
105 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
106 {
107 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
108 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
109 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
110 }
111 else
112 {
113 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
114 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
115 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
116 }
117 }catch(e){
118 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
119 }
120
121 tracenamestr = "DELETE PROFILE_OPERATIONAL1 ";
122 curDis.TraceStart(sno++,tracenamestr);
123
124 curLogicChannel = 0;
125 curDis.TestStepStart2(stno++,"复位;");
126 ResetCard();
127
128 curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
129 TS_TERMINAL_CAPABILITY_cmd();
130
131 curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
132 TS_MANAGE_CHANNEL_OPEN();
133
134 curLogicChannel = 1;
135 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
136 TS_SELECT("Select ISD",ISD_R_AID,"9000");
137
138 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
139 var deleProfileRequest = new DeleteProfileRequest();
140 deleProfileRequest.iccid = ICCID_OP_PROF1;
141 deleProfileRequest.GenHexData();
142 var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
143
144 curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
145
146 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
147 var proInfoListRequest = new ProfileInfoListRequest();
148 proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
149 proInfoListRequest.tagList = "5A4F9F70";
150 proInfoListRequest.GenHexData();
151 var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
152
153 var proInfoListResponse = new ProfileInfoListResponse();
154 proInfoListResponse.checkCardResDataFormat(respData);
155
156 try
157 {
158 curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
159 }catch(e){
160 obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
161 }
162
163 RecoverCard();
164}
165
166function TC_eUICC_ES10b_RetrieveNotificationsList_02_Nominal_Retrieve_by_Sequence_Number_for_Enable_Notification()
167{
168 Remove_All_the_Notification();
169
170 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
171
172
173 Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
174
175 tracenamestr = "Retrieve by Sequence Number for Enable Notification";
176 curDis.TraceStart(sno++,tracenamestr);
177
178 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
179 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
180 Profile_load_procedure.ES10b_ListNotification("04F0");
181 try
182 {
183 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
184 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
185 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
186
187 }catch(e){
188 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
189 }
190
191
192 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
193 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
194 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
195 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
196 try
197 {
198 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
199 {
200 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
201 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
202 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
203 }
204 else
205 {
206 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
207 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
208 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
209 }
210
211 }catch(e){
212 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
213 }
214
215
216 tracenamestr = "DISABLE PROFILE_OPERATIONAL1 ";
217 curDis.TraceStart(sno++,tracenamestr);
218 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DisableProfileRequest,refreshFlag为FF;");
219 var disableProRequest = new DisableProfileRequest();
220 disableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
221 disableProRequest.refreshFlag = BooleanValue_BerCode_True;
222 disableProRequest.GenHexData();
223 var respData = LPAd_Transport_data_to_eUICC(disableProRequest.hexData,"91","00","91XX");
224
225 curStrHandle.CheckData("BF3203800100", respData, "DisableProfileResponse");
226
227
228 tracenamestr = "DELETE PROFILE_OPERATIONAL1 ";
229 curDis.TraceStart(sno++,tracenamestr);
230
231 curLogicChannel = 0;
232 curDis.TestStepStart2(stno++,"复位;");
233 ResetCard();
234
235 curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
236 TS_TERMINAL_CAPABILITY_cmd();
237
238 curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
239 TS_MANAGE_CHANNEL_OPEN();
240
241 curLogicChannel = 1;
242 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
243 TS_SELECT("Select ISD",ISD_R_AID,"9000");
244
245 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
246 var deleProfileRequest = new DeleteProfileRequest();
247 deleProfileRequest.iccid = ICCID_OP_PROF1;
248 deleProfileRequest.GenHexData();
249 var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
250
251 curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
252
253 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
254 var proInfoListRequest = new ProfileInfoListRequest();
255 proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
256 proInfoListRequest.tagList = "5A4F9F70";
257 proInfoListRequest.GenHexData();
258 var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
259
260 var proInfoListResponse = new ProfileInfoListResponse();
261 proInfoListResponse.checkCardResDataFormat(respData);
262
263 try
264 {
265 curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
266 }catch(e){
267 obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
268 }
269
270
271 RecoverCard();
272}
273
274function TC_eUICC_ES10b_RetrieveNotificationsList_03_Nominal_Retrieve_by_Sequence_Number_for_Disable_Notification()
275{
276 Remove_All_the_Notification();
277
278 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
279
280 Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
281
282 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
283
284 tracenamestr = "Disable PROFILE_OPERATIONAL1. Do not Remove the Notification. ";
285 curDis.TraceStart(sno++,tracenamestr);
286
287 curLogicChannel = 1;
288
289 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
290 TS_SELECT("Select ISD",ISD_R_AID,"9000");
291
292 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DisableProfileRequest;");
293 var disableProRequest = new DisableProfileRequest();
294 disableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
295 disableProRequest.refreshFlag = "00";
296 disableProRequest.GenHexData();
297 var respData = LPAd_Transport_data_to_eUICC(disableProRequest.hexData);
298
299 curStrHandle.CheckData("BF3203800100", respData, "DisableProfileResponse");
300
301
302 tracenamestr = "Retrieve by Sequence Number for Disable Notification";
303 curDis.TraceStart(sno++,tracenamestr);
304
305 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
306 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
307 Profile_load_procedure.ES10b_ListNotification("04F0");
308 try
309 {
310 curStrHandle.CheckData("0520",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
311 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
312 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
313
314 }catch(e){
315 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
316 }
317
318
319 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
320 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
321 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
322 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
323
324 try
325 {
326 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profInstallationResult)
327 {
328 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
329 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
330 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
331 }
332 else
333 {
334 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
335 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
336 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
337 }
338
339 }catch(e){
340 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
341 }
342
343 tracenamestr = "DELETE PROFILE_OPERATIONAL1 ";
344 curDis.TraceStart(sno++,tracenamestr);
345
346 curLogicChannel = 0;
347 curDis.TestStepStart2(stno++,"复位;");
348 ResetCard();
349
350 curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
351 TS_TERMINAL_CAPABILITY_cmd();
352
353 curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
354 TS_MANAGE_CHANNEL_OPEN();
355
356 curLogicChannel = 1;
357 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
358 TS_SELECT("Select ISD",ISD_R_AID,"9000");
359
360 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
361 var deleProfileRequest = new DeleteProfileRequest();
362 deleProfileRequest.iccid = ICCID_OP_PROF1;
363 deleProfileRequest.GenHexData();
364 var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
365
366 curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
367
368 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
369 var proInfoListRequest = new ProfileInfoListRequest();
370 proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
371 proInfoListRequest.tagList = "5A4F9F70";
372 proInfoListRequest.GenHexData();
373 var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
374
375 var proInfoListResponse = new ProfileInfoListResponse();
376 proInfoListResponse.checkCardResDataFormat(respData);
377
378 try
379 {
380 curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
381 }catch(e){
382 obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
383 }
384
385 RecoverCard();
386}
387
388function TC_eUICC_ES10b_RetrieveNotificationsList_04_Nominal_Retrieve_by_Sequence_Number_for_Delete_Notification()
389{
390 Remove_All_the_Notification();
391
392 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
393
394 Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
395
396 Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
397
398 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
399
400 tracenamestr = "Delete PROFILE_OPERATIONAL1. Do not Remove the Notification. ";
401 curDis.TraceStart(sno++,tracenamestr);
402
403 curLogicChannel = 1;
404
405 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
406 TS_SELECT("Select ISD",ISD_R_AID,"9000");
407
408 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
409 var deleProfileRequest = new DeleteProfileRequest();
410 deleProfileRequest.iccid = ICCID_OP_PROF1;
411 deleProfileRequest.GenHexData();
412 var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
413
414 curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
415
416 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
417 var proInfoListRequest = new ProfileInfoListRequest();
418 proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
419 proInfoListRequest.tagList = "5A4F9F70";
420 proInfoListRequest.GenHexData();
421 var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
422
423 var proInfoListResponse = new ProfileInfoListResponse();
424 proInfoListResponse.checkCardResDataFormat(respData);
425
426 try
427 {
428 curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
429 }catch(e){
430 obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
431 }
432
433 tracenamestr = "Retrieve by Sequence Number for Delete Notification";
434 curDis.TraceStart(sno++,tracenamestr);
435
436 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
437 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
438 Profile_load_procedure.ES10b_ListNotification("04F0");
439 try
440 {
441 curStrHandle.CheckData("0410",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
442 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
443 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
444
445 }catch(e){
446 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
447 }
448
449
450 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
451 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
452 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
453 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
454
455 try
456 {
457 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
458 {
459 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
460 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
461 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
462 }
463 else
464 {
465 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
466 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
467 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
468 }
469
470 }catch(e){
471 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
472 }
473
474
475 RecoverCard();
476}
477
478function TC_eUICC_ES10b_RetrieveNotificationsList_05_Nominal_Retrieve_by_Sequence_Number_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses()
479{
480 Remove_All_the_Notification();
481
482 curLogicChannel = 0;
483
484 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
485 curDis.TraceStart(sno++,tracenamestr);
486
487 curDis.TestStepStart("eUICC卡片初始化;");
488 Ini_powerOn_eUICC_LPAe_not_activate();
489
490 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
491 TS_MANAGE_CHANNEL_OPEN();
492
493 curLogicChannel = 1;
494
495 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
496 TS_SELECT("Select ISD",ISD_R_AID,"9000");
497
498 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
499 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
500 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
501 Profile_load_procedure.ES10b_GetEUICCInfo1();
502
503 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
504 Profile_load_procedure.ES10b_GetEUICCChallenge();
505
506 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
507 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
508 Profile_load_procedure.ES10b_AuthenticateServer();
509
510 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
511 Profile_load_procedure.ES10b_PrepareDownload();
512
513 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
514 Profile_load_procedure.ES10b_GetEID();
515
516 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
517 Profile_load_procedure.serviceProviderName = SP_NAME1;
518 Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
519 Profile_load_procedure.iconType = "01";
520 Profile_load_procedure.icon = ICON_OP_PROF1;
521 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
522 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
523 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
524 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
525 Profile_load_procedure.mccMnc = MCC_MNC1;
526 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
527
528
529
530 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
531 curDis.TraceStart(sno++,tracenamestr);
532
533 curLogicChannel = 0;
534
535 curDis.TestStepStart("eUICC卡片初始化;");
536 Ini_powerOn_eUICC_LPAe_not_activate();
537
538 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
539 TS_MANAGE_CHANNEL_OPEN();
540
541 curLogicChannel = 1;
542
543 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
544 TS_SELECT("Select ISD",ISD_R_AID,"9000");
545
546 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
547 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
548 Profile_load_procedure.ICCID = ICCID_OP_PROF2;
549 Profile_load_procedure.ES10b_GetEUICCInfo1();
550
551
552 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
553 Profile_load_procedure.ES10b_GetEUICCChallenge();
554
555
556 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
557 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
558 Profile_load_procedure.ES10b_AuthenticateServer();
559
560 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
561 Profile_load_procedure.ES10b_PrepareDownload();
562
563 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
564 Profile_load_procedure.ES10b_GetEID();
565
566 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
567 Profile_load_procedure.serviceProviderName = SP_NAME2;
568 Profile_load_procedure.profileName = NAME_OP_PROF2;
569 Profile_load_procedure.iconType = "01";
570 Profile_load_procedure.icon = ICON_OP_PROF2;
571 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
572 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
573 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
574 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
575 Profile_load_procedure.profileClass = "02";
576 Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
577 Profile_load_procedure.mccMnc = MCC_MNC2;
578
579 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
580
581 tracenamestr = "Retrieve by Sequence Number for Install Notification";
582 curDis.TraceStart(sno++,tracenamestr);
583
584 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
585 Profile_load_procedure.ES10b_ListNotification("04F0");
586 try
587 {
588 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
589 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
590 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
591
592 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
593 curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
594 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
595
596 }catch(e){
597 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
598 }
599
600
601 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
602 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
603 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
604 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
605
606 try
607 {
608 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
609 {
610 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
611 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
612 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
613 }
614 else
615 {
616 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
617 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
618 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
619 }
620
621 }catch(e){
622 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
623 }
624
625
626 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
627 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
628 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
629 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
630
631 try
632 {
633 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)//获取安装通知
634 {
635 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
636 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
637 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
638 }
639 else
640 {
641 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
642 curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
643 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
644 }
645 }catch(e){
646 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
647 }
648
649
650 RecoverCard();
651}
652
653function TC_eUICC_ES10b_RetrieveNotificationsList_06_Nominal_Retrieve_by_Sequence_Number_for_Install_PIR_and_Enable_Notifications()
654{
655 Remove_All_the_Notification();
656
657 curLogicChannel = 0;
658
659 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
660 curDis.TraceStart(sno++,tracenamestr);
661
662 curDis.TestStepStart("eUICC卡片初始化;");
663 Ini_powerOn_eUICC_LPAe_not_activate();
664
665 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
666 TS_MANAGE_CHANNEL_OPEN();
667
668 curLogicChannel = 1;
669
670 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
671 TS_SELECT("Select ISD",ISD_R_AID,"9000");
672
673 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
674 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
675 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
676 Profile_load_procedure.ES10b_GetEUICCInfo1();
677
678 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
679 Profile_load_procedure.ES10b_GetEUICCChallenge();
680
681 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
682 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
683 Profile_load_procedure.ES10b_AuthenticateServer();
684
685 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
686 Profile_load_procedure.ES10b_PrepareDownload();
687
688 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
689 Profile_load_procedure.ES10b_GetEID();
690
691 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
692 Profile_load_procedure.serviceProviderName = SP_NAME1;
693 Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
694 Profile_load_procedure.iconType = "01";
695 Profile_load_procedure.icon = ICON_OP_PROF1;
696 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
697 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
698 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
699 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
700 Profile_load_procedure.mccMnc = MCC_MNC1;
701 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
702
703
704 tracenamestr = "初始化测试条件:Enable PROFILE_OPERATIONAL1. Do not remove the Notification.";
705 curDis.TraceStart(sno++,tracenamestr);
706
707 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行EnableProfileRequest;");
708 var enableProRequest = new EnableProfileRequest();
709 enableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
710 enableProRequest.refreshFlag = BooleanValue_BerCode_False;
711 enableProRequest.GenHexData();
712 var respData = LPAd_Transport_data_to_eUICC(enableProRequest.hexData);
713
714 curStrHandle.CheckData("BF3103800100", respData, "EnableProfileResponse");
715
716
717 tracenamestr = "Retrieve by Sequence Number for Install (PIR) and Enable Notifications;";
718 curDis.TraceStart(sno++,tracenamestr);
719
720 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
721 Profile_load_procedure.ES10b_ListNotification("04F0");
722 try
723 {
724 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
725 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
726 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
727
728
729 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
730 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
731 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
732
733
734 }catch(e){
735 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
736 }
737
738
739 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
740 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
741 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
742 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
743 try
744 {
745 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
746 {
747 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
748 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
749 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
750 }
751 else
752 {
753 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
754 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
755 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
756 }
757
758 }catch(e){
759 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
760 }
761
762
763 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
764 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
765 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
766 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
767
768 try
769 {
770 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
771 {
772 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
773 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
774 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
775 }
776 else
777 {
778 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
779 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
780 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
781 }
782 }catch(e){
783 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
784 }
785
786
787
788 RecoverCard();
789}
790
791function TC_eUICC_ES10b_RetrieveNotificationsList_07_Nominal_Retrieve_by_Sequence_Number_for_Disable_and_Delete_Notifications()
792{
793 Remove_All_the_Notification();
794
795
796 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
797
798 Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
799
800 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
801
802 tracenamestr = "Disable PROFILE_OPERATIONAL1. Do not remove the Notification. ";
803 curDis.TraceStart(sno++,tracenamestr);
804
805 curLogicChannel = 1;
806
807 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
808 TS_SELECT("Select ISD",ISD_R_AID,"9000");
809
810 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DisableProfileRequest;");
811 var disableProRequest = new DisableProfileRequest();
812 disableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
813 disableProRequest.refreshFlag = "00";
814 disableProRequest.GenHexData();
815 var respData = LPAd_Transport_data_to_eUICC(disableProRequest.hexData);
816
817 curStrHandle.CheckData("BF3203800100", respData, "DisableProfileResponse");
818
819
820 tracenamestr = "Delete PROFILE_OPERATIONAL1. Do not remove the Notification. ";
821 curDis.TraceStart(sno++,tracenamestr);
822
823 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
824 var deleProfileRequest = new DeleteProfileRequest();
825 deleProfileRequest.iccid = ICCID_OP_PROF1;
826 deleProfileRequest.GenHexData();
827 var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
828
829 curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
830
831
832 tracenamestr = "Retrieve by Sequence Number for Disable and Delete Notifications;";
833 curDis.TraceStart(sno++,tracenamestr);
834
835
836 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
837 Profile_load_procedure.ES10b_ListNotification("04F0");
838 try
839 {
840 curStrHandle.CheckData("0520",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
841 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
842 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
843
844 curStrHandle.CheckData("0410",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
845 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
846 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
847 }catch(e){
848 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
849 }
850
851
852 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
853 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
854 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
855 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
856
857 try
858 {
859 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
860 {
861 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
862 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
863 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
864 }
865 else
866 {
867 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
868 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
869 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
870 }
871
872 }catch(e){
873 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
874 }
875
876
877 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
878 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
879 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
880 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
881
882 try
883 {
884 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
885 {
886 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
887 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
888 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
889 }
890 else
891 {
892 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
893 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
894 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
895 }
896 }catch(e){
897 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
898 }
899
900
901 RecoverCard();
902}
903
904function TC_eUICC_ES10b_RetrieveNotificationsList_08_Nominal_Retrieve_by_Sequence_Number_for_Install_OtherSignedNotification_and_Enable_Notifications()
905{
906 Remove_All_the_Notification();
907
908 curLogicChannel = 0;
909
910 tracenamestr = "Install PROFILE_OPERATIONAL1. Remove the PIR notification, but do not remove the OtherSignedNotification.";
911 curDis.TraceStart(sno++,tracenamestr);
912
913 curDis.TestStepStart("eUICC卡片初始化;");
914 Ini_powerOn_eUICC_LPAe_not_activate();
915
916 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
917 TS_MANAGE_CHANNEL_OPEN();
918
919 curLogicChannel = 1;
920
921 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
922 TS_SELECT("Select ISD",ISD_R_AID,"9000");
923
924 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
925 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
926
927 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
928 Profile_load_procedure.ES10b_GetEUICCInfo1();
929
930 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
931 Profile_load_procedure.ES10b_GetEUICCChallenge();
932
933 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
934 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
935 Profile_load_procedure.ES10b_AuthenticateServer();
936
937 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
938 Profile_load_procedure.ES10b_PrepareDownload();
939
940 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
941 Profile_load_procedure.ES10b_GetEID();
942
943 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
944 Profile_load_procedure.serviceProviderName = SP_NAME1;
945 Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
946 Profile_load_procedure.iconType = "01";
947 Profile_load_procedure.icon = ICON_OP_PROF1;
948 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
949 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
950 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "04F0";
951 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
952 Profile_load_procedure.mccMnc = MCC_MNC1;
953 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
954
955 curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
956 TS_SELECT("Select ISD",ISD_R_AID,"9000");
957
958 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
959 Profile_load_procedure.ES10b_ListNotification();
960
961 var NotificationLen = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement.length;
962 for(var i=0;i<(NotificationLen-1);i++)
963 {
964 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行NotificationSentRequest;");
965 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[i].seqNumber;
966 Profile_load_procedure.ES10b_RemoveNotificationFromList(parameter);
967 var deleteNotificationStatus=Profile_load_procedure.notificationSentResponse.deleteNotificationStatus;
968 curStrHandle.CheckData("00", deleteNotificationStatus, "deleteNotificationStatus");
969 }
970
971
972 Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
973
974
975 tracenamestr = "Retrieve by Sequence Number for Install (OtherSignedNotification) and Enable Notifications ;";
976 curDis.TraceStart(sno++,tracenamestr);
977
978
979 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
980 Profile_load_procedure.ES10b_ListNotification("04F0");
981 try
982 {
983 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
984 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
985 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
986
987 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
988 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
989 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
990 }catch(e){
991 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
992 }
993
994
995 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
996 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
997 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
998 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
999
1000 try
1001 {
1002 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1003 {
1004 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1005 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1006 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1007 }
1008 else
1009 {
1010 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1011 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1012 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1013 }
1014
1015 }catch(e){
1016 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1017 }
1018
1019
1020 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
1021 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
1022 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
1023 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1024
1025 try
1026 {
1027 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1028 {
1029 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1030 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1031 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1032 }
1033 else
1034 {
1035 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1036 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1037 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1038 }
1039 }catch(e){
1040 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1041 }
1042
1043
1044 RecoverCard();
1045}
1046
1047function TC_eUICC_ES10b_RetrieveNotificationsList_09_Nominal_Retrieve_by_Sequence_Number_for_Enable_and_Install_PIR_Notifications()
1048{
1049 Remove_All_the_Notification();
1050
1051 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
1052
1053 Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
1054
1055
1056 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
1057 curDis.TraceStart(sno++,tracenamestr);
1058
1059 curLogicChannel = 0;
1060
1061 curDis.TestStepStart("eUICC卡片初始化;");
1062 Ini_powerOn_eUICC_LPAe_not_activate();
1063
1064 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
1065 TS_MANAGE_CHANNEL_OPEN();
1066
1067 curLogicChannel = 1;
1068
1069 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1070 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1071
1072 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
1073 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
1074 Profile_load_procedure.ICCID = ICCID_OP_PROF2;
1075 Profile_load_procedure.ES10b_GetEUICCInfo1();
1076
1077
1078 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
1079 Profile_load_procedure.ES10b_GetEUICCChallenge();
1080
1081
1082 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
1083 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
1084 Profile_load_procedure.ES10b_AuthenticateServer();
1085
1086 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
1087 Profile_load_procedure.ES10b_PrepareDownload();
1088
1089 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
1090 Profile_load_procedure.ES10b_GetEID();
1091
1092 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
1093 Profile_load_procedure.serviceProviderName = SP_NAME2;
1094 Profile_load_procedure.profileName = NAME_OP_PROF2;
1095 Profile_load_procedure.iconType = "01";
1096 Profile_load_procedure.icon = ICON_OP_PROF2;
1097 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
1098 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
1099 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
1100 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
1101 Profile_load_procedure.profileClass = "02";
1102 Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
1103 Profile_load_procedure.mccMnc = MCC_MNC2;
1104
1105 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
1106
1107
1108 tracenamestr = "Retrieve by Sequence Number for Enable_and_Install_PIR_Notifications;";
1109 curDis.TraceStart(sno++,tracenamestr);
1110
1111 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
1112 Profile_load_procedure.ES10b_ListNotification("04F0");
1113 try
1114 {
1115 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
1116 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
1117 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
1118
1119 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
1120 curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
1121 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
1122 }catch(e){
1123 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1124 }
1125
1126
1127 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
1128 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
1129 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
1130 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1131
1132 try
1133 {
1134 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1135 {
1136 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1137 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1138 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1139 }
1140 else//
1141 {
1142 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1143 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1144 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1145 }
1146
1147 }catch(e){
1148 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1149 }
1150
1151
1152 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
1153 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
1154 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
1155 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1156
1157 try
1158 {
1159 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1160 {//
1161 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1162 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1163 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1164 }
1165 else
1166 {
1167 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1168 curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1169 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1170 }
1171 }catch(e){
1172 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1173 }
1174
1175
1176 RecoverCard();
1177}
1178
1179function TC_eUICC_ES10b_RetrieveNotificationsList_10_Nominal_Retrieve_Sequence_Numbers_that_are_not_present ()
1180{
1181
1182 tracenamestr = "Remove Notification";
1183 curDis.TraceStart(sno++,tracenamestr);
1184
1185 curDis.TestStepStart2(stno++,"复位;");
1186 ResetCard();
1187
1188 curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
1189 TS_TERMINAL_CAPABILITY_cmd();
1190
1191 curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
1192 TS_MANAGE_CHANNEL_OPEN();
1193
1194 curLogicChannel = 1;
1195
1196 curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
1197 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1198
1199 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1200 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
1201 Profile_load_procedure.ES10b_ListNotification();
1202
1203 var NotificationLen = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement.length;
1204 for(var i=0;i<NotificationLen;i++)
1205 {
1206 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行NotificationSentRequest;");
1207 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[i].seqNumber;
1208 Profile_load_procedure.ES10b_RemoveNotificationFromList(parameter);
1209 var deleteNotificationStatus=Profile_load_procedure.notificationSentResponse.deleteNotificationStatus;
1210 curStrHandle.CheckData("00", deleteNotificationStatus, "deleteNotificationStatus");
1211 }
1212
1213
1214 tracenamestr = "Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification. ";
1215 curDis.TraceStart(sno++,tracenamestr);
1216
1217
1218 curLogicChannel = 0;
1219
1220 curDis.TestStepStart("复位;");
1221 ResetCard();
1222
1223 curDis.TestStepStart("读卡器向卡片发送Terminal Capability命令;");
1224 TS_TERMINAL_CAPABILITY_cmd();
1225
1226 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
1227 TS_MANAGE_CHANNEL_OPEN();
1228
1229 curLogicChannel = 1;
1230
1231 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1232 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1233
1234 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
1235
1236
1237
1238 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1239 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
1240 Profile_load_procedure.ES10b_GetEUICCInfo1();
1241
1242
1243 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
1244 Profile_load_procedure.ES10b_GetEUICCChallenge();
1245
1246 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
1247 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
1248 Profile_load_procedure.ES10b_AuthenticateServer();
1249
1250 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
1251 Profile_load_procedure.ES10b_PrepareDownload();
1252
1253 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
1254 Profile_load_procedure.ES10b_GetEID();
1255
1256 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
1257 //Profile_load_procedure.profilePolicyRules = "02";
1258 Profile_load_procedure.serviceProviderName = SP_NAME1; //SP Name 1
1259 Profile_load_procedure.profileName = NAME_OP_PROF1;
1260 Profile_load_procedure.iconType = "01";
1261 Profile_load_procedure.icon = ICON_OP_PROF1;
1262 Profile_load_procedure.profileClass = "02";
1263 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
1264 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
1265 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
1266 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
1267 Profile_load_procedure.mccMnc = MCC_MNC1;
1268
1269 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
1270
1271 tracenamestr = "Retrieve Sequence Numbers that are not present";
1272 curDis.TraceStart(sno++,tracenamestr);
1273
1274 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
1275 Profile_load_procedure.ES10b_ListNotification("04F0");
1276
1277 try
1278 {
1279 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
1280 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
1281 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
1282 }catch(e){
1283 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1284 }
1285
1286 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
1287 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
1288 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
1289 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1290
1291 try
1292 {
1293 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1294 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1295 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1296 }catch(e){
1297 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1298 }
1299
1300 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
1301 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
1302 parameter = EnCodeInteger_Ber(parseInt(parameter,16)+1);
1303 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
1304 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1305 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1306
1307 curLogicChannel = 0;
1308
1309 curDis.TestStepStart("复位;");
1310 ResetCard();
1311
1312 curDis.TestStepStart("读卡器向卡片发送Terminal Capability命令;");
1313 TS_TERMINAL_CAPABILITY_cmd();
1314
1315 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
1316 TS_MANAGE_CHANNEL_OPEN();
1317
1318 curLogicChannel = 1;
1319
1320 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1321 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1322
1323
1324 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
1325 var deleProfileRequest = new DeleteProfileRequest();
1326 deleProfileRequest.iccid = ICCID_OP_PROF1;
1327 deleProfileRequest.GenHexData();
1328 var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
1329
1330 curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
1331
1332 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
1333 var proInfoListRequest = new ProfileInfoListRequest();
1334 proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
1335 proInfoListRequest.tagList = "5A4F9F70";
1336 proInfoListRequest.GenHexData();
1337 var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
1338
1339
1340 var proInfoListResponse = new ProfileInfoListResponse();
1341 proInfoListResponse.checkCardResDataFormat(respData);
1342
1343 try
1344 {
1345 curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
1346 }catch(e){
1347 obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
1348 }
1349
1350 RecoverCard();
1351
1352}
1353
1354function TC_eUICC_ES10b_RetrieveNotificationsList_11_Nominal_Retrieve_by_Notification_Type_for_Install_Notifications ()
1355{
1356 Remove_All_the_Notification();
1357
1358 Install_PROFILE_OPERATIONAL1_Do_not_remove_both_the_Notifications();
1359
1360 tracenamestr = "Retrieve by Notification Type for Install Notifications ;";
1361 curDis.TraceStart(sno++,tracenamestr);
1362
1363 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令1,执行RetrieveNotificationsList;");
1364 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1365
1366 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
1367 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1368 try
1369 {
1370 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1371 {
1372 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1373 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1374 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1375 }
1376 else
1377 {
1378 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1379 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1380 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1381 }
1382
1383 }catch(e){
1384 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1385 }
1386
1387
1388 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1389 Profile_load_procedure.ES10b_RetrieveNotificationsList();
1390 try
1391 {
1392 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1393 {
1394 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1395 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1396 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1397 }
1398 else
1399 {
1400 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1401 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1402 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1403 }
1404
1405 }catch(e){
1406 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1407 }
1408
1409
1410 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
1411 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
1412 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1413 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1414
1415 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
1416 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
1417 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1418 try
1419 {
1420 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1421 {
1422 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1423 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1424 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1425 }
1426 else
1427 {
1428 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1429 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1430 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1431 }
1432
1433 }catch(e){
1434 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1435 }
1436
1437 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
1438 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
1439 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1440 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1441
1442 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
1443 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
1444 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1445 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1446
1447 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
1448 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
1449 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1450 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1451
1452 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
1453 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
1454 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1455 try
1456 {
1457 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1458 {
1459 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1460 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1461 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1462 }
1463 else
1464 {
1465 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1466 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1467 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1468 }
1469
1470 }catch(e){
1471 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1472 }
1473
1474 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
1475 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
1476 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1477 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1478
1479 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
1480 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
1481 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1482 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1483
1484
1485 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
1486 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
1487 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1488 try
1489 {
1490 if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
1491 {
1492 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1493 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1494 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1495 }
1496 else
1497 {
1498 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1499 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1500 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1501 }
1502
1503 }catch(e){
1504 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1505 }
1506
1507 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
1508
1509 RecoverCard();
1510}
1511
1512function TC_eUICC_ES10b_RetrieveNotificationsList_12_Nominal_Retrieve_by_Notification_Type_for_Enable_Notification()
1513{
1514 Remove_All_the_Notification();
1515 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
1516 Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
1517
1518
1519 tracenamestr = "Retrieve by Notification Type for Enable Notification ";
1520 curDis.TraceStart(sno++,tracenamestr);
1521
1522
1523 curLogicChannel = 1;
1524 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1525 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1526
1527
1528 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1529 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1530
1531
1532 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1533 Profile_load_procedure.ES10b_RetrieveNotificationsList();
1534 try
1535 {
1536 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1537 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1538 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1539 }catch(e){
1540 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1541 }
1542
1543 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1544 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
1545 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1546 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1547
1548 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1549 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
1550 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1551 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1552
1553 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1554 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
1555 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1556 try
1557 {
1558 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1559 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1560 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1561 }catch(e){
1562 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1563 }
1564
1565 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1566 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
1567 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1568 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1569
1570 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1571 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
1572 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1573 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1574
1575 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1576 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
1577 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1578 try
1579 {
1580 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1581 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1582 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1583 }catch(e){
1584 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1585 }
1586
1587 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1588 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
1589 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1590 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1591
1592 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1593 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
1594 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1595 try
1596 {
1597 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1598 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1599 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1600 }catch(e){
1601 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1602 }
1603
1604 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1605 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
1606 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1607 try
1608 {
1609 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1610 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1611 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1612 }catch(e){
1613 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1614 }
1615
1616
1617 Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
1618 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
1619 RecoverCard();
1620}
1621
1622function TC_eUICC_ES10b_RetrieveNotificationsList_13_Nominal_Retrieve_by_Notification_Type_for_Disable_Notification()
1623{
1624 Remove_All_the_Notification();
1625
1626 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
1627 Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
1628 Disable_PROFILE_OPERATIONAL1_Do_not_Remove_the_Notification();
1629
1630 tracenamestr = "Retrieve by Notification Type for Disable Notification ";
1631 curDis.TraceStart(sno++,tracenamestr);
1632
1633
1634 curLogicChannel = 1;
1635 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1636 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1637
1638
1639 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1640 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1641
1642 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
1643 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1644 try
1645 {
1646 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1647 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1648 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1649 }catch(e){
1650 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1651 }
1652
1653 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1654 Profile_load_procedure.ES10b_RetrieveNotificationsList();
1655 try
1656 {
1657 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1658 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1659 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1660 }catch(e){
1661 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1662 }
1663
1664 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1665 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
1666 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1667 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1668
1669 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1670 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
1671 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1672 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1673
1674 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1675 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
1676 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1677 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1678
1679 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1680 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
1681 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1682 try
1683 {
1684 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1685 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1686 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1687 }catch(e){
1688 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1689 }
1690
1691 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1692 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
1693 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1694 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1695
1696 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1697 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
1698 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1699 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1700
1701 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1702 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
1703 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1704 try
1705 {
1706 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1707 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1708 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1709 }catch(e){
1710 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1711 }
1712
1713 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1714 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
1715 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1716 try
1717 {
1718 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1719 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1720 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1721 }catch(e){
1722 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1723 }
1724
1725 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1726 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
1727 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1728 try
1729 {
1730 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1731 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1732 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1733 }catch(e){
1734 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1735 }
1736
1737 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
1738 RecoverCard();
1739}
1740
1741function TC_eUICC_ES10b_RetrieveNotificationsList_14_Nominal_Retrieve_by_Notification_Type_for_Delete_Notification()
1742{
1743 Remove_All_the_Notification();
1744
1745 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
1746 Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
1747 Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
1748 Delete_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
1749
1750 tracenamestr = "Retrieve by Notification Type for Delete Notification .";
1751 curDis.TraceStart(sno++,tracenamestr);
1752
1753 curLogicChannel = 1;
1754 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1755 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1756
1757
1758 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1759 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1760
1761 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
1762 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1763 try
1764 {
1765 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1766 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1767 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1768 }catch(e){
1769 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1770 }
1771
1772 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1773 Profile_load_procedure.ES10b_RetrieveNotificationsList();
1774 try
1775 {
1776 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1777 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1778 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1779 }catch(e){
1780 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1781 }
1782
1783 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1784 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
1785 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1786 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1787
1788 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1789 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
1790 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1791 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1792
1793 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1794 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
1795 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1796 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1797
1798 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1799 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
1800 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1801 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1802
1803 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1804 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
1805 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1806 try
1807 {
1808 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1809 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1810 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1811 }catch(e){
1812 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1813 }
1814
1815 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1816 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
1817 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1818 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1819
1820 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1821 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
1822 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1823 try
1824 {
1825 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
1826 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
1827 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
1828 }catch(e){
1829 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1830 }
1831
1832 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1833 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
1834 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1835 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1836
1837 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1838 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
1839 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1840 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
1841
1842 RecoverCard();
1843}
1844
1845function TC_eUICC_ES10b_RetrieveNotificationsList_15_Nominal_Retrieve_by_Notification_Type_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses()
1846{
1847 Remove_All_the_Notification();
1848
1849 curLogicChannel = 0;
1850
1851 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
1852 curDis.TraceStart(sno++,tracenamestr);
1853
1854 curDis.TestStepStart("eUICC卡片初始化;");
1855 Ini_powerOn_eUICC_LPAe_not_activate();
1856
1857 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
1858 TS_MANAGE_CHANNEL_OPEN();
1859
1860 curLogicChannel = 1;
1861
1862 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1863 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1864
1865 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
1866 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
1867 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
1868 Profile_load_procedure.ES10b_GetEUICCInfo1();
1869
1870 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
1871 Profile_load_procedure.ES10b_GetEUICCChallenge();
1872
1873 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
1874 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
1875 Profile_load_procedure.ES10b_AuthenticateServer();
1876
1877 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
1878 Profile_load_procedure.ES10b_PrepareDownload();
1879
1880 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
1881 Profile_load_procedure.ES10b_GetEID();
1882
1883 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
1884 Profile_load_procedure.serviceProviderName = SP_NAME1;
1885 Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
1886 Profile_load_procedure.iconType = "01";
1887 Profile_load_procedure.icon = ICON_OP_PROF1;
1888 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
1889 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
1890 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
1891 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
1892 Profile_load_procedure.mccMnc = MCC_MNC1;
1893 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
1894
1895
1896
1897 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
1898 curDis.TraceStart(sno++,tracenamestr);
1899
1900 curLogicChannel = 0;
1901
1902 curDis.TestStepStart("eUICC卡片初始化;");
1903 Ini_powerOn_eUICC_LPAe_not_activate();
1904
1905 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
1906 TS_MANAGE_CHANNEL_OPEN();
1907
1908 curLogicChannel = 1;
1909
1910 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
1911 TS_SELECT("Select ISD",ISD_R_AID,"9000");
1912
1913 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
1914 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
1915 Profile_load_procedure.ICCID = ICCID_OP_PROF2;
1916 Profile_load_procedure.ES10b_GetEUICCInfo1();
1917
1918
1919 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
1920 Profile_load_procedure.ES10b_GetEUICCChallenge();
1921
1922
1923 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
1924 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
1925 Profile_load_procedure.ES10b_AuthenticateServer();
1926
1927 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
1928 Profile_load_procedure.ES10b_PrepareDownload();
1929
1930 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
1931 Profile_load_procedure.ES10b_GetEID();
1932
1933 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
1934 Profile_load_procedure.serviceProviderName = SP_NAME2;
1935 Profile_load_procedure.profileName = NAME_OP_PROF2;
1936 Profile_load_procedure.iconType = "01";
1937 Profile_load_procedure.icon = ICON_OP_PROF2;
1938 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
1939 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
1940 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
1941 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
1942 Profile_load_procedure.profileClass = "02";
1943 Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
1944 Profile_load_procedure.mccMnc = MCC_MNC2;
1945
1946 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
1947
1948 tracenamestr = "Retrieve by Notification Type for Two Install (PIR) Notifications with different Notification Addresses";
1949 curDis.TraceStart(sno++,tracenamestr);
1950
1951 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
1952 Profile_load_procedure.ES10b_ListNotification("04F0");
1953 try
1954 {
1955 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
1956 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
1957 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
1958
1959 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
1960 curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
1961 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
1962
1963 }catch(e){
1964 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1965 }
1966
1967 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1968 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
1969 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1970 try
1971 {
1972 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1973 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1974 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1975
1976 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1977 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1978 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1979
1980 }catch(e){
1981 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1982 }
1983
1984 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
1985 Profile_load_procedure.ES10b_RetrieveNotificationsList();
1986 try
1987 {
1988 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
1989 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
1990 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
1991 }catch(e){
1992 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
1993 }
1994
1995
1996 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
1997 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
1998 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
1999 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2000
2001 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
2002 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
2003 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2004 try
2005 {
2006 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2007 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2008 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2009
2010 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2011 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2012 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2013 }catch(e){
2014 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2015 }
2016
2017 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
2018 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
2019 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2020 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2021
2022 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
2023 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
2024 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2025 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2026
2027 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
2028 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
2029 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2030 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2031
2032 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
2033 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
2034 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2035 try
2036 {
2037 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2038 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2039 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2040
2041 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2042 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2043 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2044 }catch(e){
2045 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2046 }
2047
2048 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
2049 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
2050 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2051 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2052
2053 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
2054 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
2055 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2056 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2057
2058
2059 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
2060 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
2061 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2062 try
2063 {
2064 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2065 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2066 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2067
2068 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2069 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2070 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2071 }catch(e){
2072 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2073 }
2074
2075
2076 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
2077
2078 RecoverCard();
2079}
2080
2081function TC_eUICC_ES10b_RetrieveNotificationsList_16_Nominal_Retrieve_by_Notification_Type_for_Install_PIR_and_Enable_Notifications()
2082{
2083 Remove_All_the_Notification();
2084
2085 curLogicChannel = 0;
2086
2087 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
2088 curDis.TraceStart(sno++,tracenamestr);
2089
2090 curDis.TestStepStart("eUICC卡片初始化;");
2091 Ini_powerOn_eUICC_LPAe_not_activate();
2092
2093 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
2094 TS_MANAGE_CHANNEL_OPEN();
2095
2096 curLogicChannel = 1;
2097
2098 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
2099 TS_SELECT("Select ISD",ISD_R_AID,"9000");
2100
2101 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
2102 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
2103 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
2104 Profile_load_procedure.ES10b_GetEUICCInfo1();
2105
2106 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
2107 Profile_load_procedure.ES10b_GetEUICCChallenge();
2108
2109 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
2110 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
2111 Profile_load_procedure.ES10b_AuthenticateServer();
2112
2113 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
2114 Profile_load_procedure.ES10b_PrepareDownload();
2115
2116 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
2117 Profile_load_procedure.ES10b_GetEID();
2118
2119 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
2120 Profile_load_procedure.serviceProviderName = SP_NAME1;
2121 Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
2122 Profile_load_procedure.iconType = "01";
2123 Profile_load_procedure.icon = ICON_OP_PROF1;
2124 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
2125 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
2126 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
2127 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
2128 Profile_load_procedure.mccMnc = MCC_MNC1;
2129 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
2130
2131
2132 tracenamestr = "初始化测试条件:Enable PROFILE_OPERATIONAL1. Do not remove the Notification.";
2133 curDis.TraceStart(sno++,tracenamestr);
2134
2135 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行EnableProfileRequest;");
2136 var enableProRequest = new EnableProfileRequest();
2137 enableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
2138 enableProRequest.refreshFlag = BooleanValue_BerCode_False;
2139 enableProRequest.GenHexData();
2140 var respData = LPAd_Transport_data_to_eUICC(enableProRequest.hexData);
2141
2142 curStrHandle.CheckData("BF3103800100", respData, "EnableProfileResponse");
2143
2144
2145 tracenamestr = "Retrieve by Notification Type for Install (PIR) and Enable Notifications ;";
2146 curDis.TraceStart(sno++,tracenamestr);
2147
2148 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
2149 Profile_load_procedure.ES10b_ListNotification("04F0");
2150 try
2151 {
2152 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
2153 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
2154 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
2155
2156 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
2157 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
2158 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
2159
2160 }catch(e){
2161 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2162 }
2163
2164
2165 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
2166 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2167 try
2168 {
2169 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2170 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2171 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2172
2173 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2174 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2175 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2176
2177 }catch(e){
2178 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2179 }
2180
2181 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
2182 Profile_load_procedure.ES10b_RetrieveNotificationsList();
2183 try
2184 {
2185 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2186 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2187 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2188
2189 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2190 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2191 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2192
2193 }catch(e){
2194 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2195 }
2196
2197 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
2198 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
2199 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2200 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2201
2202 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
2203 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
2204 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2205 try
2206 {
2207 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2208 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2209 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2210
2211 }catch(e){
2212 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2213 }
2214
2215 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
2216 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
2217 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2218 try
2219 {
2220 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2221 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2222 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2223
2224 }catch(e){
2225 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2226 }
2227
2228 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
2229 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
2230 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2231 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2232
2233 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
2234 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
2235 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2236 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2237
2238 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
2239 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
2240 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2241 try
2242 {
2243 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2244 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2245 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2246
2247 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2248 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2249 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2250
2251 }catch(e){
2252 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2253 }
2254
2255 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
2256 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
2257 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2258 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2259
2260 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
2261 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
2262 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2263 try
2264 {
2265 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2266 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2267 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2268
2269 }catch(e){
2270 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2271 }
2272
2273 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
2274 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
2275 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2276 try
2277 {
2278 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2279 curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2280 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2281
2282 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2283 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2284 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2285
2286 }catch(e){
2287 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2288 }
2289
2290
2291 Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
2292 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
2293
2294 RecoverCard();
2295}
2296
2297function TC_eUICC_ES10b_RetrieveNotificationsList_17_Nominal_Retrieve_by_Notification_Type_for_Disable_and_Delete_Notifications ()//0520 0410
2298{
2299 Remove_All_the_Notification();
2300
2301
2302 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
2303
2304 Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
2305
2306 Disable_PROFILE_OPERATIONAL1_Do_not_Remove_the_Notification();
2307
2308 Delete_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
2309
2310 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
2311
2312
2313 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
2314 Profile_load_procedure.ES10b_ListNotification("04F0");
2315 try
2316 {
2317 curStrHandle.CheckData("0520",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
2318 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
2319 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
2320
2321 curStrHandle.CheckData("0410",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
2322 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
2323 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
2324 }catch(e){
2325 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2326 }
2327
2328
2329
2330 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
2331 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2332 try
2333 {
2334 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2335 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2336 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2337
2338 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2339 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2340 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2341
2342 }catch(e){
2343 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2344 }
2345
2346 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
2347 Profile_load_procedure.ES10b_RetrieveNotificationsList();
2348 try
2349 {
2350 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2351 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2352 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2353
2354 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2355 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2356 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2357
2358 }catch(e){
2359 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2360 }
2361
2362 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
2363 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
2364 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2365 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2366
2367 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
2368 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
2369 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2370 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2371
2372 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
2373 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
2374 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2375 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2376
2377 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
2378 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
2379 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2380 try
2381 {
2382 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2383 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2384 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2385
2386 }catch(e){
2387 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2388 }
2389
2390 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
2391 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
2392 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2393 try
2394 {
2395 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2396 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2397 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2398
2399 }catch(e){
2400 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2401 }
2402 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
2403 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
2404 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2405 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2406
2407
2408 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
2409 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
2410 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2411 try
2412 {
2413 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2414 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2415 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2416
2417 curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2418 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2419 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2420
2421 }catch(e){
2422 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2423 }
2424
2425 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
2426 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
2427 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2428 try
2429 {
2430 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2431 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2432 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2433 }catch(e){
2434 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2435 }
2436
2437 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
2438 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
2439 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2440 try
2441 {
2442 curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2443 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2444 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2445 }catch(e){
2446 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2447 }
2448
2449
2450 RecoverCard();
2451}
2452
2453function TC_eUICC_ES10b_RetrieveNotificationsList_18_Nominal_Retrieve_by_Notification_Type_for_Install_OtherSignedNotification_and_Enable_Notifications()//0780 0640 ??????????????????????
2454{
2455 Remove_All_the_Notification();
2456
2457 curLogicChannel = 0;
2458
2459 tracenamestr = "Install PROFILE_OPERATIONAL1. Remove the PIR notification, but do not remove the OtherSignedNotification.";
2460 curDis.TraceStart(sno++,tracenamestr);
2461
2462 curDis.TestStepStart("eUICC卡片初始化;");
2463 Ini_powerOn_eUICC_LPAe_not_activate();
2464
2465 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
2466 TS_MANAGE_CHANNEL_OPEN();
2467
2468 curLogicChannel = 1;
2469
2470 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
2471 TS_SELECT("Select ISD",ISD_R_AID,"9000");
2472
2473 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
2474 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
2475
2476 Profile_load_procedure.ICCID = ICCID_OP_PROF1;
2477 Profile_load_procedure.ES10b_GetEUICCInfo1();
2478
2479 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
2480 Profile_load_procedure.ES10b_GetEUICCChallenge();
2481
2482 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
2483 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
2484 Profile_load_procedure.ES10b_AuthenticateServer();
2485
2486 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
2487 Profile_load_procedure.ES10b_PrepareDownload();
2488
2489 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
2490 Profile_load_procedure.ES10b_GetEID();
2491
2492 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
2493 Profile_load_procedure.serviceProviderName = SP_NAME1;
2494 Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
2495 Profile_load_procedure.iconType = "01";
2496 Profile_load_procedure.icon = ICON_OP_PROF1;
2497 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
2498 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
2499 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "04F0";
2500 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
2501 Profile_load_procedure.mccMnc = MCC_MNC1;
2502 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
2503
2504 curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
2505 TS_SELECT("Select ISD",ISD_R_AID,"9000");
2506
2507 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
2508 Profile_load_procedure.ES10b_ListNotification();
2509
2510 var NotificationLen = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement.length;
2511 for(var i=0;i<(NotificationLen-1);i++)//删除PIR通知
2512 {
2513 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行NotificationSentRequest;");
2514 var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[i].seqNumber;
2515 Profile_load_procedure.ES10b_RemoveNotificationFromList(parameter);
2516 var deleteNotificationStatus=Profile_load_procedure.notificationSentResponse.deleteNotificationStatus;
2517 curStrHandle.CheckData("00", deleteNotificationStatus, "deleteNotificationStatus");
2518 }
2519
2520
2521 Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
2522
2523
2524 tracenamestr = "Retrieve by Sequence Number for Install (OtherSignedNotification) and Enable Notifications ;";
2525 curDis.TraceStart(sno++,tracenamestr);
2526
2527
2528 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
2529 Profile_load_procedure.ES10b_ListNotification("04F0");
2530 try
2531 {
2532 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
2533 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
2534 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
2535
2536 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
2537 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
2538 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
2539 }catch(e){
2540 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2541 }
2542
2543 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ES10b_RetrieveNotificationsList;");
2544 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
2545 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2546 try
2547 {
2548 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2549 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2550 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2551
2552
2553 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2554 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2555 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2556
2557 }catch(e){
2558 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2559 }
2560
2561 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
2562 Profile_load_procedure.ES10b_RetrieveNotificationsList();
2563 try
2564 {
2565 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2566 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2567 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2568
2569
2570 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2571 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2572 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2573
2574 }catch(e){
2575 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2576 }
2577
2578 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
2579 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
2580 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2581 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2582
2583 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
2584 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
2585 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2586 try
2587 {
2588 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2589 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2590 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2591
2592 }catch(e){
2593 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2594 }
2595
2596 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
2597 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
2598 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2599 try
2600 {
2601 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2602 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2603 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2604
2605 }catch(e){
2606 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2607 }
2608
2609 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
2610 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
2611 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2612 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2613
2614 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
2615 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
2616 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2617 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2618
2619 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
2620 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
2621 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2622 try
2623 {
2624 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2625 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2626 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2627
2628 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2629 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2630 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2631
2632 }catch(e){
2633 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2634 }
2635
2636 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
2637 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
2638 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2639 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2640
2641 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
2642 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
2643 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2644 try
2645 {
2646 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2647 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2648 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2649
2650 }catch(e){
2651 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2652 }
2653
2654 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
2655 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
2656 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2657 try
2658 {
2659 curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2660 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2661 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2662
2663
2664 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2665 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2666 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
2667
2668 }catch(e){
2669 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2670 }
2671
2672
2673 Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
2674 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
2675
2676 RecoverCard();
2677}
2678
2679function TC_eUICC_ES10b_RetrieveNotificationsList_19_Nominal_Retrieve_by_Notification_Type_for_Enable_and_Install_PIR_Notifications()//0640 0780
2680{
2681 Remove_All_the_Notification();
2682
2683 Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
2684
2685 Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
2686
2687
2688 tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
2689 curDis.TraceStart(sno++,tracenamestr);
2690
2691 curLogicChannel = 0;
2692
2693 curDis.TestStepStart("eUICC卡片初始化;");
2694 Ini_powerOn_eUICC_LPAe_not_activate();
2695
2696 curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
2697 TS_MANAGE_CHANNEL_OPEN();
2698
2699 curLogicChannel = 1;
2700
2701 curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
2702 TS_SELECT("Select ISD",ISD_R_AID,"9000");
2703
2704 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
2705 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
2706 Profile_load_procedure.ICCID = ICCID_OP_PROF2;
2707 Profile_load_procedure.ES10b_GetEUICCInfo1();
2708
2709
2710 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
2711 Profile_load_procedure.ES10b_GetEUICCChallenge();
2712
2713
2714 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
2715 Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
2716 Profile_load_procedure.ES10b_AuthenticateServer();
2717
2718 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
2719 Profile_load_procedure.ES10b_PrepareDownload();
2720
2721 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
2722 Profile_load_procedure.ES10b_GetEID();
2723
2724 curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
2725 Profile_load_procedure.serviceProviderName = SP_NAME2;
2726 Profile_load_procedure.profileName = NAME_OP_PROF2;
2727 Profile_load_procedure.iconType = "01";
2728 Profile_load_procedure.icon = ICON_OP_PROF2;
2729 Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
2730 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
2731 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
2732 Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
2733 Profile_load_procedure.profileClass = "02";
2734 Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
2735 Profile_load_procedure.mccMnc = MCC_MNC2;
2736
2737 Profile_load_procedure.ES10b_LoadBoundProfilePackage();
2738
2739
2740 tracenamestr = "Retrieve by Notification Type_for Enable_and_Install_PIR_Notifications;";
2741 curDis.TraceStart(sno++,tracenamestr);
2742
2743 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
2744 Profile_load_procedure.ES10b_ListNotification("04F0");
2745 try
2746 {
2747 curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
2748 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
2749 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
2750
2751 curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
2752 curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
2753 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
2754
2755 }catch(e){
2756 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2757 }
2758
2759
2760 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
2761 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2762 try
2763 {
2764 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2765 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2766 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2767
2768 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2769 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2770 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2771
2772 }catch(e){
2773 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2774 }
2775
2776 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
2777 Profile_load_procedure.ES10b_RetrieveNotificationsList();
2778 try
2779 {
2780
2781 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2782 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2783 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2784
2785 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2786 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2787 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2788
2789 }catch(e){
2790 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2791 }
2792
2793 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
2794 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
2795 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2796 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2797
2798 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
2799 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
2800 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2801 try
2802 {
2803 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2804 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2805 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2806
2807 }catch(e){
2808 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2809 }
2810
2811 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
2812 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
2813 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2814 try
2815 {
2816 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2817 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2818 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2819
2820 }catch(e){
2821 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2822 }
2823
2824 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
2825 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
2826 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2827 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2828
2829 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
2830 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
2831 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2832 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2833
2834 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
2835 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
2836 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2837 try
2838 {
2839
2840 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2841 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2842 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2843
2844 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2845 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2846 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2847
2848 }catch(e){
2849 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2850 }
2851
2852 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
2853 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
2854 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2855 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2856
2857 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
2858 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
2859 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2860 try
2861 {
2862 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2863 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2864 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2865
2866 }catch(e){
2867 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2868 }
2869
2870 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
2871 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
2872 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2873 try
2874 {
2875
2876 curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
2877 curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
2878 curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
2879
2880 curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
2881 curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
2882 curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
2883
2884 }catch(e){
2885 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2886 }
2887
2888
2889 Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
2890 Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
2891
2892 RecoverCard();
2893}
2894
2895function TC_eUICC_ES10b_RetrieveNotificationsList_20_Nominal_Retrieve_by_Notification_Type_for_No_Notifications_available ()// ?????????????????
2896{
2897 Remove_All_the_Notification();
2898
2899 curLogicChannel = 1;
2900 var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
2901
2902 tracenamestr = "Retrieve by Notification Type for No Notifications available ; ";
2903 curDis.TraceStart(sno++,tracenamestr);
2904
2905 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
2906 Profile_load_procedure.ES10b_ListNotification("04F0");
2907 try
2908 {
2909
2910 }catch(e){
2911 obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
2912 }
2913 curStrHandle.CheckData("BF2802A000", Profile_load_procedure.listNotificationResponse.hexData, "null");
2914
2915
2916 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
2917 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
2918 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2919 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2920
2921
2922 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
2923 Profile_load_procedure.ES10b_RetrieveNotificationsList();
2924 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2925
2926
2927 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
2928 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
2929 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2930 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2931
2932 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
2933 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
2934 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2935 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2936
2937
2938 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
2939 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
2940 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2941 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2942
2943 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
2944 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
2945 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2946 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2947
2948 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
2949 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
2950 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2951 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2952
2953 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
2954 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
2955 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2956 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2957
2958
2959 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
2960 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
2961 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2962 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2963
2964 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
2965 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
2966 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2967 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2968
2969
2970 curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
2971 parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
2972 Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
2973 curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
2974
2975 RecoverCard();
2976}
2977
-cas 盲生成TC_eUICC_ES10b_RetrieveNotificationsList/Import/TC_eUICC_ES10b_RetrieveNotificationsList.js2579 行 / 245160 字符 / gb18030入口函数 @L225
1// Author: 卡思Cas智能体
2// Date: 20261004-141736
3// Function: (purpose 原文未由 SGP.23 该 TC 提供,corpus vacuum 登记)TC_eUICC_ES10b.RetrieveNotificationsList,Test Sequence #01-#20 Nominal (all 20 sequences),适用性 M。
4// Test points: ICH-SEQ01-IC1-K1-C1 ATR_present;ICH-SEQ01-IC1-K2-C2 FCP_Template
5// ICH-SEQ01-IC1-K2-C4 SW;ICH-SEQ01-IC1-K3-C4 SW;ICH-SEQ01-IC1-K4-C4 final SW
6// ICH-SEQ01-IC2-K1-C4 SW;ICH-SEQ01-IC2-K1-C3 CHANNEL_NUMBER extracted;ICH-SEQ01-IC2-K2-C4 SW
7// S1-C1 SW;S1-C2 响应结构匹配 #R_LIST_NOTIF_IN1_IN1_PIR:ListNotificationResponse no branch/count
8// S2-C1 SW;S2-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count
9// S2-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S3-C1 SW
10// S3-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
11// S3-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S4-C1 SW
12// S4-C2 响应结构匹配 #R_LIST_NOTIF_EN1:ListNotificationResponse notificati branch/count;S5-C1 SW
13// S5-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
14// S5-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S6-C1 SW
15// S6-C2 响应结构匹配 #R_LIST_NOTIF_DI1:ListNotificationResponse notificati branch/count;S7-C1 SW
16// S7-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
17// S7-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S8-C1 SW
18// S8-C2 响应结构匹配 #R_LIST_NOTIF_DE1:ListNotificationResponse notificati branch/count;S9-C1 SW
19// S9-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
20// S9-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S10-C1 SW
21// S10-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_IN2_PIR:ListNotificationRespons branch/count;S11-C1 SW
22// S11-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
23// S11-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S12-C1 SW
24// S12-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count
25// S12-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S13-C1 SW
26// S13-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_EN1:ListNotificationResponse no branch/count;S14-C1 SW
27// S14-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
28// S14-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S15-C1 SW
29// S15-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
30// S15-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S16-C1 SW
31// S16-C2 响应结构匹配 #R_LIST_NOTIF_DI1_DE1:ListNotificationResponse notifi branch/count;S17-C1 SW
32// S17-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
33// S17-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S18-C1 SW
34// S18-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
35// S18-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S19-C1 SW
36// S19-C2 响应结构匹配 #R_LIST_NOTIF_IN1_EN1:ListNotificationResponse notifi branch/count;S20-C1 SW
37// S20-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count
38// S20-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S21-C1 SW
39// S21-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
40// S21-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S22-C1 SW
41// S22-C2 响应结构匹配 #R_LIST_NOTIF_EN1_IN2_PIR:ListNotificationResponse no branch/count;S23-C1 SW
42// S23-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count
43// S23-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S24-C1 SW
44// S24-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
45// S24-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S25-C1 SW
46// S25-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR:ListNotificationResponse notifi branch/count;S26-C1 SW
47// S26-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
48// S26-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S27-C1 SW
49// S27-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S28-C1 SW
50// S28-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
51// S28-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
52// S28-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S29-C1 SW
53// S29-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
54// S29-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
55// S29-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S30-C1 SW
56// S30-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S31-C1 SW
57// S31-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
58// S31-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
59// S31-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S32-C1 SW
60// S32-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S33-C1 SW
61// S33-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S34-C1 SW
62// S34-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S35-C1 SW
63// S35-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
64// S35-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
65// S35-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S36-C1 SW
66// S36-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S37-C1 SW
67// S37-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S38-C1 SW
68// S38-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
69// S38-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
70// S38-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S39-C1 SW
71// S39-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
72// S39-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S40-C1 SW
73// S40-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S41-C1 SW
74// S41-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S42-C1 SW
75// S42-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S43-C1 SW
76// S43-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S44-C1 SW
77// S44-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S45-C1 SW
78// S45-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S46-C1 SW
79// S46-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S47-C1 SW
80// S47-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S48-C1 SW
81// S48-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S49-C1 SW
82// S49-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S50-C1 SW
83// S50-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
84// S50-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S51-C1 SW
85// S51-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
86// S51-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S52-C1 SW
87// S52-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S53-C1 SW
88// S53-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S54-C1 SW
89// S54-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S55-C1 SW
90// S55-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
91// S55-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S56-C1 SW
92// S56-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S57-C1 SW
93// S57-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S58-C1 SW
94// S58-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
95// S58-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S59-C1 SW
96// S59-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
97// S59-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S60-C1 SW
98// S60-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
99// S60-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S61-C1 SW
100// S61-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
101// S61-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S62-C1 SW
102// S62-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
103// S62-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S63-C1 SW
104// S63-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S64-C1 SW
105// S64-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S65-C1 SW
106// S65-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S66-C1 SW
107// S66-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S67-C1 SW
108// S67-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
109// S67-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S68-C1 SW
110// S68-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S69-C1 SW
111// S69-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
112// S69-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S70-C1 SW
113// S70-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S71-C1 SW
114// S71-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S72-C1 SW
115// S72-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
116// S72-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S73-C1 SW
117// S73-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
118// S73-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S74-C1 SW
119// S74-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S75-C1 SW
120// S75-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
121// S75-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S76-C1 SW
122// S76-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S77-C1 SW
123// S77-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S78-C1 SW
124// S78-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S79-C1 SW
125// S79-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
126// S79-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S80-C1 SW
127// S80-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S81-C1 SW
128// S81-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S82-C1 SW
129// S82-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
130// S82-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S83-C1 SW
131// S83-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
132// S83-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
133// S83-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S84-C1 SW
134// S84-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
135// S84-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
136// S84-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S85-C1 SW
137// S85-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S86-C1 SW
138// S86-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
139// S86-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S87-C1 SW
140// S87-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
141// S87-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S88-C1 SW
142// S88-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S89-C1 SW
143// S89-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S90-C1 SW
144// S90-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
145// S90-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
146// S90-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S91-C1 SW
147// S91-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S92-C1 SW
148// S92-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
149// S92-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S93-C1 SW
150// S93-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
151// S93-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
152// S93-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S94-C1 SW
153// S94-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count
154// S94-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S95-C1 SW
155// S95-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count
156// S95-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S96-C1 SW
157// S96-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S97-C1 SW
158// S97-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S98-C1 SW
159// S98-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S99-C1 SW
160// S99-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
161// S99-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S100-C1 SW
162// S100-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
163// S100-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S101-C1 SW
164// S101-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S102-C1 SW
165// S102-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count
166// S102-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S103-C1 SW
167// S103-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
168// S103-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S104-C1 SW
169// S104-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
170// S104-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S105-C1 SW
171// S105-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
172// S105-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S106-C1 SW
173// S106-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
174// S106-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S107-C1 SW
175// S107-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S108-C1 SW
176// S108-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count
177// S108-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S109-C1 SW
178// S109-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
179// S109-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S110-C1 SW
180// S110-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S111-C1 SW
181// S111-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S112-C1 SW
182// S112-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
183// S112-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S113-C1 SW
184// S113-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S114-C1 SW
185// S114-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
186// S114-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S115-C1 SW
187// S115-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
188// S115-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S116-C1 SW
189// S116-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
190// S116-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
191// S116-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S117-C1 SW
192// S117-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
193// S117-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
194// S117-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S118-C1 SW
195// S118-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S119-C1 SW
196// S119-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count
197// S119-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S120-C1 SW
198// S120-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
199// S120-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S121-C1 SW
200// S121-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S122-C1 SW
201// S122-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S123-C1 SW
202// S123-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
203// S123-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
204// S123-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S124-C1 SW
205// S124-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S125-C1 SW
206// S125-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
207// S125-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S126-C1 SW
208// S126-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
209// S126-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
210// S126-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S127-C1 SW
211// S127-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S128-C1 SW
212// S128-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S129-C1 SW
213// S129-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S130-C1 SW
214// S130-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S131-C1 SW
215// S131-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S132-C1 SW
216// S132-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S133-C1 SW
217// S133-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S134-C1 SW
218// S134-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S135-C1 SW
219// S135-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S136-C1 SW
220// S136-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S137-C1 SW
221// S137-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count
222// 本函数由 CaseIR 4.2.15.2.1 编译生成(fullwave-blindgen-live-70-W1-laneA2,SGP.23 v1.16 × SGP.22 v2.7):字节权威=CaseIR,非誊录黄金脚本。
223// Value-free template: every data byte is injected from CaseIR fields; no scaffold globals (see docs/speconly/compile-symbol-migration.md).
224// 适用性 M:编译期门,运行时由 harness 环境前置承担。
225function TC_eUICC_ES10b_RetrieveNotificationsList_01_20_Nominal_all_20_sequences() {
226 var bind = curBind;
227 var profileAidSession = BindEs10xProcProfileDynamic.beginSession(bind, "TC_eUICC_ES10b_RetrieveNotificationsList_01_20_Nominal_all_20_sequences");
228
229 // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 1):RESET(K 语料机械展开)
230 var s138 = bind.resetAndAtr();
231 bind.checkData("ICH-SEQ01-IC1-K1-C1 ATR_present", "1", s138.atr_hex !== "" ? "1" : "0");
232
233 // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 2):SELECT_MF(K 语料机械展开)
234 // FCP outer tag not materialized from clause: tag-face asserted only when corpus fixes the tag byte (e.g. TS 102 221 FCP '62').
235 var s139 = bind.sendApdu("00", "A4", "00", "04", "3F00", "00", "9000");
236 bind.checkData("ICH-SEQ01-IC1-K2-C2 FCP_Template", "1", s139.resp.length > 0 ? "1" : "0");
237 bind.checkData("ICH-SEQ01-IC1-K2-C4 SW", "9000", s139.sw);
238
239 // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 3):TERMINAL_CAPABILITY_LPAd(K 语料机械展开)
240 var s140 = bind.sendApdu("80", "AA", "00", "00", "A9058100830107", null, "9000");
241 bind.checkData("ICH-SEQ01-IC1-K3-C4 SW", "9000", s140.sw);
242
243 // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 4):TERMINAL_PROFILE(K 语料机械展开)
244 var steady141 = bind.runToSteadyState(function () {
245 return bind.sendTerminalProfile("FFFFFFFF7F9D00DFBF00001FE2000000C7EB0000000168005000000000000200", "9000");
246 });
247 bind.checkData("ICH-SEQ01-IC1-K4-C4 final SW", "9000", steady141.final.sw);
248
249 // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 1):MANAGE_CHANNEL_OPEN(K 语料机械展开)
250 // CHANNEL_NUMBER extraction and dynamic CLA rebinding are CasBind internal state (chaining rule; no generated-code re-implementation).
251 var s142 = bind.manageChannelOpen("9000");
252 bind.checkData("ICH-SEQ01-IC2-K1-C4 SW", "9000", s142.sw);
253 bind.checkData("ICH-SEQ01-IC2-K1-C3 CHANNEL_NUMBER extracted", "1", s142.chan !== null ? "1" : "0");
254
255 // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 2):MTD_SELECT(K 语料机械展开)
256 // CLA = bound channel (cla_rule) and <L> length binding are CasBind internal state (chaining rule; no generated-code re-implementation).
257 var s143 = bind.sendApdu(null, "A4", "04", "00", "A0000005591010FFFFFFFF8900000100", null, "9000");
258 // MTD_SELECT expected face is SW-only (K Annex C.2 open-channel procedure step 2: no FCI content assertion in corpus); no fabricated template parse.
259 bind.checkData("ICH-SEQ01-IC2-K2-C4 SW", "9000", s143.sw);
260
261 // 步骤 1:SEQ01-IC4] MTD_STORE_DATA(tc_step)
262 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
263 var sdCla1 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
264 var s1 = bind.sendApdu(sdCla1, "E2", "91", "00", "BF2804810204F0", "00", "9000");
265 bind.checkData("S1-C1 SW", "9000", s1.sw);
266 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
267 var lw1T = BindEs10xSingleRequest.parseBerTlv(s1.resp);
268 var lw1Ok0 = lw1T.length === 1 && lw1T[0].tag === "BF28";
269 var lw1_br = lw1Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw1T[0].value) : [];
270 var lw1_brtag = lw1_br.length === 1 ? lw1_br[0].tag : "";
271 var lw1_els = lw1_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw1_br[0].value) : [];
272 bind.checkData("S1-C2 响应结构匹配 #R_LIST_NOTIF_IN1_IN1_PIR:ListNotificationResponse no branch/count", "1", (lw1_brtag === "A0" && lw1_els.length === 2) ? "1" : "0");
273
274 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1 ← 步 1 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
275 var nd2_NOTIF_SEQ_NO_IN1 = {ok: false, seq: ""};
276 var nd2_NOTIF_SEQ_NO_IN1T = BindEs10xSingleRequest.parseBerTlv(s1.resp);
277 if (nd2_NOTIF_SEQ_NO_IN1T.length === 1 && nd2_NOTIF_SEQ_NO_IN1T[0].tag === "BF28") {
278 var nd2_NOTIF_SEQ_NO_IN1X1 = BindEs10xSingleRequest.parseBerTlv(nd2_NOTIF_SEQ_NO_IN1T[0].value);
279 if (nd2_NOTIF_SEQ_NO_IN1X1.length === 1 && nd2_NOTIF_SEQ_NO_IN1X1[0].tag === "A0") {
280 var nd2_NOTIF_SEQ_NO_IN1X2 = BindEs10xSingleRequest.parseBerTlv(nd2_NOTIF_SEQ_NO_IN1X1[0].value);
281 var nd2_NOTIF_SEQ_NO_IN1XHIT = 0;
282 for (var nd2_NOTIF_SEQ_NO_IN1XI = 0; nd2_NOTIF_SEQ_NO_IN1XI < nd2_NOTIF_SEQ_NO_IN1X2.length; nd2_NOTIF_SEQ_NO_IN1XI++) {
283 if (nd2_NOTIF_SEQ_NO_IN1X2[nd2_NOTIF_SEQ_NO_IN1XI].tag !== "BF2F") { continue; }
284 var nd2_NOTIF_SEQ_NO_IN1XM = BindEs10xSingleRequest.parseBerTlv(nd2_NOTIF_SEQ_NO_IN1X2[nd2_NOTIF_SEQ_NO_IN1XI].value);
285 for (var nd2_NOTIF_SEQ_NO_IN1XJ = 0; nd2_NOTIF_SEQ_NO_IN1XJ < nd2_NOTIF_SEQ_NO_IN1XM.length; nd2_NOTIF_SEQ_NO_IN1XJ++) {
286 if (nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XJ].tag === "81" && nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XJ].value === "80") {
287 nd2_NOTIF_SEQ_NO_IN1XHIT += 1;
288 if (nd2_NOTIF_SEQ_NO_IN1XHIT === 1) {
289 for (var nd2_NOTIF_SEQ_NO_IN1XK = 0; nd2_NOTIF_SEQ_NO_IN1XK < nd2_NOTIF_SEQ_NO_IN1XM.length; nd2_NOTIF_SEQ_NO_IN1XK++) {
290 if (nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XK].tag === "80") { nd2_NOTIF_SEQ_NO_IN1.seq = nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XK].value; nd2_NOTIF_SEQ_NO_IN1.ok = true; }
291 }
292 }
293 }
294 }
295 }
296 }
297 }
298 var nd2_NOTIF_SEQ_NO_IN1Req = nd2_NOTIF_SEQ_NO_IN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd2_NOTIF_SEQ_NO_IN1.seq))) : "";
299 // 步骤 2:SEQ01-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1, RQ35_001_2, RQ35_003_1)
300 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
301 var sdCla2 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
302 // runtime-bound payload: NOTIF_SEQ_NO_IN1 stays in execution domain
303 var s2 = bind.sendApdu(sdCla2, "E2", "91", "00", nd2_NOTIF_SEQ_NO_IN1Req, "00", "9000");
304 bind.checkData("S2-C1 SW", "9000", s2.sw);
305 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1", s2.cmd, profileAidSession);
306 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
307 var lw2T = BindEs10xSingleRequest.parseBerTlv(s2.resp);
308 var lw2Ok0 = lw2T.length === 1 && lw2T[0].tag === "BF2B";
309 var lw2_br = lw2Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw2T[0].value) : [];
310 var lw2_brtag = lw2_br.length === 1 ? lw2_br[0].tag : "";
311 var lw2_els = lw2_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw2_br[0].value) : [];
312 bind.checkData("S2-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count", "1", (lw2_brtag === "A0" && lw2_els.length === 1) ? "1" : "0");
313 bind.checkData("S2-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw2_brtag === "A0") ? "1" : "0");
314
315 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 1 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
316 var nd3_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
317 var nd3_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s1.resp);
318 if (nd3_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd3_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
319 var nd3_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd3_NOTIF_SEQ_NO_IN1_PIRT[0].value);
320 if (nd3_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd3_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
321 var nd3_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd3_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
322 var nd3_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
323 for (var nd3_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd3_NOTIF_SEQ_NO_IN1_PIRXI < nd3_NOTIF_SEQ_NO_IN1_PIRX2.length; nd3_NOTIF_SEQ_NO_IN1_PIRXI++) {
324 if (nd3_NOTIF_SEQ_NO_IN1_PIRX2[nd3_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
325 var nd3_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd3_NOTIF_SEQ_NO_IN1_PIRX2[nd3_NOTIF_SEQ_NO_IN1_PIRXI].value);
326 for (var nd3_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd3_NOTIF_SEQ_NO_IN1_PIRXJ < nd3_NOTIF_SEQ_NO_IN1_PIRXM.length; nd3_NOTIF_SEQ_NO_IN1_PIRXJ++) {
327 if (nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
328 nd3_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
329 if (nd3_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
330 for (var nd3_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd3_NOTIF_SEQ_NO_IN1_PIRXK < nd3_NOTIF_SEQ_NO_IN1_PIRXM.length; nd3_NOTIF_SEQ_NO_IN1_PIRXK++) {
331 if (nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd3_NOTIF_SEQ_NO_IN1_PIR.seq = nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXK].value; nd3_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
332 }
333 }
334 }
335 }
336 }
337 }
338 }
339 var nd3_NOTIF_SEQ_NO_IN1_PIRReq = nd3_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd3_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
340 // 步骤 3:SEQ01-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1, RQ35_001_2, RQ35_003_1)
341 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
342 var sdCla3 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
343 // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
344 var s3 = bind.sendApdu(sdCla3, "E2", "91", "00", nd3_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
345 bind.checkData("S3-C1 SW", "9000", s3.sw);
346 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s3.cmd, profileAidSession);
347 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
348 var lw3T = BindEs10xSingleRequest.parseBerTlv(s3.resp);
349 var lw3Ok0 = lw3T.length === 1 && lw3T[0].tag === "BF2B";
350 var lw3_br = lw3Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw3T[0].value) : [];
351 var lw3_brtag = lw3_br.length === 1 ? lw3_br[0].tag : "";
352 var lw3_els = lw3_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw3_br[0].value) : [];
353 bind.checkData("S3-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw3_brtag === "A0" && lw3_els.length === 1) ? "1" : "0");
354 bind.checkData("S3-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw3_brtag === "A0") ? "1" : "0");
355
356 // 步骤 4:SEQ02-IC5] MTD_STORE_DATA(tc_step)
357 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
358 var sdCla4 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
359 var s4 = bind.sendApdu(sdCla4, "E2", "91", "00", "BF2804810204F0", "00", "9000");
360 bind.checkData("S4-C1 SW", "9000", s4.sw);
361 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
362 var lw4T = BindEs10xSingleRequest.parseBerTlv(s4.resp);
363 var lw4Ok0 = lw4T.length === 1 && lw4T[0].tag === "BF28";
364 var lw4_br = lw4Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw4T[0].value) : [];
365 var lw4_brtag = lw4_br.length === 1 ? lw4_br[0].tag : "";
366 var lw4_els = lw4_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw4_br[0].value) : [];
367 bind.checkData("S4-C2 响应结构匹配 #R_LIST_NOTIF_EN1:ListNotificationResponse notificati branch/count", "1", (lw4_brtag === "A0" && lw4_els.length === 1) ? "1" : "0");
368
369 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 4 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
370 var nd5_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
371 var nd5_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s4.resp);
372 if (nd5_NOTIF_SEQ_NO_EN1T.length === 1 && nd5_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
373 var nd5_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd5_NOTIF_SEQ_NO_EN1T[0].value);
374 if (nd5_NOTIF_SEQ_NO_EN1X1.length === 1 && nd5_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
375 var nd5_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd5_NOTIF_SEQ_NO_EN1X1[0].value);
376 var nd5_NOTIF_SEQ_NO_EN1XHIT = 0;
377 for (var nd5_NOTIF_SEQ_NO_EN1XI = 0; nd5_NOTIF_SEQ_NO_EN1XI < nd5_NOTIF_SEQ_NO_EN1X2.length; nd5_NOTIF_SEQ_NO_EN1XI++) {
378 if (nd5_NOTIF_SEQ_NO_EN1X2[nd5_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
379 var nd5_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd5_NOTIF_SEQ_NO_EN1X2[nd5_NOTIF_SEQ_NO_EN1XI].value);
380 for (var nd5_NOTIF_SEQ_NO_EN1XJ = 0; nd5_NOTIF_SEQ_NO_EN1XJ < nd5_NOTIF_SEQ_NO_EN1XM.length; nd5_NOTIF_SEQ_NO_EN1XJ++) {
381 if (nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XJ].value === "40") {
382 nd5_NOTIF_SEQ_NO_EN1XHIT += 1;
383 if (nd5_NOTIF_SEQ_NO_EN1XHIT === 1) {
384 for (var nd5_NOTIF_SEQ_NO_EN1XK = 0; nd5_NOTIF_SEQ_NO_EN1XK < nd5_NOTIF_SEQ_NO_EN1XM.length; nd5_NOTIF_SEQ_NO_EN1XK++) {
385 if (nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd5_NOTIF_SEQ_NO_EN1.seq = nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XK].value; nd5_NOTIF_SEQ_NO_EN1.ok = true; }
386 }
387 }
388 }
389 }
390 }
391 }
392 }
393 var nd5_NOTIF_SEQ_NO_EN1Req = nd5_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd5_NOTIF_SEQ_NO_EN1.seq))) : "";
394 // 步骤 5:SEQ02-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_2, RQ35_003_1)
395 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
396 var sdCla5 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
397 // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
398 var s5 = bind.sendApdu(sdCla5, "E2", "91", "00", nd5_NOTIF_SEQ_NO_EN1Req, "00", "9000");
399 bind.checkData("S5-C1 SW", "9000", s5.sw);
400 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s5.cmd, profileAidSession);
401 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
402 var lw5T = BindEs10xSingleRequest.parseBerTlv(s5.resp);
403 var lw5Ok0 = lw5T.length === 1 && lw5T[0].tag === "BF2B";
404 var lw5_br = lw5Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw5T[0].value) : [];
405 var lw5_brtag = lw5_br.length === 1 ? lw5_br[0].tag : "";
406 var lw5_els = lw5_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw5_br[0].value) : [];
407 bind.checkData("S5-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw5_brtag === "A0" && lw5_els.length === 1) ? "1" : "0");
408 bind.checkData("S5-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw5_brtag === "A0") ? "1" : "0");
409
410 // 步骤 6:SEQ03-IC6] MTD_STORE_DATA(tc_step)
411 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
412 var sdCla6 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
413 var s6 = bind.sendApdu(sdCla6, "E2", "91", "00", "BF2804810204F0", "00", "9000");
414 bind.checkData("S6-C1 SW", "9000", s6.sw);
415 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
416 var lw6T = BindEs10xSingleRequest.parseBerTlv(s6.resp);
417 var lw6Ok0 = lw6T.length === 1 && lw6T[0].tag === "BF28";
418 var lw6_br = lw6Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw6T[0].value) : [];
419 var lw6_brtag = lw6_br.length === 1 ? lw6_br[0].tag : "";
420 var lw6_els = lw6_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw6_br[0].value) : [];
421 bind.checkData("S6-C2 响应结构匹配 #R_LIST_NOTIF_DI1:ListNotificationResponse notificati branch/count", "1", (lw6_brtag === "A0" && lw6_els.length === 1) ? "1" : "0");
422
423 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DI1 ← 步 6 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=20 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
424 var nd7_NOTIF_SEQ_NO_DI1 = {ok: false, seq: ""};
425 var nd7_NOTIF_SEQ_NO_DI1T = BindEs10xSingleRequest.parseBerTlv(s6.resp);
426 if (nd7_NOTIF_SEQ_NO_DI1T.length === 1 && nd7_NOTIF_SEQ_NO_DI1T[0].tag === "BF28") {
427 var nd7_NOTIF_SEQ_NO_DI1X1 = BindEs10xSingleRequest.parseBerTlv(nd7_NOTIF_SEQ_NO_DI1T[0].value);
428 if (nd7_NOTIF_SEQ_NO_DI1X1.length === 1 && nd7_NOTIF_SEQ_NO_DI1X1[0].tag === "A0") {
429 var nd7_NOTIF_SEQ_NO_DI1X2 = BindEs10xSingleRequest.parseBerTlv(nd7_NOTIF_SEQ_NO_DI1X1[0].value);
430 var nd7_NOTIF_SEQ_NO_DI1XHIT = 0;
431 for (var nd7_NOTIF_SEQ_NO_DI1XI = 0; nd7_NOTIF_SEQ_NO_DI1XI < nd7_NOTIF_SEQ_NO_DI1X2.length; nd7_NOTIF_SEQ_NO_DI1XI++) {
432 if (nd7_NOTIF_SEQ_NO_DI1X2[nd7_NOTIF_SEQ_NO_DI1XI].tag !== "BF2F") { continue; }
433 var nd7_NOTIF_SEQ_NO_DI1XM = BindEs10xSingleRequest.parseBerTlv(nd7_NOTIF_SEQ_NO_DI1X2[nd7_NOTIF_SEQ_NO_DI1XI].value);
434 for (var nd7_NOTIF_SEQ_NO_DI1XJ = 0; nd7_NOTIF_SEQ_NO_DI1XJ < nd7_NOTIF_SEQ_NO_DI1XM.length; nd7_NOTIF_SEQ_NO_DI1XJ++) {
435 if (nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XJ].tag === "81" && nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XJ].value === "20") {
436 nd7_NOTIF_SEQ_NO_DI1XHIT += 1;
437 if (nd7_NOTIF_SEQ_NO_DI1XHIT === 1) {
438 for (var nd7_NOTIF_SEQ_NO_DI1XK = 0; nd7_NOTIF_SEQ_NO_DI1XK < nd7_NOTIF_SEQ_NO_DI1XM.length; nd7_NOTIF_SEQ_NO_DI1XK++) {
439 if (nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XK].tag === "80") { nd7_NOTIF_SEQ_NO_DI1.seq = nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XK].value; nd7_NOTIF_SEQ_NO_DI1.ok = true; }
440 }
441 }
442 }
443 }
444 }
445 }
446 }
447 var nd7_NOTIF_SEQ_NO_DI1Req = nd7_NOTIF_SEQ_NO_DI1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd7_NOTIF_SEQ_NO_DI1.seq))) : "";
448 // 步骤 7:SEQ03-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_2, RQ35_003_1)
449 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
450 var sdCla7 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
451 // runtime-bound payload: NOTIF_SEQ_NO_DI1 stays in execution domain
452 var s7 = bind.sendApdu(sdCla7, "E2", "91", "00", nd7_NOTIF_SEQ_NO_DI1Req, "00", "9000");
453 bind.checkData("S7-C1 SW", "9000", s7.sw);
454 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DI1", s7.cmd, profileAidSession);
455 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
456 var lw7T = BindEs10xSingleRequest.parseBerTlv(s7.resp);
457 var lw7Ok0 = lw7T.length === 1 && lw7T[0].tag === "BF2B";
458 var lw7_br = lw7Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw7T[0].value) : [];
459 var lw7_brtag = lw7_br.length === 1 ? lw7_br[0].tag : "";
460 var lw7_els = lw7_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw7_br[0].value) : [];
461 bind.checkData("S7-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw7_brtag === "A0" && lw7_els.length === 1) ? "1" : "0");
462 bind.checkData("S7-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw7_brtag === "A0") ? "1" : "0");
463
464 // 步骤 8:SEQ04-IC7] MTD_STORE_DATA(tc_step)
465 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
466 var sdCla8 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
467 var s8 = bind.sendApdu(sdCla8, "E2", "91", "00", "BF2804810204F0", "00", "9000");
468 bind.checkData("S8-C1 SW", "9000", s8.sw);
469 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
470 var lw8T = BindEs10xSingleRequest.parseBerTlv(s8.resp);
471 var lw8Ok0 = lw8T.length === 1 && lw8T[0].tag === "BF28";
472 var lw8_br = lw8Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw8T[0].value) : [];
473 var lw8_brtag = lw8_br.length === 1 ? lw8_br[0].tag : "";
474 var lw8_els = lw8_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw8_br[0].value) : [];
475 bind.checkData("S8-C2 响应结构匹配 #R_LIST_NOTIF_DE1:ListNotificationResponse notificati branch/count", "1", (lw8_brtag === "A0" && lw8_els.length === 1) ? "1" : "0");
476
477 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DE1 ← 步 8 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=10 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
478 var nd9_NOTIF_SEQ_NO_DE1 = {ok: false, seq: ""};
479 var nd9_NOTIF_SEQ_NO_DE1T = BindEs10xSingleRequest.parseBerTlv(s8.resp);
480 if (nd9_NOTIF_SEQ_NO_DE1T.length === 1 && nd9_NOTIF_SEQ_NO_DE1T[0].tag === "BF28") {
481 var nd9_NOTIF_SEQ_NO_DE1X1 = BindEs10xSingleRequest.parseBerTlv(nd9_NOTIF_SEQ_NO_DE1T[0].value);
482 if (nd9_NOTIF_SEQ_NO_DE1X1.length === 1 && nd9_NOTIF_SEQ_NO_DE1X1[0].tag === "A0") {
483 var nd9_NOTIF_SEQ_NO_DE1X2 = BindEs10xSingleRequest.parseBerTlv(nd9_NOTIF_SEQ_NO_DE1X1[0].value);
484 var nd9_NOTIF_SEQ_NO_DE1XHIT = 0;
485 for (var nd9_NOTIF_SEQ_NO_DE1XI = 0; nd9_NOTIF_SEQ_NO_DE1XI < nd9_NOTIF_SEQ_NO_DE1X2.length; nd9_NOTIF_SEQ_NO_DE1XI++) {
486 if (nd9_NOTIF_SEQ_NO_DE1X2[nd9_NOTIF_SEQ_NO_DE1XI].tag !== "BF2F") { continue; }
487 var nd9_NOTIF_SEQ_NO_DE1XM = BindEs10xSingleRequest.parseBerTlv(nd9_NOTIF_SEQ_NO_DE1X2[nd9_NOTIF_SEQ_NO_DE1XI].value);
488 for (var nd9_NOTIF_SEQ_NO_DE1XJ = 0; nd9_NOTIF_SEQ_NO_DE1XJ < nd9_NOTIF_SEQ_NO_DE1XM.length; nd9_NOTIF_SEQ_NO_DE1XJ++) {
489 if (nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XJ].tag === "81" && nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XJ].value === "10") {
490 nd9_NOTIF_SEQ_NO_DE1XHIT += 1;
491 if (nd9_NOTIF_SEQ_NO_DE1XHIT === 1) {
492 for (var nd9_NOTIF_SEQ_NO_DE1XK = 0; nd9_NOTIF_SEQ_NO_DE1XK < nd9_NOTIF_SEQ_NO_DE1XM.length; nd9_NOTIF_SEQ_NO_DE1XK++) {
493 if (nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XK].tag === "80") { nd9_NOTIF_SEQ_NO_DE1.seq = nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XK].value; nd9_NOTIF_SEQ_NO_DE1.ok = true; }
494 }
495 }
496 }
497 }
498 }
499 }
500 }
501 var nd9_NOTIF_SEQ_NO_DE1Req = nd9_NOTIF_SEQ_NO_DE1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd9_NOTIF_SEQ_NO_DE1.seq))) : "";
502 // 步骤 9:SEQ04-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_2, RQ35_003_1)
503 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
504 var sdCla9 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
505 // runtime-bound payload: NOTIF_SEQ_NO_DE1 stays in execution domain
506 var s9 = bind.sendApdu(sdCla9, "E2", "91", "00", nd9_NOTIF_SEQ_NO_DE1Req, "00", "9000");
507 bind.checkData("S9-C1 SW", "9000", s9.sw);
508 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DE1", s9.cmd, profileAidSession);
509 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
510 var lw9T = BindEs10xSingleRequest.parseBerTlv(s9.resp);
511 var lw9Ok0 = lw9T.length === 1 && lw9T[0].tag === "BF2B";
512 var lw9_br = lw9Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw9T[0].value) : [];
513 var lw9_brtag = lw9_br.length === 1 ? lw9_br[0].tag : "";
514 var lw9_els = lw9_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw9_br[0].value) : [];
515 bind.checkData("S9-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw9_brtag === "A0" && lw9_els.length === 1) ? "1" : "0");
516 bind.checkData("S9-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw9_brtag === "A0") ? "1" : "0");
517
518 // 步骤 10:SEQ05-IC5] MTD_STORE_DATA(tc_step)
519 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
520 var sdCla10 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
521 var s10 = bind.sendApdu(sdCla10, "E2", "91", "00", "BF2804810204F0", "00", "9000");
522 bind.checkData("S10-C1 SW", "9000", s10.sw);
523 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
524 var lw10T = BindEs10xSingleRequest.parseBerTlv(s10.resp);
525 var lw10Ok0 = lw10T.length === 1 && lw10T[0].tag === "BF28";
526 var lw10_br = lw10Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw10T[0].value) : [];
527 var lw10_brtag = lw10_br.length === 1 ? lw10_br[0].tag : "";
528 var lw10_els = lw10_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw10_br[0].value) : [];
529 bind.checkData("S10-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_IN2_PIR:ListNotificationRespons branch/count", "1", (lw10_brtag === "A0" && lw10_els.length === 2) ? "1" : "0");
530
531 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 10 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
532 var nd11_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
533 var nd11_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s10.resp);
534 if (nd11_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd11_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
535 var nd11_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd11_NOTIF_SEQ_NO_IN1_PIRT[0].value);
536 if (nd11_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd11_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
537 var nd11_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd11_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
538 var nd11_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
539 for (var nd11_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd11_NOTIF_SEQ_NO_IN1_PIRXI < nd11_NOTIF_SEQ_NO_IN1_PIRX2.length; nd11_NOTIF_SEQ_NO_IN1_PIRXI++) {
540 if (nd11_NOTIF_SEQ_NO_IN1_PIRX2[nd11_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
541 var nd11_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd11_NOTIF_SEQ_NO_IN1_PIRX2[nd11_NOTIF_SEQ_NO_IN1_PIRXI].value);
542 for (var nd11_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd11_NOTIF_SEQ_NO_IN1_PIRXJ < nd11_NOTIF_SEQ_NO_IN1_PIRXM.length; nd11_NOTIF_SEQ_NO_IN1_PIRXJ++) {
543 if (nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
544 nd11_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
545 if (nd11_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
546 for (var nd11_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd11_NOTIF_SEQ_NO_IN1_PIRXK < nd11_NOTIF_SEQ_NO_IN1_PIRXM.length; nd11_NOTIF_SEQ_NO_IN1_PIRXK++) {
547 if (nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd11_NOTIF_SEQ_NO_IN1_PIR.seq = nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXK].value; nd11_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
548 }
549 }
550 }
551 }
552 }
553 }
554 }
555 var nd11_NOTIF_SEQ_NO_IN1_PIRReq = nd11_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd11_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
556 // 步骤 11:SEQ05-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
557 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
558 var sdCla11 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
559 // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
560 var s11 = bind.sendApdu(sdCla11, "E2", "91", "00", nd11_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
561 bind.checkData("S11-C1 SW", "9000", s11.sw);
562 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s11.cmd, profileAidSession);
563 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
564 var lw11T = BindEs10xSingleRequest.parseBerTlv(s11.resp);
565 var lw11Ok0 = lw11T.length === 1 && lw11T[0].tag === "BF2B";
566 var lw11_br = lw11Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw11T[0].value) : [];
567 var lw11_brtag = lw11_br.length === 1 ? lw11_br[0].tag : "";
568 var lw11_els = lw11_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw11_br[0].value) : [];
569 bind.checkData("S11-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw11_brtag === "A0" && lw11_els.length === 1) ? "1" : "0");
570 bind.checkData("S11-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw11_brtag === "A0") ? "1" : "0");
571
572 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN2_PIR ← 步 10 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
573 var nd12_NOTIF_SEQ_NO_IN2_PIR = {ok: false, seq: ""};
574 var nd12_NOTIF_SEQ_NO_IN2_PIRT = BindEs10xSingleRequest.parseBerTlv(s10.resp);
575 if (nd12_NOTIF_SEQ_NO_IN2_PIRT.length === 1 && nd12_NOTIF_SEQ_NO_IN2_PIRT[0].tag === "BF28") {
576 var nd12_NOTIF_SEQ_NO_IN2_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd12_NOTIF_SEQ_NO_IN2_PIRT[0].value);
577 if (nd12_NOTIF_SEQ_NO_IN2_PIRX1.length === 1 && nd12_NOTIF_SEQ_NO_IN2_PIRX1[0].tag === "A0") {
578 var nd12_NOTIF_SEQ_NO_IN2_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd12_NOTIF_SEQ_NO_IN2_PIRX1[0].value);
579 var nd12_NOTIF_SEQ_NO_IN2_PIRXHIT = 0;
580 for (var nd12_NOTIF_SEQ_NO_IN2_PIRXI = 0; nd12_NOTIF_SEQ_NO_IN2_PIRXI < nd12_NOTIF_SEQ_NO_IN2_PIRX2.length; nd12_NOTIF_SEQ_NO_IN2_PIRXI++) {
581 if (nd12_NOTIF_SEQ_NO_IN2_PIRX2[nd12_NOTIF_SEQ_NO_IN2_PIRXI].tag !== "BF2F") { continue; }
582 var nd12_NOTIF_SEQ_NO_IN2_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd12_NOTIF_SEQ_NO_IN2_PIRX2[nd12_NOTIF_SEQ_NO_IN2_PIRXI].value);
583 for (var nd12_NOTIF_SEQ_NO_IN2_PIRXJ = 0; nd12_NOTIF_SEQ_NO_IN2_PIRXJ < nd12_NOTIF_SEQ_NO_IN2_PIRXM.length; nd12_NOTIF_SEQ_NO_IN2_PIRXJ++) {
584 if (nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXJ].tag === "81" && nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXJ].value === "80") {
585 nd12_NOTIF_SEQ_NO_IN2_PIRXHIT += 1;
586 if (nd12_NOTIF_SEQ_NO_IN2_PIRXHIT === 2) {
587 for (var nd12_NOTIF_SEQ_NO_IN2_PIRXK = 0; nd12_NOTIF_SEQ_NO_IN2_PIRXK < nd12_NOTIF_SEQ_NO_IN2_PIRXM.length; nd12_NOTIF_SEQ_NO_IN2_PIRXK++) {
588 if (nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXK].tag === "80") { nd12_NOTIF_SEQ_NO_IN2_PIR.seq = nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXK].value; nd12_NOTIF_SEQ_NO_IN2_PIR.ok = true; }
589 }
590 }
591 }
592 }
593 }
594 }
595 }
596 var nd12_NOTIF_SEQ_NO_IN2_PIRReq = nd12_NOTIF_SEQ_NO_IN2_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd12_NOTIF_SEQ_NO_IN2_PIR.seq))) : "";
597 // 步骤 12:SEQ05-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
598 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
599 var sdCla12 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
600 // runtime-bound payload: NOTIF_SEQ_NO_IN2_PIR stays in execution domain
601 var s12 = bind.sendApdu(sdCla12, "E2", "91", "00", nd12_NOTIF_SEQ_NO_IN2_PIRReq, "00", "9000");
602 bind.checkData("S12-C1 SW", "9000", s12.sw);
603 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN2_PIR", s12.cmd, profileAidSession);
604 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
605 var lw12T = BindEs10xSingleRequest.parseBerTlv(s12.resp);
606 var lw12Ok0 = lw12T.length === 1 && lw12T[0].tag === "BF2B";
607 var lw12_br = lw12Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw12T[0].value) : [];
608 var lw12_brtag = lw12_br.length === 1 ? lw12_br[0].tag : "";
609 var lw12_els = lw12_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw12_br[0].value) : [];
610 bind.checkData("S12-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count", "1", (lw12_brtag === "A0" && lw12_els.length === 1) ? "1" : "0");
611 bind.checkData("S12-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw12_brtag === "A0") ? "1" : "0");
612
613 // 步骤 13:SEQ06-IC5] MTD_STORE_DATA(tc_step)
614 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
615 var sdCla13 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
616 var s13 = bind.sendApdu(sdCla13, "E2", "91", "00", "BF2804810204F0", "00", "9000");
617 bind.checkData("S13-C1 SW", "9000", s13.sw);
618 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
619 var lw13T = BindEs10xSingleRequest.parseBerTlv(s13.resp);
620 var lw13Ok0 = lw13T.length === 1 && lw13T[0].tag === "BF28";
621 var lw13_br = lw13Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw13T[0].value) : [];
622 var lw13_brtag = lw13_br.length === 1 ? lw13_br[0].tag : "";
623 var lw13_els = lw13_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw13_br[0].value) : [];
624 bind.checkData("S13-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_EN1:ListNotificationResponse no branch/count", "1", (lw13_brtag === "A0" && lw13_els.length === 2) ? "1" : "0");
625
626 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 13 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
627 var nd14_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
628 var nd14_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s13.resp);
629 if (nd14_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd14_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
630 var nd14_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd14_NOTIF_SEQ_NO_IN1_PIRT[0].value);
631 if (nd14_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd14_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
632 var nd14_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd14_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
633 var nd14_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
634 for (var nd14_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd14_NOTIF_SEQ_NO_IN1_PIRXI < nd14_NOTIF_SEQ_NO_IN1_PIRX2.length; nd14_NOTIF_SEQ_NO_IN1_PIRXI++) {
635 if (nd14_NOTIF_SEQ_NO_IN1_PIRX2[nd14_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
636 var nd14_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd14_NOTIF_SEQ_NO_IN1_PIRX2[nd14_NOTIF_SEQ_NO_IN1_PIRXI].value);
637 for (var nd14_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd14_NOTIF_SEQ_NO_IN1_PIRXJ < nd14_NOTIF_SEQ_NO_IN1_PIRXM.length; nd14_NOTIF_SEQ_NO_IN1_PIRXJ++) {
638 if (nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
639 nd14_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
640 if (nd14_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
641 for (var nd14_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd14_NOTIF_SEQ_NO_IN1_PIRXK < nd14_NOTIF_SEQ_NO_IN1_PIRXM.length; nd14_NOTIF_SEQ_NO_IN1_PIRXK++) {
642 if (nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd14_NOTIF_SEQ_NO_IN1_PIR.seq = nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXK].value; nd14_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
643 }
644 }
645 }
646 }
647 }
648 }
649 }
650 var nd14_NOTIF_SEQ_NO_IN1_PIRReq = nd14_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd14_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
651 // 步骤 14:SEQ06-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
652 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
653 var sdCla14 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
654 // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
655 var s14 = bind.sendApdu(sdCla14, "E2", "91", "00", nd14_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
656 bind.checkData("S14-C1 SW", "9000", s14.sw);
657 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s14.cmd, profileAidSession);
658 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
659 var lw14T = BindEs10xSingleRequest.parseBerTlv(s14.resp);
660 var lw14Ok0 = lw14T.length === 1 && lw14T[0].tag === "BF2B";
661 var lw14_br = lw14Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw14T[0].value) : [];
662 var lw14_brtag = lw14_br.length === 1 ? lw14_br[0].tag : "";
663 var lw14_els = lw14_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw14_br[0].value) : [];
664 bind.checkData("S14-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw14_brtag === "A0" && lw14_els.length === 1) ? "1" : "0");
665 bind.checkData("S14-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw14_brtag === "A0") ? "1" : "0");
666
667 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 13 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
668 var nd15_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
669 var nd15_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s13.resp);
670 if (nd15_NOTIF_SEQ_NO_EN1T.length === 1 && nd15_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
671 var nd15_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd15_NOTIF_SEQ_NO_EN1T[0].value);
672 if (nd15_NOTIF_SEQ_NO_EN1X1.length === 1 && nd15_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
673 var nd15_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd15_NOTIF_SEQ_NO_EN1X1[0].value);
674 var nd15_NOTIF_SEQ_NO_EN1XHIT = 0;
675 for (var nd15_NOTIF_SEQ_NO_EN1XI = 0; nd15_NOTIF_SEQ_NO_EN1XI < nd15_NOTIF_SEQ_NO_EN1X2.length; nd15_NOTIF_SEQ_NO_EN1XI++) {
676 if (nd15_NOTIF_SEQ_NO_EN1X2[nd15_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
677 var nd15_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd15_NOTIF_SEQ_NO_EN1X2[nd15_NOTIF_SEQ_NO_EN1XI].value);
678 for (var nd15_NOTIF_SEQ_NO_EN1XJ = 0; nd15_NOTIF_SEQ_NO_EN1XJ < nd15_NOTIF_SEQ_NO_EN1XM.length; nd15_NOTIF_SEQ_NO_EN1XJ++) {
679 if (nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XJ].value === "40") {
680 nd15_NOTIF_SEQ_NO_EN1XHIT += 1;
681 if (nd15_NOTIF_SEQ_NO_EN1XHIT === 1) {
682 for (var nd15_NOTIF_SEQ_NO_EN1XK = 0; nd15_NOTIF_SEQ_NO_EN1XK < nd15_NOTIF_SEQ_NO_EN1XM.length; nd15_NOTIF_SEQ_NO_EN1XK++) {
683 if (nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd15_NOTIF_SEQ_NO_EN1.seq = nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XK].value; nd15_NOTIF_SEQ_NO_EN1.ok = true; }
684 }
685 }
686 }
687 }
688 }
689 }
690 }
691 var nd15_NOTIF_SEQ_NO_EN1Req = nd15_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd15_NOTIF_SEQ_NO_EN1.seq))) : "";
692 // 步骤 15:SEQ06-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
693 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
694 var sdCla15 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
695 // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
696 var s15 = bind.sendApdu(sdCla15, "E2", "91", "00", nd15_NOTIF_SEQ_NO_EN1Req, "00", "9000");
697 bind.checkData("S15-C1 SW", "9000", s15.sw);
698 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s15.cmd, profileAidSession);
699 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
700 var lw15T = BindEs10xSingleRequest.parseBerTlv(s15.resp);
701 var lw15Ok0 = lw15T.length === 1 && lw15T[0].tag === "BF2B";
702 var lw15_br = lw15Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw15T[0].value) : [];
703 var lw15_brtag = lw15_br.length === 1 ? lw15_br[0].tag : "";
704 var lw15_els = lw15_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw15_br[0].value) : [];
705 bind.checkData("S15-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw15_brtag === "A0" && lw15_els.length === 1) ? "1" : "0");
706 bind.checkData("S15-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw15_brtag === "A0") ? "1" : "0");
707
708 // 步骤 16:SEQ07-IC7] MTD_STORE_DATA(tc_step)
709 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
710 var sdCla16 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
711 var s16 = bind.sendApdu(sdCla16, "E2", "91", "00", "BF2804810204F0", "00", "9000");
712 bind.checkData("S16-C1 SW", "9000", s16.sw);
713 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
714 var lw16T = BindEs10xSingleRequest.parseBerTlv(s16.resp);
715 var lw16Ok0 = lw16T.length === 1 && lw16T[0].tag === "BF28";
716 var lw16_br = lw16Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw16T[0].value) : [];
717 var lw16_brtag = lw16_br.length === 1 ? lw16_br[0].tag : "";
718 var lw16_els = lw16_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw16_br[0].value) : [];
719 bind.checkData("S16-C2 响应结构匹配 #R_LIST_NOTIF_DI1_DE1:ListNotificationResponse notifi branch/count", "1", (lw16_brtag === "A0" && lw16_els.length === 2) ? "1" : "0");
720
721 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DI1 ← 步 16 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=20 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
722 var nd17_NOTIF_SEQ_NO_DI1 = {ok: false, seq: ""};
723 var nd17_NOTIF_SEQ_NO_DI1T = BindEs10xSingleRequest.parseBerTlv(s16.resp);
724 if (nd17_NOTIF_SEQ_NO_DI1T.length === 1 && nd17_NOTIF_SEQ_NO_DI1T[0].tag === "BF28") {
725 var nd17_NOTIF_SEQ_NO_DI1X1 = BindEs10xSingleRequest.parseBerTlv(nd17_NOTIF_SEQ_NO_DI1T[0].value);
726 if (nd17_NOTIF_SEQ_NO_DI1X1.length === 1 && nd17_NOTIF_SEQ_NO_DI1X1[0].tag === "A0") {
727 var nd17_NOTIF_SEQ_NO_DI1X2 = BindEs10xSingleRequest.parseBerTlv(nd17_NOTIF_SEQ_NO_DI1X1[0].value);
728 var nd17_NOTIF_SEQ_NO_DI1XHIT = 0;
729 for (var nd17_NOTIF_SEQ_NO_DI1XI = 0; nd17_NOTIF_SEQ_NO_DI1XI < nd17_NOTIF_SEQ_NO_DI1X2.length; nd17_NOTIF_SEQ_NO_DI1XI++) {
730 if (nd17_NOTIF_SEQ_NO_DI1X2[nd17_NOTIF_SEQ_NO_DI1XI].tag !== "BF2F") { continue; }
731 var nd17_NOTIF_SEQ_NO_DI1XM = BindEs10xSingleRequest.parseBerTlv(nd17_NOTIF_SEQ_NO_DI1X2[nd17_NOTIF_SEQ_NO_DI1XI].value);
732 for (var nd17_NOTIF_SEQ_NO_DI1XJ = 0; nd17_NOTIF_SEQ_NO_DI1XJ < nd17_NOTIF_SEQ_NO_DI1XM.length; nd17_NOTIF_SEQ_NO_DI1XJ++) {
733 if (nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XJ].tag === "81" && nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XJ].value === "20") {
734 nd17_NOTIF_SEQ_NO_DI1XHIT += 1;
735 if (nd17_NOTIF_SEQ_NO_DI1XHIT === 1) {
736 for (var nd17_NOTIF_SEQ_NO_DI1XK = 0; nd17_NOTIF_SEQ_NO_DI1XK < nd17_NOTIF_SEQ_NO_DI1XM.length; nd17_NOTIF_SEQ_NO_DI1XK++) {
737 if (nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XK].tag === "80") { nd17_NOTIF_SEQ_NO_DI1.seq = nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XK].value; nd17_NOTIF_SEQ_NO_DI1.ok = true; }
738 }
739 }
740 }
741 }
742 }
743 }
744 }
745 var nd17_NOTIF_SEQ_NO_DI1Req = nd17_NOTIF_SEQ_NO_DI1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd17_NOTIF_SEQ_NO_DI1.seq))) : "";
746 // 步骤 17:SEQ07-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
747 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
748 var sdCla17 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
749 // runtime-bound payload: NOTIF_SEQ_NO_DI1 stays in execution domain
750 var s17 = bind.sendApdu(sdCla17, "E2", "91", "00", nd17_NOTIF_SEQ_NO_DI1Req, "00", "9000");
751 bind.checkData("S17-C1 SW", "9000", s17.sw);
752 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DI1", s17.cmd, profileAidSession);
753 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
754 var lw17T = BindEs10xSingleRequest.parseBerTlv(s17.resp);
755 var lw17Ok0 = lw17T.length === 1 && lw17T[0].tag === "BF2B";
756 var lw17_br = lw17Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw17T[0].value) : [];
757 var lw17_brtag = lw17_br.length === 1 ? lw17_br[0].tag : "";
758 var lw17_els = lw17_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw17_br[0].value) : [];
759 bind.checkData("S17-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw17_brtag === "A0" && lw17_els.length === 1) ? "1" : "0");
760 bind.checkData("S17-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw17_brtag === "A0") ? "1" : "0");
761
762 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DE1 ← 步 16 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=10 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
763 var nd18_NOTIF_SEQ_NO_DE1 = {ok: false, seq: ""};
764 var nd18_NOTIF_SEQ_NO_DE1T = BindEs10xSingleRequest.parseBerTlv(s16.resp);
765 if (nd18_NOTIF_SEQ_NO_DE1T.length === 1 && nd18_NOTIF_SEQ_NO_DE1T[0].tag === "BF28") {
766 var nd18_NOTIF_SEQ_NO_DE1X1 = BindEs10xSingleRequest.parseBerTlv(nd18_NOTIF_SEQ_NO_DE1T[0].value);
767 if (nd18_NOTIF_SEQ_NO_DE1X1.length === 1 && nd18_NOTIF_SEQ_NO_DE1X1[0].tag === "A0") {
768 var nd18_NOTIF_SEQ_NO_DE1X2 = BindEs10xSingleRequest.parseBerTlv(nd18_NOTIF_SEQ_NO_DE1X1[0].value);
769 var nd18_NOTIF_SEQ_NO_DE1XHIT = 0;
770 for (var nd18_NOTIF_SEQ_NO_DE1XI = 0; nd18_NOTIF_SEQ_NO_DE1XI < nd18_NOTIF_SEQ_NO_DE1X2.length; nd18_NOTIF_SEQ_NO_DE1XI++) {
771 if (nd18_NOTIF_SEQ_NO_DE1X2[nd18_NOTIF_SEQ_NO_DE1XI].tag !== "BF2F") { continue; }
772 var nd18_NOTIF_SEQ_NO_DE1XM = BindEs10xSingleRequest.parseBerTlv(nd18_NOTIF_SEQ_NO_DE1X2[nd18_NOTIF_SEQ_NO_DE1XI].value);
773 for (var nd18_NOTIF_SEQ_NO_DE1XJ = 0; nd18_NOTIF_SEQ_NO_DE1XJ < nd18_NOTIF_SEQ_NO_DE1XM.length; nd18_NOTIF_SEQ_NO_DE1XJ++) {
774 if (nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XJ].tag === "81" && nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XJ].value === "10") {
775 nd18_NOTIF_SEQ_NO_DE1XHIT += 1;
776 if (nd18_NOTIF_SEQ_NO_DE1XHIT === 1) {
777 for (var nd18_NOTIF_SEQ_NO_DE1XK = 0; nd18_NOTIF_SEQ_NO_DE1XK < nd18_NOTIF_SEQ_NO_DE1XM.length; nd18_NOTIF_SEQ_NO_DE1XK++) {
778 if (nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XK].tag === "80") { nd18_NOTIF_SEQ_NO_DE1.seq = nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XK].value; nd18_NOTIF_SEQ_NO_DE1.ok = true; }
779 }
780 }
781 }
782 }
783 }
784 }
785 }
786 var nd18_NOTIF_SEQ_NO_DE1Req = nd18_NOTIF_SEQ_NO_DE1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd18_NOTIF_SEQ_NO_DE1.seq))) : "";
787 // 步骤 18:SEQ07-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
788 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
789 var sdCla18 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
790 // runtime-bound payload: NOTIF_SEQ_NO_DE1 stays in execution domain
791 var s18 = bind.sendApdu(sdCla18, "E2", "91", "00", nd18_NOTIF_SEQ_NO_DE1Req, "00", "9000");
792 bind.checkData("S18-C1 SW", "9000", s18.sw);
793 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DE1", s18.cmd, profileAidSession);
794 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
795 var lw18T = BindEs10xSingleRequest.parseBerTlv(s18.resp);
796 var lw18Ok0 = lw18T.length === 1 && lw18T[0].tag === "BF2B";
797 var lw18_br = lw18Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw18T[0].value) : [];
798 var lw18_brtag = lw18_br.length === 1 ? lw18_br[0].tag : "";
799 var lw18_els = lw18_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw18_br[0].value) : [];
800 bind.checkData("S18-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw18_brtag === "A0" && lw18_els.length === 1) ? "1" : "0");
801 bind.checkData("S18-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw18_brtag === "A0") ? "1" : "0");
802
803 // 步骤 19:SEQ08-IC5] MTD_STORE_DATA(tc_step)
804 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
805 var sdCla19 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
806 var s19 = bind.sendApdu(sdCla19, "E2", "91", "00", "BF2804810204F0", "00", "9000");
807 bind.checkData("S19-C1 SW", "9000", s19.sw);
808 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
809 var lw19T = BindEs10xSingleRequest.parseBerTlv(s19.resp);
810 var lw19Ok0 = lw19T.length === 1 && lw19T[0].tag === "BF28";
811 var lw19_br = lw19Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw19T[0].value) : [];
812 var lw19_brtag = lw19_br.length === 1 ? lw19_br[0].tag : "";
813 var lw19_els = lw19_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw19_br[0].value) : [];
814 bind.checkData("S19-C2 响应结构匹配 #R_LIST_NOTIF_IN1_EN1:ListNotificationResponse notifi branch/count", "1", (lw19_brtag === "A0" && lw19_els.length === 2) ? "1" : "0");
815
816 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1 ← 步 19 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
817 var nd20_NOTIF_SEQ_NO_IN1 = {ok: false, seq: ""};
818 var nd20_NOTIF_SEQ_NO_IN1T = BindEs10xSingleRequest.parseBerTlv(s19.resp);
819 if (nd20_NOTIF_SEQ_NO_IN1T.length === 1 && nd20_NOTIF_SEQ_NO_IN1T[0].tag === "BF28") {
820 var nd20_NOTIF_SEQ_NO_IN1X1 = BindEs10xSingleRequest.parseBerTlv(nd20_NOTIF_SEQ_NO_IN1T[0].value);
821 if (nd20_NOTIF_SEQ_NO_IN1X1.length === 1 && nd20_NOTIF_SEQ_NO_IN1X1[0].tag === "A0") {
822 var nd20_NOTIF_SEQ_NO_IN1X2 = BindEs10xSingleRequest.parseBerTlv(nd20_NOTIF_SEQ_NO_IN1X1[0].value);
823 var nd20_NOTIF_SEQ_NO_IN1XHIT = 0;
824 for (var nd20_NOTIF_SEQ_NO_IN1XI = 0; nd20_NOTIF_SEQ_NO_IN1XI < nd20_NOTIF_SEQ_NO_IN1X2.length; nd20_NOTIF_SEQ_NO_IN1XI++) {
825 if (nd20_NOTIF_SEQ_NO_IN1X2[nd20_NOTIF_SEQ_NO_IN1XI].tag !== "BF2F") { continue; }
826 var nd20_NOTIF_SEQ_NO_IN1XM = BindEs10xSingleRequest.parseBerTlv(nd20_NOTIF_SEQ_NO_IN1X2[nd20_NOTIF_SEQ_NO_IN1XI].value);
827 for (var nd20_NOTIF_SEQ_NO_IN1XJ = 0; nd20_NOTIF_SEQ_NO_IN1XJ < nd20_NOTIF_SEQ_NO_IN1XM.length; nd20_NOTIF_SEQ_NO_IN1XJ++) {
828 if (nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XJ].tag === "81" && nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XJ].value === "80") {
829 nd20_NOTIF_SEQ_NO_IN1XHIT += 1;
830 if (nd20_NOTIF_SEQ_NO_IN1XHIT === 1) {
831 for (var nd20_NOTIF_SEQ_NO_IN1XK = 0; nd20_NOTIF_SEQ_NO_IN1XK < nd20_NOTIF_SEQ_NO_IN1XM.length; nd20_NOTIF_SEQ_NO_IN1XK++) {
832 if (nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XK].tag === "80") { nd20_NOTIF_SEQ_NO_IN1.seq = nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XK].value; nd20_NOTIF_SEQ_NO_IN1.ok = true; }
833 }
834 }
835 }
836 }
837 }
838 }
839 }
840 var nd20_NOTIF_SEQ_NO_IN1Req = nd20_NOTIF_SEQ_NO_IN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd20_NOTIF_SEQ_NO_IN1.seq))) : "";
841 // 步骤 20:SEQ08-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
842 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
843 var sdCla20 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
844 // runtime-bound payload: NOTIF_SEQ_NO_IN1 stays in execution domain
845 var s20 = bind.sendApdu(sdCla20, "E2", "91", "00", nd20_NOTIF_SEQ_NO_IN1Req, "00", "9000");
846 bind.checkData("S20-C1 SW", "9000", s20.sw);
847 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1", s20.cmd, profileAidSession);
848 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
849 var lw20T = BindEs10xSingleRequest.parseBerTlv(s20.resp);
850 var lw20Ok0 = lw20T.length === 1 && lw20T[0].tag === "BF2B";
851 var lw20_br = lw20Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw20T[0].value) : [];
852 var lw20_brtag = lw20_br.length === 1 ? lw20_br[0].tag : "";
853 var lw20_els = lw20_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw20_br[0].value) : [];
854 bind.checkData("S20-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count", "1", (lw20_brtag === "A0" && lw20_els.length === 1) ? "1" : "0");
855 bind.checkData("S20-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw20_brtag === "A0") ? "1" : "0");
856
857 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 19 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
858 var nd21_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
859 var nd21_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s19.resp);
860 if (nd21_NOTIF_SEQ_NO_EN1T.length === 1 && nd21_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
861 var nd21_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd21_NOTIF_SEQ_NO_EN1T[0].value);
862 if (nd21_NOTIF_SEQ_NO_EN1X1.length === 1 && nd21_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
863 var nd21_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd21_NOTIF_SEQ_NO_EN1X1[0].value);
864 var nd21_NOTIF_SEQ_NO_EN1XHIT = 0;
865 for (var nd21_NOTIF_SEQ_NO_EN1XI = 0; nd21_NOTIF_SEQ_NO_EN1XI < nd21_NOTIF_SEQ_NO_EN1X2.length; nd21_NOTIF_SEQ_NO_EN1XI++) {
866 if (nd21_NOTIF_SEQ_NO_EN1X2[nd21_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
867 var nd21_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd21_NOTIF_SEQ_NO_EN1X2[nd21_NOTIF_SEQ_NO_EN1XI].value);
868 for (var nd21_NOTIF_SEQ_NO_EN1XJ = 0; nd21_NOTIF_SEQ_NO_EN1XJ < nd21_NOTIF_SEQ_NO_EN1XM.length; nd21_NOTIF_SEQ_NO_EN1XJ++) {
869 if (nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XJ].value === "40") {
870 nd21_NOTIF_SEQ_NO_EN1XHIT += 1;
871 if (nd21_NOTIF_SEQ_NO_EN1XHIT === 1) {
872 for (var nd21_NOTIF_SEQ_NO_EN1XK = 0; nd21_NOTIF_SEQ_NO_EN1XK < nd21_NOTIF_SEQ_NO_EN1XM.length; nd21_NOTIF_SEQ_NO_EN1XK++) {
873 if (nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd21_NOTIF_SEQ_NO_EN1.seq = nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XK].value; nd21_NOTIF_SEQ_NO_EN1.ok = true; }
874 }
875 }
876 }
877 }
878 }
879 }
880 }
881 var nd21_NOTIF_SEQ_NO_EN1Req = nd21_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd21_NOTIF_SEQ_NO_EN1.seq))) : "";
882 // 步骤 21:SEQ08-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
883 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
884 var sdCla21 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
885 // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
886 var s21 = bind.sendApdu(sdCla21, "E2", "91", "00", nd21_NOTIF_SEQ_NO_EN1Req, "00", "9000");
887 bind.checkData("S21-C1 SW", "9000", s21.sw);
888 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s21.cmd, profileAidSession);
889 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
890 var lw21T = BindEs10xSingleRequest.parseBerTlv(s21.resp);
891 var lw21Ok0 = lw21T.length === 1 && lw21T[0].tag === "BF2B";
892 var lw21_br = lw21Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw21T[0].value) : [];
893 var lw21_brtag = lw21_br.length === 1 ? lw21_br[0].tag : "";
894 var lw21_els = lw21_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw21_br[0].value) : [];
895 bind.checkData("S21-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw21_brtag === "A0" && lw21_els.length === 1) ? "1" : "0");
896 bind.checkData("S21-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw21_brtag === "A0") ? "1" : "0");
897
898 // 步骤 22:SEQ09-IC6] MTD_STORE_DATA(tc_step)
899 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
900 var sdCla22 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
901 var s22 = bind.sendApdu(sdCla22, "E2", "91", "00", "BF2804810204F0", "00", "9000");
902 bind.checkData("S22-C1 SW", "9000", s22.sw);
903 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
904 var lw22T = BindEs10xSingleRequest.parseBerTlv(s22.resp);
905 var lw22Ok0 = lw22T.length === 1 && lw22T[0].tag === "BF28";
906 var lw22_br = lw22Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw22T[0].value) : [];
907 var lw22_brtag = lw22_br.length === 1 ? lw22_br[0].tag : "";
908 var lw22_els = lw22_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw22_br[0].value) : [];
909 bind.checkData("S22-C2 响应结构匹配 #R_LIST_NOTIF_EN1_IN2_PIR:ListNotificationResponse no branch/count", "1", (lw22_brtag === "A0" && lw22_els.length === 2) ? "1" : "0");
910
911 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN2_PIR ← 步 22 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
912 var nd23_NOTIF_SEQ_NO_IN2_PIR = {ok: false, seq: ""};
913 var nd23_NOTIF_SEQ_NO_IN2_PIRT = BindEs10xSingleRequest.parseBerTlv(s22.resp);
914 if (nd23_NOTIF_SEQ_NO_IN2_PIRT.length === 1 && nd23_NOTIF_SEQ_NO_IN2_PIRT[0].tag === "BF28") {
915 var nd23_NOTIF_SEQ_NO_IN2_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd23_NOTIF_SEQ_NO_IN2_PIRT[0].value);
916 if (nd23_NOTIF_SEQ_NO_IN2_PIRX1.length === 1 && nd23_NOTIF_SEQ_NO_IN2_PIRX1[0].tag === "A0") {
917 var nd23_NOTIF_SEQ_NO_IN2_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd23_NOTIF_SEQ_NO_IN2_PIRX1[0].value);
918 var nd23_NOTIF_SEQ_NO_IN2_PIRXHIT = 0;
919 for (var nd23_NOTIF_SEQ_NO_IN2_PIRXI = 0; nd23_NOTIF_SEQ_NO_IN2_PIRXI < nd23_NOTIF_SEQ_NO_IN2_PIRX2.length; nd23_NOTIF_SEQ_NO_IN2_PIRXI++) {
920 if (nd23_NOTIF_SEQ_NO_IN2_PIRX2[nd23_NOTIF_SEQ_NO_IN2_PIRXI].tag !== "BF2F") { continue; }
921 var nd23_NOTIF_SEQ_NO_IN2_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd23_NOTIF_SEQ_NO_IN2_PIRX2[nd23_NOTIF_SEQ_NO_IN2_PIRXI].value);
922 for (var nd23_NOTIF_SEQ_NO_IN2_PIRXJ = 0; nd23_NOTIF_SEQ_NO_IN2_PIRXJ < nd23_NOTIF_SEQ_NO_IN2_PIRXM.length; nd23_NOTIF_SEQ_NO_IN2_PIRXJ++) {
923 if (nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXJ].tag === "81" && nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXJ].value === "80") {
924 nd23_NOTIF_SEQ_NO_IN2_PIRXHIT += 1;
925 if (nd23_NOTIF_SEQ_NO_IN2_PIRXHIT === 2) {
926 for (var nd23_NOTIF_SEQ_NO_IN2_PIRXK = 0; nd23_NOTIF_SEQ_NO_IN2_PIRXK < nd23_NOTIF_SEQ_NO_IN2_PIRXM.length; nd23_NOTIF_SEQ_NO_IN2_PIRXK++) {
927 if (nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXK].tag === "80") { nd23_NOTIF_SEQ_NO_IN2_PIR.seq = nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXK].value; nd23_NOTIF_SEQ_NO_IN2_PIR.ok = true; }
928 }
929 }
930 }
931 }
932 }
933 }
934 }
935 var nd23_NOTIF_SEQ_NO_IN2_PIRReq = nd23_NOTIF_SEQ_NO_IN2_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd23_NOTIF_SEQ_NO_IN2_PIR.seq))) : "";
936 // 步骤 23:SEQ09-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
937 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
938 var sdCla23 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
939 // runtime-bound payload: NOTIF_SEQ_NO_IN2_PIR stays in execution domain
940 var s23 = bind.sendApdu(sdCla23, "E2", "91", "00", nd23_NOTIF_SEQ_NO_IN2_PIRReq, "00", "9000");
941 bind.checkData("S23-C1 SW", "9000", s23.sw);
942 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN2_PIR", s23.cmd, profileAidSession);
943 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
944 var lw23T = BindEs10xSingleRequest.parseBerTlv(s23.resp);
945 var lw23Ok0 = lw23T.length === 1 && lw23T[0].tag === "BF2B";
946 var lw23_br = lw23Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw23T[0].value) : [];
947 var lw23_brtag = lw23_br.length === 1 ? lw23_br[0].tag : "";
948 var lw23_els = lw23_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw23_br[0].value) : [];
949 bind.checkData("S23-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count", "1", (lw23_brtag === "A0" && lw23_els.length === 1) ? "1" : "0");
950 bind.checkData("S23-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw23_brtag === "A0") ? "1" : "0");
951
952 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 22 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
953 var nd24_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
954 var nd24_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s22.resp);
955 if (nd24_NOTIF_SEQ_NO_EN1T.length === 1 && nd24_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
956 var nd24_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd24_NOTIF_SEQ_NO_EN1T[0].value);
957 if (nd24_NOTIF_SEQ_NO_EN1X1.length === 1 && nd24_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
958 var nd24_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd24_NOTIF_SEQ_NO_EN1X1[0].value);
959 var nd24_NOTIF_SEQ_NO_EN1XHIT = 0;
960 for (var nd24_NOTIF_SEQ_NO_EN1XI = 0; nd24_NOTIF_SEQ_NO_EN1XI < nd24_NOTIF_SEQ_NO_EN1X2.length; nd24_NOTIF_SEQ_NO_EN1XI++) {
961 if (nd24_NOTIF_SEQ_NO_EN1X2[nd24_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
962 var nd24_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd24_NOTIF_SEQ_NO_EN1X2[nd24_NOTIF_SEQ_NO_EN1XI].value);
963 for (var nd24_NOTIF_SEQ_NO_EN1XJ = 0; nd24_NOTIF_SEQ_NO_EN1XJ < nd24_NOTIF_SEQ_NO_EN1XM.length; nd24_NOTIF_SEQ_NO_EN1XJ++) {
964 if (nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XJ].value === "40") {
965 nd24_NOTIF_SEQ_NO_EN1XHIT += 1;
966 if (nd24_NOTIF_SEQ_NO_EN1XHIT === 1) {
967 for (var nd24_NOTIF_SEQ_NO_EN1XK = 0; nd24_NOTIF_SEQ_NO_EN1XK < nd24_NOTIF_SEQ_NO_EN1XM.length; nd24_NOTIF_SEQ_NO_EN1XK++) {
968 if (nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd24_NOTIF_SEQ_NO_EN1.seq = nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XK].value; nd24_NOTIF_SEQ_NO_EN1.ok = true; }
969 }
970 }
971 }
972 }
973 }
974 }
975 }
976 var nd24_NOTIF_SEQ_NO_EN1Req = nd24_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd24_NOTIF_SEQ_NO_EN1.seq))) : "";
977 // 步骤 24:SEQ09-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
978 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
979 var sdCla24 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
980 // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
981 var s24 = bind.sendApdu(sdCla24, "E2", "91", "00", nd24_NOTIF_SEQ_NO_EN1Req, "00", "9000");
982 bind.checkData("S24-C1 SW", "9000", s24.sw);
983 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s24.cmd, profileAidSession);
984 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
985 var lw24T = BindEs10xSingleRequest.parseBerTlv(s24.resp);
986 var lw24Ok0 = lw24T.length === 1 && lw24T[0].tag === "BF2B";
987 var lw24_br = lw24Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw24T[0].value) : [];
988 var lw24_brtag = lw24_br.length === 1 ? lw24_br[0].tag : "";
989 var lw24_els = lw24_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw24_br[0].value) : [];
990 bind.checkData("S24-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw24_brtag === "A0" && lw24_els.length === 1) ? "1" : "0");
991 bind.checkData("S24-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw24_brtag === "A0") ? "1" : "0");
992
993 // 步骤 25:SEQ10-IC4] MTD_STORE_DATA(tc_step)
994 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
995 var sdCla25 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
996 var s25 = bind.sendApdu(sdCla25, "E2", "91", "00", "BF2804810204F0", "00", "9000");
997 bind.checkData("S25-C1 SW", "9000", s25.sw);
998 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
999 var lw25T = BindEs10xSingleRequest.parseBerTlv(s25.resp);
1000 var lw25Ok0 = lw25T.length === 1 && lw25T[0].tag === "BF28";
1001 var lw25_br = lw25Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw25T[0].value) : [];
1002 var lw25_brtag = lw25_br.length === 1 ? lw25_br[0].tag : "";
1003 var lw25_els = lw25_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw25_br[0].value) : [];
1004 bind.checkData("S25-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR:ListNotificationResponse notifi branch/count", "1", (lw25_brtag === "A0" && lw25_els.length === 1) ? "1" : "0");
1005
1006 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 25 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
1007 var nd26_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
1008 var nd26_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s25.resp);
1009 if (nd26_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd26_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
1010 var nd26_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd26_NOTIF_SEQ_NO_IN1_PIRT[0].value);
1011 if (nd26_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd26_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
1012 var nd26_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd26_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
1013 var nd26_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
1014 for (var nd26_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd26_NOTIF_SEQ_NO_IN1_PIRXI < nd26_NOTIF_SEQ_NO_IN1_PIRX2.length; nd26_NOTIF_SEQ_NO_IN1_PIRXI++) {
1015 if (nd26_NOTIF_SEQ_NO_IN1_PIRX2[nd26_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
1016 var nd26_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd26_NOTIF_SEQ_NO_IN1_PIRX2[nd26_NOTIF_SEQ_NO_IN1_PIRXI].value);
1017 for (var nd26_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd26_NOTIF_SEQ_NO_IN1_PIRXJ < nd26_NOTIF_SEQ_NO_IN1_PIRXM.length; nd26_NOTIF_SEQ_NO_IN1_PIRXJ++) {
1018 if (nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
1019 nd26_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
1020 if (nd26_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
1021 for (var nd26_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd26_NOTIF_SEQ_NO_IN1_PIRXK < nd26_NOTIF_SEQ_NO_IN1_PIRXM.length; nd26_NOTIF_SEQ_NO_IN1_PIRXK++) {
1022 if (nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd26_NOTIF_SEQ_NO_IN1_PIR.seq = nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXK].value; nd26_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
1023 }
1024 }
1025 }
1026 }
1027 }
1028 }
1029 }
1030 var nd26_NOTIF_SEQ_NO_IN1_PIRReq = nd26_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd26_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
1031 // 步骤 26:SEQ10-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ26_034, RQ26_035)
1032 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1033 var sdCla26 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1034 // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
1035 var s26 = bind.sendApdu(sdCla26, "E2", "91", "00", nd26_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
1036 bind.checkData("S26-C1 SW", "9000", s26.sw);
1037 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s26.cmd, profileAidSession);
1038 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1039 var lw26T = BindEs10xSingleRequest.parseBerTlv(s26.resp);
1040 var lw26Ok0 = lw26T.length === 1 && lw26T[0].tag === "BF2B";
1041 var lw26_br = lw26Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw26T[0].value) : [];
1042 var lw26_brtag = lw26_br.length === 1 ? lw26_br[0].tag : "";
1043 var lw26_els = lw26_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw26_br[0].value) : [];
1044 bind.checkData("S26-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw26_brtag === "A0" && lw26_els.length === 1) ? "1" : "0");
1045 bind.checkData("S26-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw26_brtag === "A0") ? "1" : "0");
1046
1047 // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 25 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
1048 var nd27_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
1049 var nd27_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s25.resp);
1050 if (nd27_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd27_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
1051 var nd27_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd27_NOTIF_SEQ_NO_IN1_PIRT[0].value);
1052 if (nd27_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd27_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
1053 var nd27_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd27_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
1054 var nd27_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
1055 for (var nd27_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd27_NOTIF_SEQ_NO_IN1_PIRXI < nd27_NOTIF_SEQ_NO_IN1_PIRX2.length; nd27_NOTIF_SEQ_NO_IN1_PIRXI++) {
1056 if (nd27_NOTIF_SEQ_NO_IN1_PIRX2[nd27_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
1057 var nd27_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd27_NOTIF_SEQ_NO_IN1_PIRX2[nd27_NOTIF_SEQ_NO_IN1_PIRXI].value);
1058 for (var nd27_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd27_NOTIF_SEQ_NO_IN1_PIRXJ < nd27_NOTIF_SEQ_NO_IN1_PIRXM.length; nd27_NOTIF_SEQ_NO_IN1_PIRXJ++) {
1059 if (nd27_NOTIF_SEQ_NO_IN1_PIRXM[nd27_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd27_NOTIF_SEQ_NO_IN1_PIRXM[nd27_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
1060 nd27_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
1061 if (nd27_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
1062 for (var nd27_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd27_NOTIF_SEQ_NO_IN1_PIRXK < nd27_NOTIF_SEQ_NO_IN1_PIRXM.length; nd27_NOTIF_SEQ_NO_IN1_PIRXK++) {
1063 if (nd27_NOTIF_SEQ_NO_IN1_PIRXM[nd27_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd27_NOTIF_SEQ_NO_IN1_PIR.seq = nd27_NOTIF_SEQ_NO_IN1_PIRXM[nd27_NOTIF_SEQ_NO_IN1_PIRXK].value; nd27_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
1064 }
1065 }
1066 }
1067 }
1068 }
1069 }
1070 }
1071 var nd27_NOTIF_SEQ_NO_IN1_PIRReq = nd27_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd27_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
1072 // 步骤 27:SEQ10-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1073 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1074 var sdCla27 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1075 // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
1076 var s27 = bind.sendApdu(sdCla27, "E2", "91", "00", nd27_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
1077 bind.checkData("S27-C1 SW", "9000", s27.sw);
1078 BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s27.cmd, profileAidSession);
1079 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1080 var lw27T = BindEs10xSingleRequest.parseBerTlv(s27.resp);
1081 var lw27Ok0 = lw27T.length === 1 && lw27T[0].tag === "BF2B";
1082 var lw27_br = lw27Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw27T[0].value) : [];
1083 var lw27_brtag = lw27_br.length === 1 ? lw27_br[0].tag : "";
1084 var lw27_els = lw27_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw27_br[0].value) : [];
1085 bind.checkData("S27-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw27_brtag === "A0" && lw27_els.length === 0) ? "1" : "0");
1086
1087 // 步骤 28:SEQ11-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1088 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1089 var sdCla28 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1090 var s28 = bind.sendApdu(sdCla28, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1091 bind.checkData("S28-C1 SW", "9000", s28.sw);
1092 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1093 var lw28T = BindEs10xSingleRequest.parseBerTlv(s28.resp);
1094 var lw28Ok0 = lw28T.length === 1 && lw28T[0].tag === "BF2B";
1095 var lw28_br = lw28Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw28T[0].value) : [];
1096 var lw28_brtag = lw28_br.length === 1 ? lw28_br[0].tag : "";
1097 var lw28_els = lw28_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw28_br[0].value) : [];
1098 bind.checkData("S28-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count", "1", (lw28_brtag === "A0" && lw28_els.length === 2) ? "1" : "0");
1099 bind.checkData("S28-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw28_brtag === "A0") ? "1" : "0");
1100 bind.checkData("S28-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw28_brtag === "A0") ? "1" : "0");
1101
1102 // 步骤 29:SEQ11-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_3, RQ57_071_4, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1103 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1104 var sdCla29 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1105 var s29 = bind.sendApdu(sdCla29, "E2", "91", "00", "BF2B00", "00", "9000");
1106 bind.checkData("S29-C1 SW", "9000", s29.sw);
1107 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1108 var lw29T = BindEs10xSingleRequest.parseBerTlv(s29.resp);
1109 var lw29Ok0 = lw29T.length === 1 && lw29T[0].tag === "BF2B";
1110 var lw29_br = lw29Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw29T[0].value) : [];
1111 var lw29_brtag = lw29_br.length === 1 ? lw29_br[0].tag : "";
1112 var lw29_els = lw29_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw29_br[0].value) : [];
1113 bind.checkData("S29-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count", "1", (lw29_brtag === "A0" && lw29_els.length === 2) ? "1" : "0");
1114 bind.checkData("S29-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw29_brtag === "A0") ? "1" : "0");
1115 bind.checkData("S29-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw29_brtag === "A0") ? "1" : "0");
1116
1117 // 步骤 30:SEQ11-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1118 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1119 var sdCla30 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1120 var s30 = bind.sendApdu(sdCla30, "E2", "91", "00", "BF2B03810100", "00", "9000");
1121 bind.checkData("S30-C1 SW", "9000", s30.sw);
1122 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1123 var lw30T = BindEs10xSingleRequest.parseBerTlv(s30.resp);
1124 var lw30Ok0 = lw30T.length === 1 && lw30T[0].tag === "BF2B";
1125 var lw30_br = lw30Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw30T[0].value) : [];
1126 var lw30_brtag = lw30_br.length === 1 ? lw30_br[0].tag : "";
1127 var lw30_els = lw30_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw30_br[0].value) : [];
1128 bind.checkData("S30-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw30_brtag === "A0" && lw30_els.length === 0) ? "1" : "0");
1129
1130 // 步骤 31:SEQ11-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1131 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1132 var sdCla31 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1133 var s31 = bind.sendApdu(sdCla31, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1134 bind.checkData("S31-C1 SW", "9000", s31.sw);
1135 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1136 var lw31T = BindEs10xSingleRequest.parseBerTlv(s31.resp);
1137 var lw31Ok0 = lw31T.length === 1 && lw31T[0].tag === "BF2B";
1138 var lw31_br = lw31Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw31T[0].value) : [];
1139 var lw31_brtag = lw31_br.length === 1 ? lw31_br[0].tag : "";
1140 var lw31_els = lw31_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw31_br[0].value) : [];
1141 bind.checkData("S31-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count", "1", (lw31_brtag === "A0" && lw31_els.length === 2) ? "1" : "0");
1142 bind.checkData("S31-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw31_brtag === "A0") ? "1" : "0");
1143 bind.checkData("S31-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw31_brtag === "A0") ? "1" : "0");
1144
1145 // 步骤 32:SEQ11-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1146 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1147 var sdCla32 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1148 var s32 = bind.sendApdu(sdCla32, "E2", "91", "00", "BF2B0481020640", "00", "9000");
1149 bind.checkData("S32-C1 SW", "9000", s32.sw);
1150 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1151 var lw32T = BindEs10xSingleRequest.parseBerTlv(s32.resp);
1152 var lw32Ok0 = lw32T.length === 1 && lw32T[0].tag === "BF2B";
1153 var lw32_br = lw32Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw32T[0].value) : [];
1154 var lw32_brtag = lw32_br.length === 1 ? lw32_br[0].tag : "";
1155 var lw32_els = lw32_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw32_br[0].value) : [];
1156 bind.checkData("S32-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw32_brtag === "A0" && lw32_els.length === 0) ? "1" : "0");
1157
1158 // 步骤 33:SEQ11-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1159 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1160 var sdCla33 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1161 var s33 = bind.sendApdu(sdCla33, "E2", "91", "00", "BF2B0481020520", "00", "9000");
1162 bind.checkData("S33-C1 SW", "9000", s33.sw);
1163 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1164 var lw33T = BindEs10xSingleRequest.parseBerTlv(s33.resp);
1165 var lw33Ok0 = lw33T.length === 1 && lw33T[0].tag === "BF2B";
1166 var lw33_br = lw33Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw33T[0].value) : [];
1167 var lw33_brtag = lw33_br.length === 1 ? lw33_br[0].tag : "";
1168 var lw33_els = lw33_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw33_br[0].value) : [];
1169 bind.checkData("S33-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw33_brtag === "A0" && lw33_els.length === 0) ? "1" : "0");
1170
1171 // 步骤 34:SEQ11-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1172 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1173 var sdCla34 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1174 var s34 = bind.sendApdu(sdCla34, "E2", "91", "00", "BF2B0481020410", "00", "9000");
1175 bind.checkData("S34-C1 SW", "9000", s34.sw);
1176 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1177 var lw34T = BindEs10xSingleRequest.parseBerTlv(s34.resp);
1178 var lw34Ok0 = lw34T.length === 1 && lw34T[0].tag === "BF2B";
1179 var lw34_br = lw34Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw34T[0].value) : [];
1180 var lw34_brtag = lw34_br.length === 1 ? lw34_br[0].tag : "";
1181 var lw34_els = lw34_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw34_br[0].value) : [];
1182 bind.checkData("S34-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw34_brtag === "A0" && lw34_els.length === 0) ? "1" : "0");
1183
1184 // 步骤 35:SEQ11-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1185 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1186 var sdCla35 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1187 var s35 = bind.sendApdu(sdCla35, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1188 bind.checkData("S35-C1 SW", "9000", s35.sw);
1189 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1190 var lw35T = BindEs10xSingleRequest.parseBerTlv(s35.resp);
1191 var lw35Ok0 = lw35T.length === 1 && lw35T[0].tag === "BF2B";
1192 var lw35_br = lw35Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw35T[0].value) : [];
1193 var lw35_brtag = lw35_br.length === 1 ? lw35_br[0].tag : "";
1194 var lw35_els = lw35_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw35_br[0].value) : [];
1195 bind.checkData("S35-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count", "1", (lw35_brtag === "A0" && lw35_els.length === 2) ? "1" : "0");
1196 bind.checkData("S35-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw35_brtag === "A0") ? "1" : "0");
1197 bind.checkData("S35-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw35_brtag === "A0") ? "1" : "0");
1198
1199 // 步骤 36:SEQ11-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1200 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1201 var sdCla36 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1202 var s36 = bind.sendApdu(sdCla36, "E2", "91", "00", "BF2B0481020430", "00", "9000");
1203 bind.checkData("S36-C1 SW", "9000", s36.sw);
1204 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1205 var lw36T = BindEs10xSingleRequest.parseBerTlv(s36.resp);
1206 var lw36Ok0 = lw36T.length === 1 && lw36T[0].tag === "BF2B";
1207 var lw36_br = lw36Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw36T[0].value) : [];
1208 var lw36_brtag = lw36_br.length === 1 ? lw36_br[0].tag : "";
1209 var lw36_els = lw36_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw36_br[0].value) : [];
1210 bind.checkData("S36-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw36_brtag === "A0" && lw36_els.length === 0) ? "1" : "0");
1211
1212 // 步骤 37:SEQ11-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1213 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1214 var sdCla37 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1215 var s37 = bind.sendApdu(sdCla37, "E2", "91", "00", "BF2B0481020560", "00", "9000");
1216 bind.checkData("S37-C1 SW", "9000", s37.sw);
1217 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1218 var lw37T = BindEs10xSingleRequest.parseBerTlv(s37.resp);
1219 var lw37Ok0 = lw37T.length === 1 && lw37T[0].tag === "BF2B";
1220 var lw37_br = lw37Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw37T[0].value) : [];
1221 var lw37_brtag = lw37_br.length === 1 ? lw37_br[0].tag : "";
1222 var lw37_els = lw37_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw37_br[0].value) : [];
1223 bind.checkData("S37-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw37_brtag === "A0" && lw37_els.length === 0) ? "1" : "0");
1224
1225 // 步骤 38:SEQ11-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1226 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1227 var sdCla38 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1228 var s38 = bind.sendApdu(sdCla38, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
1229 bind.checkData("S38-C1 SW", "9000", s38.sw);
1230 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1231 var lw38T = BindEs10xSingleRequest.parseBerTlv(s38.resp);
1232 var lw38Ok0 = lw38T.length === 1 && lw38T[0].tag === "BF2B";
1233 var lw38_br = lw38Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw38T[0].value) : [];
1234 var lw38_brtag = lw38_br.length === 1 ? lw38_br[0].tag : "";
1235 var lw38_els = lw38_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw38_br[0].value) : [];
1236 bind.checkData("S38-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count", "1", (lw38_brtag === "A0" && lw38_els.length === 2) ? "1" : "0");
1237 bind.checkData("S38-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw38_brtag === "A0") ? "1" : "0");
1238 bind.checkData("S38-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw38_brtag === "A0") ? "1" : "0");
1239
1240 // 步骤 39:SEQ12-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1241 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1242 var sdCla39 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1243 var s39 = bind.sendApdu(sdCla39, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1244 bind.checkData("S39-C1 SW", "9000", s39.sw);
1245 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1246 var lw39T = BindEs10xSingleRequest.parseBerTlv(s39.resp);
1247 var lw39Ok0 = lw39T.length === 1 && lw39T[0].tag === "BF2B";
1248 var lw39_br = lw39Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw39T[0].value) : [];
1249 var lw39_brtag = lw39_br.length === 1 ? lw39_br[0].tag : "";
1250 var lw39_els = lw39_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw39_br[0].value) : [];
1251 bind.checkData("S39-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw39_brtag === "A0" && lw39_els.length === 1) ? "1" : "0");
1252 bind.checkData("S39-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw39_brtag === "A0") ? "1" : "0");
1253
1254 // 步骤 40:SEQ12-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_4, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1255 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1256 var sdCla40 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1257 var s40 = bind.sendApdu(sdCla40, "E2", "91", "00", "BF2B00", "00", "9000");
1258 bind.checkData("S40-C1 SW", "9000", s40.sw);
1259 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1260 var lw40T = BindEs10xSingleRequest.parseBerTlv(s40.resp);
1261 var lw40Ok0 = lw40T.length === 1 && lw40T[0].tag === "BF2B";
1262 var lw40_br = lw40Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw40T[0].value) : [];
1263 var lw40_brtag = lw40_br.length === 1 ? lw40_br[0].tag : "";
1264 var lw40_els = lw40_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw40_br[0].value) : [];
1265 bind.checkData("S40-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw40_brtag === "A0" && lw40_els.length === 1) ? "1" : "0");
1266
1267 // 步骤 41:SEQ12-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1268 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1269 var sdCla41 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1270 var s41 = bind.sendApdu(sdCla41, "E2", "91", "00", "BF2B03810100", "00", "9000");
1271 bind.checkData("S41-C1 SW", "9000", s41.sw);
1272 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1273 var lw41T = BindEs10xSingleRequest.parseBerTlv(s41.resp);
1274 var lw41Ok0 = lw41T.length === 1 && lw41T[0].tag === "BF2B";
1275 var lw41_br = lw41Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw41T[0].value) : [];
1276 var lw41_brtag = lw41_br.length === 1 ? lw41_br[0].tag : "";
1277 var lw41_els = lw41_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw41_br[0].value) : [];
1278 bind.checkData("S41-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw41_brtag === "A0" && lw41_els.length === 0) ? "1" : "0");
1279
1280 // 步骤 42:SEQ12-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1281 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1282 var sdCla42 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1283 var s42 = bind.sendApdu(sdCla42, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1284 bind.checkData("S42-C1 SW", "9000", s42.sw);
1285 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1286 var lw42T = BindEs10xSingleRequest.parseBerTlv(s42.resp);
1287 var lw42Ok0 = lw42T.length === 1 && lw42T[0].tag === "BF2B";
1288 var lw42_br = lw42Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw42T[0].value) : [];
1289 var lw42_brtag = lw42_br.length === 1 ? lw42_br[0].tag : "";
1290 var lw42_els = lw42_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw42_br[0].value) : [];
1291 bind.checkData("S42-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw42_brtag === "A0" && lw42_els.length === 0) ? "1" : "0");
1292
1293 // 步骤 43:SEQ12-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1294 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1295 var sdCla43 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1296 var s43 = bind.sendApdu(sdCla43, "E2", "91", "00", "BF2B0481020640", "00", "9000");
1297 bind.checkData("S43-C1 SW", "9000", s43.sw);
1298 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1299 var lw43T = BindEs10xSingleRequest.parseBerTlv(s43.resp);
1300 var lw43Ok0 = lw43T.length === 1 && lw43T[0].tag === "BF2B";
1301 var lw43_br = lw43Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw43T[0].value) : [];
1302 var lw43_brtag = lw43_br.length === 1 ? lw43_br[0].tag : "";
1303 var lw43_els = lw43_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw43_br[0].value) : [];
1304 bind.checkData("S43-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw43_brtag === "A0" && lw43_els.length === 1) ? "1" : "0");
1305
1306 // 步骤 44:SEQ12-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1307 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1308 var sdCla44 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1309 var s44 = bind.sendApdu(sdCla44, "E2", "91", "00", "BF2B0481020520", "00", "9000");
1310 bind.checkData("S44-C1 SW", "9000", s44.sw);
1311 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1312 var lw44T = BindEs10xSingleRequest.parseBerTlv(s44.resp);
1313 var lw44Ok0 = lw44T.length === 1 && lw44T[0].tag === "BF2B";
1314 var lw44_br = lw44Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw44T[0].value) : [];
1315 var lw44_brtag = lw44_br.length === 1 ? lw44_br[0].tag : "";
1316 var lw44_els = lw44_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw44_br[0].value) : [];
1317 bind.checkData("S44-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw44_brtag === "A0" && lw44_els.length === 0) ? "1" : "0");
1318
1319 // 步骤 45:SEQ12-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1320 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1321 var sdCla45 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1322 var s45 = bind.sendApdu(sdCla45, "E2", "91", "00", "BF2B0481020410", "00", "9000");
1323 bind.checkData("S45-C1 SW", "9000", s45.sw);
1324 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1325 var lw45T = BindEs10xSingleRequest.parseBerTlv(s45.resp);
1326 var lw45Ok0 = lw45T.length === 1 && lw45T[0].tag === "BF2B";
1327 var lw45_br = lw45Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw45T[0].value) : [];
1328 var lw45_brtag = lw45_br.length === 1 ? lw45_br[0].tag : "";
1329 var lw45_els = lw45_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw45_br[0].value) : [];
1330 bind.checkData("S45-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw45_brtag === "A0" && lw45_els.length === 0) ? "1" : "0");
1331
1332 // 步骤 46:SEQ12-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1333 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1334 var sdCla46 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1335 var s46 = bind.sendApdu(sdCla46, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
1336 bind.checkData("S46-C1 SW", "9000", s46.sw);
1337 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1338 var lw46T = BindEs10xSingleRequest.parseBerTlv(s46.resp);
1339 var lw46Ok0 = lw46T.length === 1 && lw46T[0].tag === "BF2B";
1340 var lw46_br = lw46Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw46T[0].value) : [];
1341 var lw46_brtag = lw46_br.length === 1 ? lw46_br[0].tag : "";
1342 var lw46_els = lw46_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw46_br[0].value) : [];
1343 bind.checkData("S46-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw46_brtag === "A0" && lw46_els.length === 1) ? "1" : "0");
1344
1345 // 步骤 47:SEQ12-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1346 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1347 var sdCla47 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1348 var s47 = bind.sendApdu(sdCla47, "E2", "91", "00", "BF2B0481020430", "00", "9000");
1349 bind.checkData("S47-C1 SW", "9000", s47.sw);
1350 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1351 var lw47T = BindEs10xSingleRequest.parseBerTlv(s47.resp);
1352 var lw47Ok0 = lw47T.length === 1 && lw47T[0].tag === "BF2B";
1353 var lw47_br = lw47Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw47T[0].value) : [];
1354 var lw47_brtag = lw47_br.length === 1 ? lw47_br[0].tag : "";
1355 var lw47_els = lw47_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw47_br[0].value) : [];
1356 bind.checkData("S47-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw47_brtag === "A0" && lw47_els.length === 0) ? "1" : "0");
1357
1358 // 步骤 48:SEQ12-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1359 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1360 var sdCla48 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1361 var s48 = bind.sendApdu(sdCla48, "E2", "91", "00", "BF2B0481020560", "00", "9000");
1362 bind.checkData("S48-C1 SW", "9000", s48.sw);
1363 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1364 var lw48T = BindEs10xSingleRequest.parseBerTlv(s48.resp);
1365 var lw48Ok0 = lw48T.length === 1 && lw48T[0].tag === "BF2B";
1366 var lw48_br = lw48Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw48T[0].value) : [];
1367 var lw48_brtag = lw48_br.length === 1 ? lw48_br[0].tag : "";
1368 var lw48_els = lw48_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw48_br[0].value) : [];
1369 bind.checkData("S48-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw48_brtag === "A0" && lw48_els.length === 1) ? "1" : "0");
1370
1371 // 步骤 49:SEQ12-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1372 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1373 var sdCla49 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1374 var s49 = bind.sendApdu(sdCla49, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
1375 bind.checkData("S49-C1 SW", "9000", s49.sw);
1376 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1377 var lw49T = BindEs10xSingleRequest.parseBerTlv(s49.resp);
1378 var lw49Ok0 = lw49T.length === 1 && lw49T[0].tag === "BF2B";
1379 var lw49_br = lw49Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw49T[0].value) : [];
1380 var lw49_brtag = lw49_br.length === 1 ? lw49_br[0].tag : "";
1381 var lw49_els = lw49_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw49_br[0].value) : [];
1382 bind.checkData("S49-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw49_brtag === "A0" && lw49_els.length === 1) ? "1" : "0");
1383
1384 // 步骤 50:SEQ13-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1385 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1386 var sdCla50 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1387 var s50 = bind.sendApdu(sdCla50, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1388 bind.checkData("S50-C1 SW", "9000", s50.sw);
1389 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1390 var lw50T = BindEs10xSingleRequest.parseBerTlv(s50.resp);
1391 var lw50Ok0 = lw50T.length === 1 && lw50T[0].tag === "BF2B";
1392 var lw50_br = lw50Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw50T[0].value) : [];
1393 var lw50_brtag = lw50_br.length === 1 ? lw50_br[0].tag : "";
1394 var lw50_els = lw50_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw50_br[0].value) : [];
1395 bind.checkData("S50-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw50_brtag === "A0" && lw50_els.length === 1) ? "1" : "0");
1396 bind.checkData("S50-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw50_brtag === "A0") ? "1" : "0");
1397
1398 // 步骤 51:SEQ13-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_4, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1399 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1400 var sdCla51 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1401 var s51 = bind.sendApdu(sdCla51, "E2", "91", "00", "BF2B00", "00", "9000");
1402 bind.checkData("S51-C1 SW", "9000", s51.sw);
1403 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1404 var lw51T = BindEs10xSingleRequest.parseBerTlv(s51.resp);
1405 var lw51Ok0 = lw51T.length === 1 && lw51T[0].tag === "BF2B";
1406 var lw51_br = lw51Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw51T[0].value) : [];
1407 var lw51_brtag = lw51_br.length === 1 ? lw51_br[0].tag : "";
1408 var lw51_els = lw51_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw51_br[0].value) : [];
1409 bind.checkData("S51-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw51_brtag === "A0" && lw51_els.length === 1) ? "1" : "0");
1410 bind.checkData("S51-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw51_brtag === "A0") ? "1" : "0");
1411
1412 // 步骤 52:SEQ13-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1413 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1414 var sdCla52 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1415 var s52 = bind.sendApdu(sdCla52, "E2", "91", "00", "BF2B03810100", "00", "9000");
1416 bind.checkData("S52-C1 SW", "9000", s52.sw);
1417 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1418 var lw52T = BindEs10xSingleRequest.parseBerTlv(s52.resp);
1419 var lw52Ok0 = lw52T.length === 1 && lw52T[0].tag === "BF2B";
1420 var lw52_br = lw52Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw52T[0].value) : [];
1421 var lw52_brtag = lw52_br.length === 1 ? lw52_br[0].tag : "";
1422 var lw52_els = lw52_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw52_br[0].value) : [];
1423 bind.checkData("S52-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw52_brtag === "A0" && lw52_els.length === 0) ? "1" : "0");
1424
1425 // 步骤 53:SEQ13-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1426 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1427 var sdCla53 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1428 var s53 = bind.sendApdu(sdCla53, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1429 bind.checkData("S53-C1 SW", "9000", s53.sw);
1430 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1431 var lw53T = BindEs10xSingleRequest.parseBerTlv(s53.resp);
1432 var lw53Ok0 = lw53T.length === 1 && lw53T[0].tag === "BF2B";
1433 var lw53_br = lw53Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw53T[0].value) : [];
1434 var lw53_brtag = lw53_br.length === 1 ? lw53_br[0].tag : "";
1435 var lw53_els = lw53_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw53_br[0].value) : [];
1436 bind.checkData("S53-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw53_brtag === "A0" && lw53_els.length === 0) ? "1" : "0");
1437
1438 // 步骤 54:SEQ13-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1439 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1440 var sdCla54 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1441 var s54 = bind.sendApdu(sdCla54, "E2", "91", "00", "BF2B0481020640", "00", "9000");
1442 bind.checkData("S54-C1 SW", "9000", s54.sw);
1443 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1444 var lw54T = BindEs10xSingleRequest.parseBerTlv(s54.resp);
1445 var lw54Ok0 = lw54T.length === 1 && lw54T[0].tag === "BF2B";
1446 var lw54_br = lw54Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw54T[0].value) : [];
1447 var lw54_brtag = lw54_br.length === 1 ? lw54_br[0].tag : "";
1448 var lw54_els = lw54_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw54_br[0].value) : [];
1449 bind.checkData("S54-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw54_brtag === "A0" && lw54_els.length === 0) ? "1" : "0");
1450
1451 // 步骤 55:SEQ13-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1452 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1453 var sdCla55 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1454 var s55 = bind.sendApdu(sdCla55, "E2", "91", "00", "BF2B0481020520", "00", "9000");
1455 bind.checkData("S55-C1 SW", "9000", s55.sw);
1456 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1457 var lw55T = BindEs10xSingleRequest.parseBerTlv(s55.resp);
1458 var lw55Ok0 = lw55T.length === 1 && lw55T[0].tag === "BF2B";
1459 var lw55_br = lw55Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw55T[0].value) : [];
1460 var lw55_brtag = lw55_br.length === 1 ? lw55_br[0].tag : "";
1461 var lw55_els = lw55_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw55_br[0].value) : [];
1462 bind.checkData("S55-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw55_brtag === "A0" && lw55_els.length === 1) ? "1" : "0");
1463 bind.checkData("S55-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw55_brtag === "A0") ? "1" : "0");
1464
1465 // 步骤 56:SEQ13-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1466 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1467 var sdCla56 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1468 var s56 = bind.sendApdu(sdCla56, "E2", "91", "00", "BF2B0481020410", "00", "9000");
1469 bind.checkData("S56-C1 SW", "9000", s56.sw);
1470 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1471 var lw56T = BindEs10xSingleRequest.parseBerTlv(s56.resp);
1472 var lw56Ok0 = lw56T.length === 1 && lw56T[0].tag === "BF2B";
1473 var lw56_br = lw56Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw56T[0].value) : [];
1474 var lw56_brtag = lw56_br.length === 1 ? lw56_br[0].tag : "";
1475 var lw56_els = lw56_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw56_br[0].value) : [];
1476 bind.checkData("S56-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw56_brtag === "A0" && lw56_els.length === 0) ? "1" : "0");
1477
1478 // 步骤 57:SEQ13-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1479 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1480 var sdCla57 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1481 var s57 = bind.sendApdu(sdCla57, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
1482 bind.checkData("S57-C1 SW", "9000", s57.sw);
1483 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1484 var lw57T = BindEs10xSingleRequest.parseBerTlv(s57.resp);
1485 var lw57Ok0 = lw57T.length === 1 && lw57T[0].tag === "BF2B";
1486 var lw57_br = lw57Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw57T[0].value) : [];
1487 var lw57_brtag = lw57_br.length === 1 ? lw57_br[0].tag : "";
1488 var lw57_els = lw57_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw57_br[0].value) : [];
1489 bind.checkData("S57-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw57_brtag === "A0" && lw57_els.length === 0) ? "1" : "0");
1490
1491 // 步骤 58:SEQ13-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1492 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1493 var sdCla58 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1494 var s58 = bind.sendApdu(sdCla58, "E2", "91", "00", "BF2B0481020430", "00", "9000");
1495 bind.checkData("S58-C1 SW", "9000", s58.sw);
1496 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1497 var lw58T = BindEs10xSingleRequest.parseBerTlv(s58.resp);
1498 var lw58Ok0 = lw58T.length === 1 && lw58T[0].tag === "BF2B";
1499 var lw58_br = lw58Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw58T[0].value) : [];
1500 var lw58_brtag = lw58_br.length === 1 ? lw58_br[0].tag : "";
1501 var lw58_els = lw58_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw58_br[0].value) : [];
1502 bind.checkData("S58-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw58_brtag === "A0" && lw58_els.length === 1) ? "1" : "0");
1503 bind.checkData("S58-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw58_brtag === "A0") ? "1" : "0");
1504
1505 // 步骤 59:SEQ13-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1506 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1507 var sdCla59 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1508 var s59 = bind.sendApdu(sdCla59, "E2", "91", "00", "BF2B0481020560", "00", "9000");
1509 bind.checkData("S59-C1 SW", "9000", s59.sw);
1510 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1511 var lw59T = BindEs10xSingleRequest.parseBerTlv(s59.resp);
1512 var lw59Ok0 = lw59T.length === 1 && lw59T[0].tag === "BF2B";
1513 var lw59_br = lw59Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw59T[0].value) : [];
1514 var lw59_brtag = lw59_br.length === 1 ? lw59_br[0].tag : "";
1515 var lw59_els = lw59_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw59_br[0].value) : [];
1516 bind.checkData("S59-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw59_brtag === "A0" && lw59_els.length === 1) ? "1" : "0");
1517 bind.checkData("S59-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw59_brtag === "A0") ? "1" : "0");
1518
1519 // 步骤 60:SEQ13-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1520 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1521 var sdCla60 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1522 var s60 = bind.sendApdu(sdCla60, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
1523 bind.checkData("S60-C1 SW", "9000", s60.sw);
1524 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1525 var lw60T = BindEs10xSingleRequest.parseBerTlv(s60.resp);
1526 var lw60Ok0 = lw60T.length === 1 && lw60T[0].tag === "BF2B";
1527 var lw60_br = lw60Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw60T[0].value) : [];
1528 var lw60_brtag = lw60_br.length === 1 ? lw60_br[0].tag : "";
1529 var lw60_els = lw60_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw60_br[0].value) : [];
1530 bind.checkData("S60-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw60_brtag === "A0" && lw60_els.length === 1) ? "1" : "0");
1531 bind.checkData("S60-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw60_brtag === "A0") ? "1" : "0");
1532
1533 // 步骤 61:SEQ14-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1534 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1535 var sdCla61 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1536 var s61 = bind.sendApdu(sdCla61, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1537 bind.checkData("S61-C1 SW", "9000", s61.sw);
1538 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1539 var lw61T = BindEs10xSingleRequest.parseBerTlv(s61.resp);
1540 var lw61Ok0 = lw61T.length === 1 && lw61T[0].tag === "BF2B";
1541 var lw61_br = lw61Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw61T[0].value) : [];
1542 var lw61_brtag = lw61_br.length === 1 ? lw61_br[0].tag : "";
1543 var lw61_els = lw61_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw61_br[0].value) : [];
1544 bind.checkData("S61-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw61_brtag === "A0" && lw61_els.length === 1) ? "1" : "0");
1545 bind.checkData("S61-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw61_brtag === "A0") ? "1" : "0");
1546
1547 // 步骤 62:SEQ14-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_4, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1548 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1549 var sdCla62 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1550 var s62 = bind.sendApdu(sdCla62, "E2", "91", "00", "BF2B00", "00", "9000");
1551 bind.checkData("S62-C1 SW", "9000", s62.sw);
1552 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1553 var lw62T = BindEs10xSingleRequest.parseBerTlv(s62.resp);
1554 var lw62Ok0 = lw62T.length === 1 && lw62T[0].tag === "BF2B";
1555 var lw62_br = lw62Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw62T[0].value) : [];
1556 var lw62_brtag = lw62_br.length === 1 ? lw62_br[0].tag : "";
1557 var lw62_els = lw62_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw62_br[0].value) : [];
1558 bind.checkData("S62-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw62_brtag === "A0" && lw62_els.length === 1) ? "1" : "0");
1559 bind.checkData("S62-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw62_brtag === "A0") ? "1" : "0");
1560
1561 // 步骤 63:SEQ14-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1562 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1563 var sdCla63 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1564 var s63 = bind.sendApdu(sdCla63, "E2", "91", "00", "BF2B03810100", "00", "9000");
1565 bind.checkData("S63-C1 SW", "9000", s63.sw);
1566 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1567 var lw63T = BindEs10xSingleRequest.parseBerTlv(s63.resp);
1568 var lw63Ok0 = lw63T.length === 1 && lw63T[0].tag === "BF2B";
1569 var lw63_br = lw63Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw63T[0].value) : [];
1570 var lw63_brtag = lw63_br.length === 1 ? lw63_br[0].tag : "";
1571 var lw63_els = lw63_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw63_br[0].value) : [];
1572 bind.checkData("S63-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw63_brtag === "A0" && lw63_els.length === 0) ? "1" : "0");
1573
1574 // 步骤 64:SEQ14-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1575 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1576 var sdCla64 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1577 var s64 = bind.sendApdu(sdCla64, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1578 bind.checkData("S64-C1 SW", "9000", s64.sw);
1579 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1580 var lw64T = BindEs10xSingleRequest.parseBerTlv(s64.resp);
1581 var lw64Ok0 = lw64T.length === 1 && lw64T[0].tag === "BF2B";
1582 var lw64_br = lw64Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw64T[0].value) : [];
1583 var lw64_brtag = lw64_br.length === 1 ? lw64_br[0].tag : "";
1584 var lw64_els = lw64_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw64_br[0].value) : [];
1585 bind.checkData("S64-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw64_brtag === "A0" && lw64_els.length === 0) ? "1" : "0");
1586
1587 // 步骤 65:SEQ14-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1588 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1589 var sdCla65 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1590 var s65 = bind.sendApdu(sdCla65, "E2", "91", "00", "BF2B0481020640", "00", "9000");
1591 bind.checkData("S65-C1 SW", "9000", s65.sw);
1592 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1593 var lw65T = BindEs10xSingleRequest.parseBerTlv(s65.resp);
1594 var lw65Ok0 = lw65T.length === 1 && lw65T[0].tag === "BF2B";
1595 var lw65_br = lw65Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw65T[0].value) : [];
1596 var lw65_brtag = lw65_br.length === 1 ? lw65_br[0].tag : "";
1597 var lw65_els = lw65_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw65_br[0].value) : [];
1598 bind.checkData("S65-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw65_brtag === "A0" && lw65_els.length === 0) ? "1" : "0");
1599
1600 // 步骤 66:SEQ14-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1601 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1602 var sdCla66 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1603 var s66 = bind.sendApdu(sdCla66, "E2", "91", "00", "BF2B0481020520", "00", "9000");
1604 bind.checkData("S66-C1 SW", "9000", s66.sw);
1605 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1606 var lw66T = BindEs10xSingleRequest.parseBerTlv(s66.resp);
1607 var lw66Ok0 = lw66T.length === 1 && lw66T[0].tag === "BF2B";
1608 var lw66_br = lw66Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw66T[0].value) : [];
1609 var lw66_brtag = lw66_br.length === 1 ? lw66_br[0].tag : "";
1610 var lw66_els = lw66_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw66_br[0].value) : [];
1611 bind.checkData("S66-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw66_brtag === "A0" && lw66_els.length === 0) ? "1" : "0");
1612
1613 // 步骤 67:SEQ14-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1614 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1615 var sdCla67 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1616 var s67 = bind.sendApdu(sdCla67, "E2", "91", "00", "BF2B0481020410", "00", "9000");
1617 bind.checkData("S67-C1 SW", "9000", s67.sw);
1618 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1619 var lw67T = BindEs10xSingleRequest.parseBerTlv(s67.resp);
1620 var lw67Ok0 = lw67T.length === 1 && lw67T[0].tag === "BF2B";
1621 var lw67_br = lw67Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw67T[0].value) : [];
1622 var lw67_brtag = lw67_br.length === 1 ? lw67_br[0].tag : "";
1623 var lw67_els = lw67_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw67_br[0].value) : [];
1624 bind.checkData("S67-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw67_brtag === "A0" && lw67_els.length === 1) ? "1" : "0");
1625 bind.checkData("S67-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw67_brtag === "A0") ? "1" : "0");
1626
1627 // 步骤 68:SEQ14-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1628 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1629 var sdCla68 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1630 var s68 = bind.sendApdu(sdCla68, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
1631 bind.checkData("S68-C1 SW", "9000", s68.sw);
1632 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1633 var lw68T = BindEs10xSingleRequest.parseBerTlv(s68.resp);
1634 var lw68Ok0 = lw68T.length === 1 && lw68T[0].tag === "BF2B";
1635 var lw68_br = lw68Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw68T[0].value) : [];
1636 var lw68_brtag = lw68_br.length === 1 ? lw68_br[0].tag : "";
1637 var lw68_els = lw68_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw68_br[0].value) : [];
1638 bind.checkData("S68-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw68_brtag === "A0" && lw68_els.length === 0) ? "1" : "0");
1639
1640 // 步骤 69:SEQ14-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1641 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1642 var sdCla69 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1643 var s69 = bind.sendApdu(sdCla69, "E2", "91", "00", "BF2B0481020430", "00", "9000");
1644 bind.checkData("S69-C1 SW", "9000", s69.sw);
1645 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1646 var lw69T = BindEs10xSingleRequest.parseBerTlv(s69.resp);
1647 var lw69Ok0 = lw69T.length === 1 && lw69T[0].tag === "BF2B";
1648 var lw69_br = lw69Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw69T[0].value) : [];
1649 var lw69_brtag = lw69_br.length === 1 ? lw69_br[0].tag : "";
1650 var lw69_els = lw69_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw69_br[0].value) : [];
1651 bind.checkData("S69-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw69_brtag === "A0" && lw69_els.length === 1) ? "1" : "0");
1652 bind.checkData("S69-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw69_brtag === "A0") ? "1" : "0");
1653
1654 // 步骤 70:SEQ14-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1655 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1656 var sdCla70 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1657 var s70 = bind.sendApdu(sdCla70, "E2", "91", "00", "BF2B0481020560", "00", "9000");
1658 bind.checkData("S70-C1 SW", "9000", s70.sw);
1659 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1660 var lw70T = BindEs10xSingleRequest.parseBerTlv(s70.resp);
1661 var lw70Ok0 = lw70T.length === 1 && lw70T[0].tag === "BF2B";
1662 var lw70_br = lw70Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw70T[0].value) : [];
1663 var lw70_brtag = lw70_br.length === 1 ? lw70_br[0].tag : "";
1664 var lw70_els = lw70_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw70_br[0].value) : [];
1665 bind.checkData("S70-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw70_brtag === "A0" && lw70_els.length === 0) ? "1" : "0");
1666
1667 // 步骤 71:SEQ14-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1668 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1669 var sdCla71 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1670 var s71 = bind.sendApdu(sdCla71, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
1671 bind.checkData("S71-C1 SW", "9000", s71.sw);
1672 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1673 var lw71T = BindEs10xSingleRequest.parseBerTlv(s71.resp);
1674 var lw71Ok0 = lw71T.length === 1 && lw71T[0].tag === "BF2B";
1675 var lw71_br = lw71Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw71T[0].value) : [];
1676 var lw71_brtag = lw71_br.length === 1 ? lw71_br[0].tag : "";
1677 var lw71_els = lw71_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw71_br[0].value) : [];
1678 bind.checkData("S71-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw71_brtag === "A0" && lw71_els.length === 0) ? "1" : "0");
1679
1680 // 步骤 72:SEQ15-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1681 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1682 var sdCla72 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1683 var s72 = bind.sendApdu(sdCla72, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1684 bind.checkData("S72-C1 SW", "9000", s72.sw);
1685 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1686 var lw72T = BindEs10xSingleRequest.parseBerTlv(s72.resp);
1687 var lw72Ok0 = lw72T.length === 1 && lw72T[0].tag === "BF2B";
1688 var lw72_br = lw72Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw72T[0].value) : [];
1689 var lw72_brtag = lw72_br.length === 1 ? lw72_br[0].tag : "";
1690 var lw72_els = lw72_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw72_br[0].value) : [];
1691 bind.checkData("S72-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count", "1", (lw72_brtag === "A0" && lw72_els.length === 2) ? "1" : "0");
1692 bind.checkData("S72-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count", "1", (lw72_brtag === "A0") ? "1" : "0");
1693
1694 // 步骤 73:SEQ15-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1695 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1696 var sdCla73 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1697 var s73 = bind.sendApdu(sdCla73, "E2", "91", "00", "BF2B00", "00", "9000");
1698 bind.checkData("S73-C1 SW", "9000", s73.sw);
1699 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1700 var lw73T = BindEs10xSingleRequest.parseBerTlv(s73.resp);
1701 var lw73Ok0 = lw73T.length === 1 && lw73T[0].tag === "BF2B";
1702 var lw73_br = lw73Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw73T[0].value) : [];
1703 var lw73_brtag = lw73_br.length === 1 ? lw73_br[0].tag : "";
1704 var lw73_els = lw73_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw73_br[0].value) : [];
1705 bind.checkData("S73-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count", "1", (lw73_brtag === "A0" && lw73_els.length === 2) ? "1" : "0");
1706 bind.checkData("S73-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count", "1", (lw73_brtag === "A0") ? "1" : "0");
1707
1708 // 步骤 74:SEQ15-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1709 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1710 var sdCla74 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1711 var s74 = bind.sendApdu(sdCla74, "E2", "91", "00", "BF2B03810100", "00", "9000");
1712 bind.checkData("S74-C1 SW", "9000", s74.sw);
1713 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1714 var lw74T = BindEs10xSingleRequest.parseBerTlv(s74.resp);
1715 var lw74Ok0 = lw74T.length === 1 && lw74T[0].tag === "BF2B";
1716 var lw74_br = lw74Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw74T[0].value) : [];
1717 var lw74_brtag = lw74_br.length === 1 ? lw74_br[0].tag : "";
1718 var lw74_els = lw74_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw74_br[0].value) : [];
1719 bind.checkData("S74-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw74_brtag === "A0" && lw74_els.length === 0) ? "1" : "0");
1720
1721 // 步骤 75:SEQ15-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1722 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1723 var sdCla75 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1724 var s75 = bind.sendApdu(sdCla75, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1725 bind.checkData("S75-C1 SW", "9000", s75.sw);
1726 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1727 var lw75T = BindEs10xSingleRequest.parseBerTlv(s75.resp);
1728 var lw75Ok0 = lw75T.length === 1 && lw75T[0].tag === "BF2B";
1729 var lw75_br = lw75Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw75T[0].value) : [];
1730 var lw75_brtag = lw75_br.length === 1 ? lw75_br[0].tag : "";
1731 var lw75_els = lw75_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw75_br[0].value) : [];
1732 bind.checkData("S75-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count", "1", (lw75_brtag === "A0" && lw75_els.length === 2) ? "1" : "0");
1733 bind.checkData("S75-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count", "1", (lw75_brtag === "A0") ? "1" : "0");
1734
1735 // 步骤 76:SEQ15-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1736 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1737 var sdCla76 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1738 var s76 = bind.sendApdu(sdCla76, "E2", "91", "00", "BF2B0481020640", "00", "9000");
1739 bind.checkData("S76-C1 SW", "9000", s76.sw);
1740 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1741 var lw76T = BindEs10xSingleRequest.parseBerTlv(s76.resp);
1742 var lw76Ok0 = lw76T.length === 1 && lw76T[0].tag === "BF2B";
1743 var lw76_br = lw76Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw76T[0].value) : [];
1744 var lw76_brtag = lw76_br.length === 1 ? lw76_br[0].tag : "";
1745 var lw76_els = lw76_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw76_br[0].value) : [];
1746 bind.checkData("S76-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw76_brtag === "A0" && lw76_els.length === 0) ? "1" : "0");
1747
1748 // 步骤 77:SEQ15-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1749 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1750 var sdCla77 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1751 var s77 = bind.sendApdu(sdCla77, "E2", "91", "00", "BF2B0481020520", "00", "9000");
1752 bind.checkData("S77-C1 SW", "9000", s77.sw);
1753 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1754 var lw77T = BindEs10xSingleRequest.parseBerTlv(s77.resp);
1755 var lw77Ok0 = lw77T.length === 1 && lw77T[0].tag === "BF2B";
1756 var lw77_br = lw77Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw77T[0].value) : [];
1757 var lw77_brtag = lw77_br.length === 1 ? lw77_br[0].tag : "";
1758 var lw77_els = lw77_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw77_br[0].value) : [];
1759 bind.checkData("S77-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw77_brtag === "A0" && lw77_els.length === 0) ? "1" : "0");
1760
1761 // 步骤 78:SEQ15-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1762 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1763 var sdCla78 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1764 var s78 = bind.sendApdu(sdCla78, "E2", "91", "00", "BF2B0481020410", "00", "9000");
1765 bind.checkData("S78-C1 SW", "9000", s78.sw);
1766 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1767 var lw78T = BindEs10xSingleRequest.parseBerTlv(s78.resp);
1768 var lw78Ok0 = lw78T.length === 1 && lw78T[0].tag === "BF2B";
1769 var lw78_br = lw78Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw78T[0].value) : [];
1770 var lw78_brtag = lw78_br.length === 1 ? lw78_br[0].tag : "";
1771 var lw78_els = lw78_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw78_br[0].value) : [];
1772 bind.checkData("S78-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw78_brtag === "A0" && lw78_els.length === 0) ? "1" : "0");
1773
1774 // 步骤 79:SEQ15-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1775 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1776 var sdCla79 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1777 var s79 = bind.sendApdu(sdCla79, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
1778 bind.checkData("S79-C1 SW", "9000", s79.sw);
1779 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1780 var lw79T = BindEs10xSingleRequest.parseBerTlv(s79.resp);
1781 var lw79Ok0 = lw79T.length === 1 && lw79T[0].tag === "BF2B";
1782 var lw79_br = lw79Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw79T[0].value) : [];
1783 var lw79_brtag = lw79_br.length === 1 ? lw79_br[0].tag : "";
1784 var lw79_els = lw79_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw79_br[0].value) : [];
1785 bind.checkData("S79-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count", "1", (lw79_brtag === "A0" && lw79_els.length === 2) ? "1" : "0");
1786 bind.checkData("S79-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count", "1", (lw79_brtag === "A0") ? "1" : "0");
1787
1788 // 步骤 80:SEQ15-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1789 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1790 var sdCla80 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1791 var s80 = bind.sendApdu(sdCla80, "E2", "91", "00", "BF2B0481020430", "00", "9000");
1792 bind.checkData("S80-C1 SW", "9000", s80.sw);
1793 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1794 var lw80T = BindEs10xSingleRequest.parseBerTlv(s80.resp);
1795 var lw80Ok0 = lw80T.length === 1 && lw80T[0].tag === "BF2B";
1796 var lw80_br = lw80Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw80T[0].value) : [];
1797 var lw80_brtag = lw80_br.length === 1 ? lw80_br[0].tag : "";
1798 var lw80_els = lw80_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw80_br[0].value) : [];
1799 bind.checkData("S80-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw80_brtag === "A0" && lw80_els.length === 0) ? "1" : "0");
1800
1801 // 步骤 81:SEQ15-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1802 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1803 var sdCla81 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1804 var s81 = bind.sendApdu(sdCla81, "E2", "91", "00", "BF2B0481020560", "00", "9000");
1805 bind.checkData("S81-C1 SW", "9000", s81.sw);
1806 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1807 var lw81T = BindEs10xSingleRequest.parseBerTlv(s81.resp);
1808 var lw81Ok0 = lw81T.length === 1 && lw81T[0].tag === "BF2B";
1809 var lw81_br = lw81Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw81T[0].value) : [];
1810 var lw81_brtag = lw81_br.length === 1 ? lw81_br[0].tag : "";
1811 var lw81_els = lw81_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw81_br[0].value) : [];
1812 bind.checkData("S81-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw81_brtag === "A0" && lw81_els.length === 0) ? "1" : "0");
1813
1814 // 步骤 82:SEQ15-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1815 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1816 var sdCla82 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1817 var s82 = bind.sendApdu(sdCla82, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
1818 bind.checkData("S82-C1 SW", "9000", s82.sw);
1819 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1820 var lw82T = BindEs10xSingleRequest.parseBerTlv(s82.resp);
1821 var lw82Ok0 = lw82T.length === 1 && lw82T[0].tag === "BF2B";
1822 var lw82_br = lw82Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw82T[0].value) : [];
1823 var lw82_brtag = lw82_br.length === 1 ? lw82_br[0].tag : "";
1824 var lw82_els = lw82_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw82_br[0].value) : [];
1825 bind.checkData("S82-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count", "1", (lw82_brtag === "A0" && lw82_els.length === 2) ? "1" : "0");
1826 bind.checkData("S82-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count", "1", (lw82_brtag === "A0") ? "1" : "0");
1827
1828 // 步骤 83:SEQ16-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1829 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1830 var sdCla83 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1831 var s83 = bind.sendApdu(sdCla83, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1832 bind.checkData("S83-C1 SW", "9000", s83.sw);
1833 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1834 var lw83T = BindEs10xSingleRequest.parseBerTlv(s83.resp);
1835 var lw83Ok0 = lw83T.length === 1 && lw83T[0].tag === "BF2B";
1836 var lw83_br = lw83Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw83T[0].value) : [];
1837 var lw83_brtag = lw83_br.length === 1 ? lw83_br[0].tag : "";
1838 var lw83_els = lw83_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw83_br[0].value) : [];
1839 bind.checkData("S83-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count", "1", (lw83_brtag === "A0" && lw83_els.length === 2) ? "1" : "0");
1840 bind.checkData("S83-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw83_brtag === "A0") ? "1" : "0");
1841 bind.checkData("S83-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw83_brtag === "A0") ? "1" : "0");
1842
1843 // 步骤 84:SEQ16-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1844 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1845 var sdCla84 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1846 var s84 = bind.sendApdu(sdCla84, "E2", "91", "00", "BF2B00", "00", "9000");
1847 bind.checkData("S84-C1 SW", "9000", s84.sw);
1848 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1849 var lw84T = BindEs10xSingleRequest.parseBerTlv(s84.resp);
1850 var lw84Ok0 = lw84T.length === 1 && lw84T[0].tag === "BF2B";
1851 var lw84_br = lw84Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw84T[0].value) : [];
1852 var lw84_brtag = lw84_br.length === 1 ? lw84_br[0].tag : "";
1853 var lw84_els = lw84_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw84_br[0].value) : [];
1854 bind.checkData("S84-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count", "1", (lw84_brtag === "A0" && lw84_els.length === 2) ? "1" : "0");
1855 bind.checkData("S84-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw84_brtag === "A0") ? "1" : "0");
1856 bind.checkData("S84-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw84_brtag === "A0") ? "1" : "0");
1857
1858 // 步骤 85:SEQ16-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1859 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1860 var sdCla85 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1861 var s85 = bind.sendApdu(sdCla85, "E2", "91", "00", "BF2B03810100", "00", "9000");
1862 bind.checkData("S85-C1 SW", "9000", s85.sw);
1863 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1864 var lw85T = BindEs10xSingleRequest.parseBerTlv(s85.resp);
1865 var lw85Ok0 = lw85T.length === 1 && lw85T[0].tag === "BF2B";
1866 var lw85_br = lw85Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw85T[0].value) : [];
1867 var lw85_brtag = lw85_br.length === 1 ? lw85_br[0].tag : "";
1868 var lw85_els = lw85_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw85_br[0].value) : [];
1869 bind.checkData("S85-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw85_brtag === "A0" && lw85_els.length === 0) ? "1" : "0");
1870
1871 // 步骤 86:SEQ16-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1872 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1873 var sdCla86 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1874 var s86 = bind.sendApdu(sdCla86, "E2", "91", "00", "BF2B0481020780", "00", "9000");
1875 bind.checkData("S86-C1 SW", "9000", s86.sw);
1876 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1877 var lw86T = BindEs10xSingleRequest.parseBerTlv(s86.resp);
1878 var lw86Ok0 = lw86T.length === 1 && lw86T[0].tag === "BF2B";
1879 var lw86_br = lw86Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw86T[0].value) : [];
1880 var lw86_brtag = lw86_br.length === 1 ? lw86_br[0].tag : "";
1881 var lw86_els = lw86_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw86_br[0].value) : [];
1882 bind.checkData("S86-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw86_brtag === "A0" && lw86_els.length === 1) ? "1" : "0");
1883 bind.checkData("S86-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw86_brtag === "A0") ? "1" : "0");
1884
1885 // 步骤 87:SEQ16-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1886 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1887 var sdCla87 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1888 var s87 = bind.sendApdu(sdCla87, "E2", "91", "00", "BF2B0481020640", "00", "9000");
1889 bind.checkData("S87-C1 SW", "9000", s87.sw);
1890 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1891 var lw87T = BindEs10xSingleRequest.parseBerTlv(s87.resp);
1892 var lw87Ok0 = lw87T.length === 1 && lw87T[0].tag === "BF2B";
1893 var lw87_br = lw87Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw87T[0].value) : [];
1894 var lw87_brtag = lw87_br.length === 1 ? lw87_br[0].tag : "";
1895 var lw87_els = lw87_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw87_br[0].value) : [];
1896 bind.checkData("S87-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw87_brtag === "A0" && lw87_els.length === 1) ? "1" : "0");
1897 bind.checkData("S87-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw87_brtag === "A0") ? "1" : "0");
1898
1899 // 步骤 88:SEQ16-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1900 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1901 var sdCla88 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1902 var s88 = bind.sendApdu(sdCla88, "E2", "91", "00", "BF2B0481020520", "00", "9000");
1903 bind.checkData("S88-C1 SW", "9000", s88.sw);
1904 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1905 var lw88T = BindEs10xSingleRequest.parseBerTlv(s88.resp);
1906 var lw88Ok0 = lw88T.length === 1 && lw88T[0].tag === "BF2B";
1907 var lw88_br = lw88Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw88T[0].value) : [];
1908 var lw88_brtag = lw88_br.length === 1 ? lw88_br[0].tag : "";
1909 var lw88_els = lw88_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw88_br[0].value) : [];
1910 bind.checkData("S88-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw88_brtag === "A0" && lw88_els.length === 0) ? "1" : "0");
1911
1912 // 步骤 89:SEQ16-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1913 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1914 var sdCla89 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1915 var s89 = bind.sendApdu(sdCla89, "E2", "91", "00", "BF2B0481020410", "00", "9000");
1916 bind.checkData("S89-C1 SW", "9000", s89.sw);
1917 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1918 var lw89T = BindEs10xSingleRequest.parseBerTlv(s89.resp);
1919 var lw89Ok0 = lw89T.length === 1 && lw89T[0].tag === "BF2B";
1920 var lw89_br = lw89Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw89T[0].value) : [];
1921 var lw89_brtag = lw89_br.length === 1 ? lw89_br[0].tag : "";
1922 var lw89_els = lw89_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw89_br[0].value) : [];
1923 bind.checkData("S89-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw89_brtag === "A0" && lw89_els.length === 0) ? "1" : "0");
1924
1925 // 步骤 90:SEQ16-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1926 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1927 var sdCla90 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1928 var s90 = bind.sendApdu(sdCla90, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
1929 bind.checkData("S90-C1 SW", "9000", s90.sw);
1930 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1931 var lw90T = BindEs10xSingleRequest.parseBerTlv(s90.resp);
1932 var lw90Ok0 = lw90T.length === 1 && lw90T[0].tag === "BF2B";
1933 var lw90_br = lw90Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw90T[0].value) : [];
1934 var lw90_brtag = lw90_br.length === 1 ? lw90_br[0].tag : "";
1935 var lw90_els = lw90_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw90_br[0].value) : [];
1936 bind.checkData("S90-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count", "1", (lw90_brtag === "A0" && lw90_els.length === 2) ? "1" : "0");
1937 bind.checkData("S90-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw90_brtag === "A0") ? "1" : "0");
1938 bind.checkData("S90-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw90_brtag === "A0") ? "1" : "0");
1939
1940 // 步骤 91:SEQ16-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
1941 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1942 var sdCla91 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1943 var s91 = bind.sendApdu(sdCla91, "E2", "91", "00", "BF2B0481020430", "00", "9000");
1944 bind.checkData("S91-C1 SW", "9000", s91.sw);
1945 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1946 var lw91T = BindEs10xSingleRequest.parseBerTlv(s91.resp);
1947 var lw91Ok0 = lw91T.length === 1 && lw91T[0].tag === "BF2B";
1948 var lw91_br = lw91Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw91T[0].value) : [];
1949 var lw91_brtag = lw91_br.length === 1 ? lw91_br[0].tag : "";
1950 var lw91_els = lw91_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw91_br[0].value) : [];
1951 bind.checkData("S91-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw91_brtag === "A0" && lw91_els.length === 0) ? "1" : "0");
1952
1953 // 步骤 92:SEQ16-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1954 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1955 var sdCla92 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1956 var s92 = bind.sendApdu(sdCla92, "E2", "91", "00", "BF2B0481020560", "00", "9000");
1957 bind.checkData("S92-C1 SW", "9000", s92.sw);
1958 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1959 var lw92T = BindEs10xSingleRequest.parseBerTlv(s92.resp);
1960 var lw92Ok0 = lw92T.length === 1 && lw92T[0].tag === "BF2B";
1961 var lw92_br = lw92Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw92T[0].value) : [];
1962 var lw92_brtag = lw92_br.length === 1 ? lw92_br[0].tag : "";
1963 var lw92_els = lw92_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw92_br[0].value) : [];
1964 bind.checkData("S92-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw92_brtag === "A0" && lw92_els.length === 1) ? "1" : "0");
1965 bind.checkData("S92-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw92_brtag === "A0") ? "1" : "0");
1966
1967 // 步骤 93:SEQ16-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
1968 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1969 var sdCla93 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1970 var s93 = bind.sendApdu(sdCla93, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
1971 bind.checkData("S93-C1 SW", "9000", s93.sw);
1972 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1973 var lw93T = BindEs10xSingleRequest.parseBerTlv(s93.resp);
1974 var lw93Ok0 = lw93T.length === 1 && lw93T[0].tag === "BF2B";
1975 var lw93_br = lw93Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw93T[0].value) : [];
1976 var lw93_brtag = lw93_br.length === 1 ? lw93_br[0].tag : "";
1977 var lw93_els = lw93_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw93_br[0].value) : [];
1978 bind.checkData("S93-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count", "1", (lw93_brtag === "A0" && lw93_els.length === 2) ? "1" : "0");
1979 bind.checkData("S93-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw93_brtag === "A0") ? "1" : "0");
1980 bind.checkData("S93-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw93_brtag === "A0") ? "1" : "0");
1981
1982 // 步骤 94:SEQ17-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1983 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1984 var sdCla94 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1985 var s94 = bind.sendApdu(sdCla94, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
1986 bind.checkData("S94-C1 SW", "9000", s94.sw);
1987 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
1988 var lw94T = BindEs10xSingleRequest.parseBerTlv(s94.resp);
1989 var lw94Ok0 = lw94T.length === 1 && lw94T[0].tag === "BF2B";
1990 var lw94_br = lw94Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw94T[0].value) : [];
1991 var lw94_brtag = lw94_br.length === 1 ? lw94_br[0].tag : "";
1992 var lw94_els = lw94_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw94_br[0].value) : [];
1993 bind.checkData("S94-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count", "1", (lw94_brtag === "A0" && lw94_els.length === 2) ? "1" : "0");
1994 bind.checkData("S94-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw94_brtag === "A0") ? "1" : "0");
1995
1996 // 步骤 95:SEQ17-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
1997 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
1998 var sdCla95 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
1999 var s95 = bind.sendApdu(sdCla95, "E2", "91", "00", "BF2B00", "00", "9000");
2000 bind.checkData("S95-C1 SW", "9000", s95.sw);
2001 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2002 var lw95T = BindEs10xSingleRequest.parseBerTlv(s95.resp);
2003 var lw95Ok0 = lw95T.length === 1 && lw95T[0].tag === "BF2B";
2004 var lw95_br = lw95Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw95T[0].value) : [];
2005 var lw95_brtag = lw95_br.length === 1 ? lw95_br[0].tag : "";
2006 var lw95_els = lw95_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw95_br[0].value) : [];
2007 bind.checkData("S95-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count", "1", (lw95_brtag === "A0" && lw95_els.length === 2) ? "1" : "0");
2008 bind.checkData("S95-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw95_brtag === "A0") ? "1" : "0");
2009
2010 // 步骤 96:SEQ17-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2011 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2012 var sdCla96 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2013 var s96 = bind.sendApdu(sdCla96, "E2", "91", "00", "BF2B03810100", "00", "9000");
2014 bind.checkData("S96-C1 SW", "9000", s96.sw);
2015 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2016 var lw96T = BindEs10xSingleRequest.parseBerTlv(s96.resp);
2017 var lw96Ok0 = lw96T.length === 1 && lw96T[0].tag === "BF2B";
2018 var lw96_br = lw96Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw96T[0].value) : [];
2019 var lw96_brtag = lw96_br.length === 1 ? lw96_br[0].tag : "";
2020 var lw96_els = lw96_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw96_br[0].value) : [];
2021 bind.checkData("S96-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw96_brtag === "A0" && lw96_els.length === 0) ? "1" : "0");
2022
2023 // 步骤 97:SEQ17-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_074)
2024 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2025 var sdCla97 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2026 var s97 = bind.sendApdu(sdCla97, "E2", "91", "00", "BF2B0481020780", "00", "9000");
2027 bind.checkData("S97-C1 SW", "9000", s97.sw);
2028 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2029 var lw97T = BindEs10xSingleRequest.parseBerTlv(s97.resp);
2030 var lw97Ok0 = lw97T.length === 1 && lw97T[0].tag === "BF2B";
2031 var lw97_br = lw97Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw97T[0].value) : [];
2032 var lw97_brtag = lw97_br.length === 1 ? lw97_br[0].tag : "";
2033 var lw97_els = lw97_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw97_br[0].value) : [];
2034 bind.checkData("S97-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw97_brtag === "A0" && lw97_els.length === 0) ? "1" : "0");
2035
2036 // 步骤 98:SEQ17-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2037 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2038 var sdCla98 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2039 var s98 = bind.sendApdu(sdCla98, "E2", "91", "00", "BF2B0481020640", "00", "9000");
2040 bind.checkData("S98-C1 SW", "9000", s98.sw);
2041 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2042 var lw98T = BindEs10xSingleRequest.parseBerTlv(s98.resp);
2043 var lw98Ok0 = lw98T.length === 1 && lw98T[0].tag === "BF2B";
2044 var lw98_br = lw98Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw98T[0].value) : [];
2045 var lw98_brtag = lw98_br.length === 1 ? lw98_br[0].tag : "";
2046 var lw98_els = lw98_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw98_br[0].value) : [];
2047 bind.checkData("S98-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw98_brtag === "A0" && lw98_els.length === 0) ? "1" : "0");
2048
2049 // 步骤 99:SEQ17-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2050 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2051 var sdCla99 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2052 var s99 = bind.sendApdu(sdCla99, "E2", "91", "00", "BF2B0481020520", "00", "9000");
2053 bind.checkData("S99-C1 SW", "9000", s99.sw);
2054 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2055 var lw99T = BindEs10xSingleRequest.parseBerTlv(s99.resp);
2056 var lw99Ok0 = lw99T.length === 1 && lw99T[0].tag === "BF2B";
2057 var lw99_br = lw99Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw99T[0].value) : [];
2058 var lw99_brtag = lw99_br.length === 1 ? lw99_br[0].tag : "";
2059 var lw99_els = lw99_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw99_br[0].value) : [];
2060 bind.checkData("S99-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw99_brtag === "A0" && lw99_els.length === 1) ? "1" : "0");
2061 bind.checkData("S99-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw99_brtag === "A0") ? "1" : "0");
2062
2063 // 步骤 100:SEQ17-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2064 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2065 var sdCla100 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2066 var s100 = bind.sendApdu(sdCla100, "E2", "91", "00", "BF2B0481020410", "00", "9000");
2067 bind.checkData("S100-C1 SW", "9000", s100.sw);
2068 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2069 var lw100T = BindEs10xSingleRequest.parseBerTlv(s100.resp);
2070 var lw100Ok0 = lw100T.length === 1 && lw100T[0].tag === "BF2B";
2071 var lw100_br = lw100Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw100T[0].value) : [];
2072 var lw100_brtag = lw100_br.length === 1 ? lw100_br[0].tag : "";
2073 var lw100_els = lw100_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw100_br[0].value) : [];
2074 bind.checkData("S100-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw100_brtag === "A0" && lw100_els.length === 1) ? "1" : "0");
2075 bind.checkData("S100-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw100_brtag === "A0") ? "1" : "0");
2076
2077 // 步骤 101:SEQ17-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2078 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2079 var sdCla101 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2080 var s101 = bind.sendApdu(sdCla101, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
2081 bind.checkData("S101-C1 SW", "9000", s101.sw);
2082 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2083 var lw101T = BindEs10xSingleRequest.parseBerTlv(s101.resp);
2084 var lw101Ok0 = lw101T.length === 1 && lw101T[0].tag === "BF2B";
2085 var lw101_br = lw101Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw101T[0].value) : [];
2086 var lw101_brtag = lw101_br.length === 1 ? lw101_br[0].tag : "";
2087 var lw101_els = lw101_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw101_br[0].value) : [];
2088 bind.checkData("S101-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw101_brtag === "A0" && lw101_els.length === 0) ? "1" : "0");
2089
2090 // 步骤 102:SEQ17-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2091 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2092 var sdCla102 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2093 var s102 = bind.sendApdu(sdCla102, "E2", "91", "00", "BF2B0481020430", "00", "9000");
2094 bind.checkData("S102-C1 SW", "9000", s102.sw);
2095 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2096 var lw102T = BindEs10xSingleRequest.parseBerTlv(s102.resp);
2097 var lw102Ok0 = lw102T.length === 1 && lw102T[0].tag === "BF2B";
2098 var lw102_br = lw102Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw102T[0].value) : [];
2099 var lw102_brtag = lw102_br.length === 1 ? lw102_br[0].tag : "";
2100 var lw102_els = lw102_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw102_br[0].value) : [];
2101 bind.checkData("S102-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count", "1", (lw102_brtag === "A0" && lw102_els.length === 2) ? "1" : "0");
2102 bind.checkData("S102-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw102_brtag === "A0") ? "1" : "0");
2103
2104 // 步骤 103:SEQ17-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2105 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2106 var sdCla103 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2107 var s103 = bind.sendApdu(sdCla103, "E2", "91", "00", "BF2B0481020560", "00", "9000");
2108 bind.checkData("S103-C1 SW", "9000", s103.sw);
2109 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2110 var lw103T = BindEs10xSingleRequest.parseBerTlv(s103.resp);
2111 var lw103Ok0 = lw103T.length === 1 && lw103T[0].tag === "BF2B";
2112 var lw103_br = lw103Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw103T[0].value) : [];
2113 var lw103_brtag = lw103_br.length === 1 ? lw103_br[0].tag : "";
2114 var lw103_els = lw103_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw103_br[0].value) : [];
2115 bind.checkData("S103-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw103_brtag === "A0" && lw103_els.length === 1) ? "1" : "0");
2116 bind.checkData("S103-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw103_brtag === "A0") ? "1" : "0");
2117
2118 // 步骤 104:SEQ17-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2119 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2120 var sdCla104 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2121 var s104 = bind.sendApdu(sdCla104, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
2122 bind.checkData("S104-C1 SW", "9000", s104.sw);
2123 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2124 var lw104T = BindEs10xSingleRequest.parseBerTlv(s104.resp);
2125 var lw104Ok0 = lw104T.length === 1 && lw104T[0].tag === "BF2B";
2126 var lw104_br = lw104Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw104T[0].value) : [];
2127 var lw104_brtag = lw104_br.length === 1 ? lw104_br[0].tag : "";
2128 var lw104_els = lw104_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw104_br[0].value) : [];
2129 bind.checkData("S104-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw104_brtag === "A0" && lw104_els.length === 1) ? "1" : "0");
2130 bind.checkData("S104-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw104_brtag === "A0") ? "1" : "0");
2131
2132 // 步骤 105:SEQ18-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
2133 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2134 var sdCla105 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2135 var s105 = bind.sendApdu(sdCla105, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
2136 bind.checkData("S105-C1 SW", "9000", s105.sw);
2137 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2138 var lw105T = BindEs10xSingleRequest.parseBerTlv(s105.resp);
2139 var lw105Ok0 = lw105T.length === 1 && lw105T[0].tag === "BF2B";
2140 var lw105_br = lw105Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw105T[0].value) : [];
2141 var lw105_brtag = lw105_br.length === 1 ? lw105_br[0].tag : "";
2142 var lw105_els = lw105_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw105_br[0].value) : [];
2143 bind.checkData("S105-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count", "1", (lw105_brtag === "A0" && lw105_els.length === 2) ? "1" : "0");
2144 bind.checkData("S105-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw105_brtag === "A0") ? "1" : "0");
2145
2146 // 步骤 106:SEQ18-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
2147 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2148 var sdCla106 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2149 var s106 = bind.sendApdu(sdCla106, "E2", "91", "00", "BF2B00", "00", "9000");
2150 bind.checkData("S106-C1 SW", "9000", s106.sw);
2151 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2152 var lw106T = BindEs10xSingleRequest.parseBerTlv(s106.resp);
2153 var lw106Ok0 = lw106T.length === 1 && lw106T[0].tag === "BF2B";
2154 var lw106_br = lw106Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw106T[0].value) : [];
2155 var lw106_brtag = lw106_br.length === 1 ? lw106_br[0].tag : "";
2156 var lw106_els = lw106_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw106_br[0].value) : [];
2157 bind.checkData("S106-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count", "1", (lw106_brtag === "A0" && lw106_els.length === 2) ? "1" : "0");
2158 bind.checkData("S106-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw106_brtag === "A0") ? "1" : "0");
2159
2160 // 步骤 107:SEQ18-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2161 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2162 var sdCla107 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2163 var s107 = bind.sendApdu(sdCla107, "E2", "91", "00", "BF2B03810100", "00", "9000");
2164 bind.checkData("S107-C1 SW", "9000", s107.sw);
2165 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2166 var lw107T = BindEs10xSingleRequest.parseBerTlv(s107.resp);
2167 var lw107Ok0 = lw107T.length === 1 && lw107T[0].tag === "BF2B";
2168 var lw107_br = lw107Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw107T[0].value) : [];
2169 var lw107_brtag = lw107_br.length === 1 ? lw107_br[0].tag : "";
2170 var lw107_els = lw107_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw107_br[0].value) : [];
2171 bind.checkData("S107-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw107_brtag === "A0" && lw107_els.length === 0) ? "1" : "0");
2172
2173 // 步骤 108:SEQ18-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
2174 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2175 var sdCla108 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2176 var s108 = bind.sendApdu(sdCla108, "E2", "91", "00", "BF2B0481020780", "00", "9000");
2177 bind.checkData("S108-C1 SW", "9000", s108.sw);
2178 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2179 var lw108T = BindEs10xSingleRequest.parseBerTlv(s108.resp);
2180 var lw108Ok0 = lw108T.length === 1 && lw108T[0].tag === "BF2B";
2181 var lw108_br = lw108Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw108T[0].value) : [];
2182 var lw108_brtag = lw108_br.length === 1 ? lw108_br[0].tag : "";
2183 var lw108_els = lw108_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw108_br[0].value) : [];
2184 bind.checkData("S108-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count", "1", (lw108_brtag === "A0" && lw108_els.length === 1) ? "1" : "0");
2185 bind.checkData("S108-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw108_brtag === "A0") ? "1" : "0");
2186
2187 // 步骤 109:SEQ18-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2188 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2189 var sdCla109 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2190 var s109 = bind.sendApdu(sdCla109, "E2", "91", "00", "BF2B0481020640", "00", "9000");
2191 bind.checkData("S109-C1 SW", "9000", s109.sw);
2192 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2193 var lw109T = BindEs10xSingleRequest.parseBerTlv(s109.resp);
2194 var lw109Ok0 = lw109T.length === 1 && lw109T[0].tag === "BF2B";
2195 var lw109_br = lw109Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw109T[0].value) : [];
2196 var lw109_brtag = lw109_br.length === 1 ? lw109_br[0].tag : "";
2197 var lw109_els = lw109_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw109_br[0].value) : [];
2198 bind.checkData("S109-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw109_brtag === "A0" && lw109_els.length === 1) ? "1" : "0");
2199 bind.checkData("S109-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw109_brtag === "A0") ? "1" : "0");
2200
2201 // 步骤 110:SEQ18-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2202 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2203 var sdCla110 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2204 var s110 = bind.sendApdu(sdCla110, "E2", "91", "00", "BF2B0481020520", "00", "9000");
2205 bind.checkData("S110-C1 SW", "9000", s110.sw);
2206 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2207 var lw110T = BindEs10xSingleRequest.parseBerTlv(s110.resp);
2208 var lw110Ok0 = lw110T.length === 1 && lw110T[0].tag === "BF2B";
2209 var lw110_br = lw110Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw110T[0].value) : [];
2210 var lw110_brtag = lw110_br.length === 1 ? lw110_br[0].tag : "";
2211 var lw110_els = lw110_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw110_br[0].value) : [];
2212 bind.checkData("S110-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw110_brtag === "A0" && lw110_els.length === 0) ? "1" : "0");
2213
2214 // 步骤 111:SEQ18-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2215 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2216 var sdCla111 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2217 var s111 = bind.sendApdu(sdCla111, "E2", "91", "00", "BF2B0481020410", "00", "9000");
2218 bind.checkData("S111-C1 SW", "9000", s111.sw);
2219 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2220 var lw111T = BindEs10xSingleRequest.parseBerTlv(s111.resp);
2221 var lw111Ok0 = lw111T.length === 1 && lw111T[0].tag === "BF2B";
2222 var lw111_br = lw111Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw111T[0].value) : [];
2223 var lw111_brtag = lw111_br.length === 1 ? lw111_br[0].tag : "";
2224 var lw111_els = lw111_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw111_br[0].value) : [];
2225 bind.checkData("S111-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw111_brtag === "A0" && lw111_els.length === 0) ? "1" : "0");
2226
2227 // 步骤 112:SEQ18-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
2228 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2229 var sdCla112 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2230 var s112 = bind.sendApdu(sdCla112, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
2231 bind.checkData("S112-C1 SW", "9000", s112.sw);
2232 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2233 var lw112T = BindEs10xSingleRequest.parseBerTlv(s112.resp);
2234 var lw112Ok0 = lw112T.length === 1 && lw112T[0].tag === "BF2B";
2235 var lw112_br = lw112Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw112T[0].value) : [];
2236 var lw112_brtag = lw112_br.length === 1 ? lw112_br[0].tag : "";
2237 var lw112_els = lw112_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw112_br[0].value) : [];
2238 bind.checkData("S112-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count", "1", (lw112_brtag === "A0" && lw112_els.length === 2) ? "1" : "0");
2239 bind.checkData("S112-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw112_brtag === "A0") ? "1" : "0");
2240
2241 // 步骤 113:SEQ18-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2242 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2243 var sdCla113 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2244 var s113 = bind.sendApdu(sdCla113, "E2", "91", "00", "BF2B0481020430", "00", "9000");
2245 bind.checkData("S113-C1 SW", "9000", s113.sw);
2246 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2247 var lw113T = BindEs10xSingleRequest.parseBerTlv(s113.resp);
2248 var lw113Ok0 = lw113T.length === 1 && lw113T[0].tag === "BF2B";
2249 var lw113_br = lw113Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw113T[0].value) : [];
2250 var lw113_brtag = lw113_br.length === 1 ? lw113_br[0].tag : "";
2251 var lw113_els = lw113_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw113_br[0].value) : [];
2252 bind.checkData("S113-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw113_brtag === "A0" && lw113_els.length === 0) ? "1" : "0");
2253
2254 // 步骤 114:SEQ18-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2255 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2256 var sdCla114 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2257 var s114 = bind.sendApdu(sdCla114, "E2", "91", "00", "BF2B0481020560", "00", "9000");
2258 bind.checkData("S114-C1 SW", "9000", s114.sw);
2259 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2260 var lw114T = BindEs10xSingleRequest.parseBerTlv(s114.resp);
2261 var lw114Ok0 = lw114T.length === 1 && lw114T[0].tag === "BF2B";
2262 var lw114_br = lw114Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw114T[0].value) : [];
2263 var lw114_brtag = lw114_br.length === 1 ? lw114_br[0].tag : "";
2264 var lw114_els = lw114_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw114_br[0].value) : [];
2265 bind.checkData("S114-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw114_brtag === "A0" && lw114_els.length === 1) ? "1" : "0");
2266 bind.checkData("S114-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw114_brtag === "A0") ? "1" : "0");
2267
2268 // 步骤 115:SEQ18-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
2269 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2270 var sdCla115 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2271 var s115 = bind.sendApdu(sdCla115, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
2272 bind.checkData("S115-C1 SW", "9000", s115.sw);
2273 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2274 var lw115T = BindEs10xSingleRequest.parseBerTlv(s115.resp);
2275 var lw115Ok0 = lw115T.length === 1 && lw115T[0].tag === "BF2B";
2276 var lw115_br = lw115Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw115T[0].value) : [];
2277 var lw115_brtag = lw115_br.length === 1 ? lw115_br[0].tag : "";
2278 var lw115_els = lw115_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw115_br[0].value) : [];
2279 bind.checkData("S115-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count", "1", (lw115_brtag === "A0" && lw115_els.length === 2) ? "1" : "0");
2280 bind.checkData("S115-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count", "1", (lw115_brtag === "A0") ? "1" : "0");
2281
2282 // 步骤 116:SEQ19-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
2283 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2284 var sdCla116 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2285 var s116 = bind.sendApdu(sdCla116, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
2286 bind.checkData("S116-C1 SW", "9000", s116.sw);
2287 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2288 var lw116T = BindEs10xSingleRequest.parseBerTlv(s116.resp);
2289 var lw116Ok0 = lw116T.length === 1 && lw116T[0].tag === "BF2B";
2290 var lw116_br = lw116Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw116T[0].value) : [];
2291 var lw116_brtag = lw116_br.length === 1 ? lw116_br[0].tag : "";
2292 var lw116_els = lw116_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw116_br[0].value) : [];
2293 bind.checkData("S116-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count", "1", (lw116_brtag === "A0" && lw116_els.length === 2) ? "1" : "0");
2294 bind.checkData("S116-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw116_brtag === "A0") ? "1" : "0");
2295 bind.checkData("S116-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw116_brtag === "A0") ? "1" : "0");
2296
2297 // 步骤 117:SEQ19-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
2298 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2299 var sdCla117 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2300 var s117 = bind.sendApdu(sdCla117, "E2", "91", "00", "BF2B00", "00", "9000");
2301 bind.checkData("S117-C1 SW", "9000", s117.sw);
2302 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2303 var lw117T = BindEs10xSingleRequest.parseBerTlv(s117.resp);
2304 var lw117Ok0 = lw117T.length === 1 && lw117T[0].tag === "BF2B";
2305 var lw117_br = lw117Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw117T[0].value) : [];
2306 var lw117_brtag = lw117_br.length === 1 ? lw117_br[0].tag : "";
2307 var lw117_els = lw117_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw117_br[0].value) : [];
2308 bind.checkData("S117-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count", "1", (lw117_brtag === "A0" && lw117_els.length === 2) ? "1" : "0");
2309 bind.checkData("S117-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw117_brtag === "A0") ? "1" : "0");
2310 bind.checkData("S117-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw117_brtag === "A0") ? "1" : "0");
2311
2312 // 步骤 118:SEQ19-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2313 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2314 var sdCla118 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2315 var s118 = bind.sendApdu(sdCla118, "E2", "91", "00", "BF2B03810100", "00", "9000");
2316 bind.checkData("S118-C1 SW", "9000", s118.sw);
2317 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2318 var lw118T = BindEs10xSingleRequest.parseBerTlv(s118.resp);
2319 var lw118Ok0 = lw118T.length === 1 && lw118T[0].tag === "BF2B";
2320 var lw118_br = lw118Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw118T[0].value) : [];
2321 var lw118_brtag = lw118_br.length === 1 ? lw118_br[0].tag : "";
2322 var lw118_els = lw118_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw118_br[0].value) : [];
2323 bind.checkData("S118-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw118_brtag === "A0" && lw118_els.length === 0) ? "1" : "0");
2324
2325 // 步骤 119:SEQ19-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
2326 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2327 var sdCla119 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2328 var s119 = bind.sendApdu(sdCla119, "E2", "91", "00", "BF2B0481020780", "00", "9000");
2329 bind.checkData("S119-C1 SW", "9000", s119.sw);
2330 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2331 var lw119T = BindEs10xSingleRequest.parseBerTlv(s119.resp);
2332 var lw119Ok0 = lw119T.length === 1 && lw119T[0].tag === "BF2B";
2333 var lw119_br = lw119Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw119T[0].value) : [];
2334 var lw119_brtag = lw119_br.length === 1 ? lw119_br[0].tag : "";
2335 var lw119_els = lw119_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw119_br[0].value) : [];
2336 bind.checkData("S119-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count", "1", (lw119_brtag === "A0" && lw119_els.length === 1) ? "1" : "0");
2337 bind.checkData("S119-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw119_brtag === "A0") ? "1" : "0");
2338
2339 // 步骤 120:SEQ19-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2340 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2341 var sdCla120 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2342 var s120 = bind.sendApdu(sdCla120, "E2", "91", "00", "BF2B0481020640", "00", "9000");
2343 bind.checkData("S120-C1 SW", "9000", s120.sw);
2344 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2345 var lw120T = BindEs10xSingleRequest.parseBerTlv(s120.resp);
2346 var lw120Ok0 = lw120T.length === 1 && lw120T[0].tag === "BF2B";
2347 var lw120_br = lw120Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw120T[0].value) : [];
2348 var lw120_brtag = lw120_br.length === 1 ? lw120_br[0].tag : "";
2349 var lw120_els = lw120_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw120_br[0].value) : [];
2350 bind.checkData("S120-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw120_brtag === "A0" && lw120_els.length === 1) ? "1" : "0");
2351 bind.checkData("S120-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw120_brtag === "A0") ? "1" : "0");
2352
2353 // 步骤 121:SEQ19-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2354 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2355 var sdCla121 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2356 var s121 = bind.sendApdu(sdCla121, "E2", "91", "00", "BF2B0481020520", "00", "9000");
2357 bind.checkData("S121-C1 SW", "9000", s121.sw);
2358 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2359 var lw121T = BindEs10xSingleRequest.parseBerTlv(s121.resp);
2360 var lw121Ok0 = lw121T.length === 1 && lw121T[0].tag === "BF2B";
2361 var lw121_br = lw121Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw121T[0].value) : [];
2362 var lw121_brtag = lw121_br.length === 1 ? lw121_br[0].tag : "";
2363 var lw121_els = lw121_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw121_br[0].value) : [];
2364 bind.checkData("S121-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw121_brtag === "A0" && lw121_els.length === 0) ? "1" : "0");
2365
2366 // 步骤 122:SEQ19-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2367 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2368 var sdCla122 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2369 var s122 = bind.sendApdu(sdCla122, "E2", "91", "00", "BF2B0481020410", "00", "9000");
2370 bind.checkData("S122-C1 SW", "9000", s122.sw);
2371 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2372 var lw122T = BindEs10xSingleRequest.parseBerTlv(s122.resp);
2373 var lw122Ok0 = lw122T.length === 1 && lw122T[0].tag === "BF2B";
2374 var lw122_br = lw122Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw122T[0].value) : [];
2375 var lw122_brtag = lw122_br.length === 1 ? lw122_br[0].tag : "";
2376 var lw122_els = lw122_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw122_br[0].value) : [];
2377 bind.checkData("S122-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw122_brtag === "A0" && lw122_els.length === 0) ? "1" : "0");
2378
2379 // 步骤 123:SEQ19-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
2380 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2381 var sdCla123 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2382 var s123 = bind.sendApdu(sdCla123, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
2383 bind.checkData("S123-C1 SW", "9000", s123.sw);
2384 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2385 var lw123T = BindEs10xSingleRequest.parseBerTlv(s123.resp);
2386 var lw123Ok0 = lw123T.length === 1 && lw123T[0].tag === "BF2B";
2387 var lw123_br = lw123Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw123T[0].value) : [];
2388 var lw123_brtag = lw123_br.length === 1 ? lw123_br[0].tag : "";
2389 var lw123_els = lw123_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw123_br[0].value) : [];
2390 bind.checkData("S123-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count", "1", (lw123_brtag === "A0" && lw123_els.length === 2) ? "1" : "0");
2391 bind.checkData("S123-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw123_brtag === "A0") ? "1" : "0");
2392 bind.checkData("S123-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw123_brtag === "A0") ? "1" : "0");
2393
2394 // 步骤 124:SEQ19-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2395 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2396 var sdCla124 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2397 var s124 = bind.sendApdu(sdCla124, "E2", "91", "00", "BF2B0481020430", "00", "9000");
2398 bind.checkData("S124-C1 SW", "9000", s124.sw);
2399 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2400 var lw124T = BindEs10xSingleRequest.parseBerTlv(s124.resp);
2401 var lw124Ok0 = lw124T.length === 1 && lw124T[0].tag === "BF2B";
2402 var lw124_br = lw124Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw124T[0].value) : [];
2403 var lw124_brtag = lw124_br.length === 1 ? lw124_br[0].tag : "";
2404 var lw124_els = lw124_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw124_br[0].value) : [];
2405 bind.checkData("S124-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw124_brtag === "A0" && lw124_els.length === 0) ? "1" : "0");
2406
2407 // 步骤 125:SEQ19-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
2408 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2409 var sdCla125 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2410 var s125 = bind.sendApdu(sdCla125, "E2", "91", "00", "BF2B0481020560", "00", "9000");
2411 bind.checkData("S125-C1 SW", "9000", s125.sw);
2412 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2413 var lw125T = BindEs10xSingleRequest.parseBerTlv(s125.resp);
2414 var lw125Ok0 = lw125T.length === 1 && lw125T[0].tag === "BF2B";
2415 var lw125_br = lw125Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw125T[0].value) : [];
2416 var lw125_brtag = lw125_br.length === 1 ? lw125_br[0].tag : "";
2417 var lw125_els = lw125_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw125_br[0].value) : [];
2418 bind.checkData("S125-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw125_brtag === "A0" && lw125_els.length === 1) ? "1" : "0");
2419 bind.checkData("S125-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw125_brtag === "A0") ? "1" : "0");
2420
2421 // 步骤 126:SEQ19-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_073_1, RQ57_074, RQ57_075, RQ57_076, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
2422 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2423 var sdCla126 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2424 var s126 = bind.sendApdu(sdCla126, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
2425 bind.checkData("S126-C1 SW", "9000", s126.sw);
2426 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2427 var lw126T = BindEs10xSingleRequest.parseBerTlv(s126.resp);
2428 var lw126Ok0 = lw126T.length === 1 && lw126T[0].tag === "BF2B";
2429 var lw126_br = lw126Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw126T[0].value) : [];
2430 var lw126_brtag = lw126_br.length === 1 ? lw126_br[0].tag : "";
2431 var lw126_els = lw126_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw126_br[0].value) : [];
2432 bind.checkData("S126-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count", "1", (lw126_brtag === "A0" && lw126_els.length === 2) ? "1" : "0");
2433 bind.checkData("S126-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw126_brtag === "A0") ? "1" : "0");
2434 bind.checkData("S126-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw126_brtag === "A0") ? "1" : "0");
2435
2436 // 步骤 127:SEQ20-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2437 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2438 var sdCla127 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2439 var s127 = bind.sendApdu(sdCla127, "E2", "91", "00", "BF2B04810204F0", "00", "9000");
2440 bind.checkData("S127-C1 SW", "9000", s127.sw);
2441 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2442 var lw127T = BindEs10xSingleRequest.parseBerTlv(s127.resp);
2443 var lw127Ok0 = lw127T.length === 1 && lw127T[0].tag === "BF2B";
2444 var lw127_br = lw127Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw127T[0].value) : [];
2445 var lw127_brtag = lw127_br.length === 1 ? lw127_br[0].tag : "";
2446 var lw127_els = lw127_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw127_br[0].value) : [];
2447 bind.checkData("S127-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw127_brtag === "A0" && lw127_els.length === 0) ? "1" : "0");
2448
2449 // 步骤 128:SEQ20-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2450 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2451 var sdCla128 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2452 var s128 = bind.sendApdu(sdCla128, "E2", "91", "00", "BF2B00", "00", "9000");
2453 bind.checkData("S128-C1 SW", "9000", s128.sw);
2454 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2455 var lw128T = BindEs10xSingleRequest.parseBerTlv(s128.resp);
2456 var lw128Ok0 = lw128T.length === 1 && lw128T[0].tag === "BF2B";
2457 var lw128_br = lw128Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw128T[0].value) : [];
2458 var lw128_brtag = lw128_br.length === 1 ? lw128_br[0].tag : "";
2459 var lw128_els = lw128_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw128_br[0].value) : [];
2460 bind.checkData("S128-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw128_brtag === "A0" && lw128_els.length === 0) ? "1" : "0");
2461
2462 // 步骤 129:SEQ20-3] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2463 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2464 var sdCla129 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2465 var s129 = bind.sendApdu(sdCla129, "E2", "91", "00", "BF2B03810100", "00", "9000");
2466 bind.checkData("S129-C1 SW", "9000", s129.sw);
2467 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2468 var lw129T = BindEs10xSingleRequest.parseBerTlv(s129.resp);
2469 var lw129Ok0 = lw129T.length === 1 && lw129T[0].tag === "BF2B";
2470 var lw129_br = lw129Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw129T[0].value) : [];
2471 var lw129_brtag = lw129_br.length === 1 ? lw129_br[0].tag : "";
2472 var lw129_els = lw129_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw129_br[0].value) : [];
2473 bind.checkData("S129-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw129_brtag === "A0" && lw129_els.length === 0) ? "1" : "0");
2474
2475 // 步骤 130:SEQ20-4] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2476 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2477 var sdCla130 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2478 var s130 = bind.sendApdu(sdCla130, "E2", "91", "00", "BF2B0481020780", "00", "9000");
2479 bind.checkData("S130-C1 SW", "9000", s130.sw);
2480 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2481 var lw130T = BindEs10xSingleRequest.parseBerTlv(s130.resp);
2482 var lw130Ok0 = lw130T.length === 1 && lw130T[0].tag === "BF2B";
2483 var lw130_br = lw130Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw130T[0].value) : [];
2484 var lw130_brtag = lw130_br.length === 1 ? lw130_br[0].tag : "";
2485 var lw130_els = lw130_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw130_br[0].value) : [];
2486 bind.checkData("S130-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw130_brtag === "A0" && lw130_els.length === 0) ? "1" : "0");
2487
2488 // 步骤 131:SEQ20-5] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2489 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2490 var sdCla131 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2491 var s131 = bind.sendApdu(sdCla131, "E2", "91", "00", "BF2B0481020640", "00", "9000");
2492 bind.checkData("S131-C1 SW", "9000", s131.sw);
2493 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2494 var lw131T = BindEs10xSingleRequest.parseBerTlv(s131.resp);
2495 var lw131Ok0 = lw131T.length === 1 && lw131T[0].tag === "BF2B";
2496 var lw131_br = lw131Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw131T[0].value) : [];
2497 var lw131_brtag = lw131_br.length === 1 ? lw131_br[0].tag : "";
2498 var lw131_els = lw131_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw131_br[0].value) : [];
2499 bind.checkData("S131-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw131_brtag === "A0" && lw131_els.length === 0) ? "1" : "0");
2500
2501 // 步骤 132:SEQ20-6] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2502 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2503 var sdCla132 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2504 var s132 = bind.sendApdu(sdCla132, "E2", "91", "00", "BF2B0481020520", "00", "9000");
2505 bind.checkData("S132-C1 SW", "9000", s132.sw);
2506 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2507 var lw132T = BindEs10xSingleRequest.parseBerTlv(s132.resp);
2508 var lw132Ok0 = lw132T.length === 1 && lw132T[0].tag === "BF2B";
2509 var lw132_br = lw132Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw132T[0].value) : [];
2510 var lw132_brtag = lw132_br.length === 1 ? lw132_br[0].tag : "";
2511 var lw132_els = lw132_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw132_br[0].value) : [];
2512 bind.checkData("S132-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw132_brtag === "A0" && lw132_els.length === 0) ? "1" : "0");
2513
2514 // 步骤 133:SEQ20-7] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2515 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2516 var sdCla133 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2517 var s133 = bind.sendApdu(sdCla133, "E2", "91", "00", "BF2B0481020410", "00", "9000");
2518 bind.checkData("S133-C1 SW", "9000", s133.sw);
2519 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2520 var lw133T = BindEs10xSingleRequest.parseBerTlv(s133.resp);
2521 var lw133Ok0 = lw133T.length === 1 && lw133T[0].tag === "BF2B";
2522 var lw133_br = lw133Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw133T[0].value) : [];
2523 var lw133_brtag = lw133_br.length === 1 ? lw133_br[0].tag : "";
2524 var lw133_els = lw133_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw133_br[0].value) : [];
2525 bind.checkData("S133-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw133_brtag === "A0" && lw133_els.length === 0) ? "1" : "0");
2526
2527 // 步骤 134:SEQ20-8] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2528 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2529 var sdCla134 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2530 var s134 = bind.sendApdu(sdCla134, "E2", "91", "00", "BF2B04810206C0", "00", "9000");
2531 bind.checkData("S134-C1 SW", "9000", s134.sw);
2532 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2533 var lw134T = BindEs10xSingleRequest.parseBerTlv(s134.resp);
2534 var lw134Ok0 = lw134T.length === 1 && lw134T[0].tag === "BF2B";
2535 var lw134_br = lw134Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw134T[0].value) : [];
2536 var lw134_brtag = lw134_br.length === 1 ? lw134_br[0].tag : "";
2537 var lw134_els = lw134_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw134_br[0].value) : [];
2538 bind.checkData("S134-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw134_brtag === "A0" && lw134_els.length === 0) ? "1" : "0");
2539
2540 // 步骤 135:SEQ20-9] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2541 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2542 var sdCla135 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2543 var s135 = bind.sendApdu(sdCla135, "E2", "91", "00", "BF2B0481020430", "00", "9000");
2544 bind.checkData("S135-C1 SW", "9000", s135.sw);
2545 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2546 var lw135T = BindEs10xSingleRequest.parseBerTlv(s135.resp);
2547 var lw135Ok0 = lw135T.length === 1 && lw135T[0].tag === "BF2B";
2548 var lw135_br = lw135Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw135T[0].value) : [];
2549 var lw135_brtag = lw135_br.length === 1 ? lw135_br[0].tag : "";
2550 var lw135_els = lw135_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw135_br[0].value) : [];
2551 bind.checkData("S135-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw135_brtag === "A0" && lw135_els.length === 0) ? "1" : "0");
2552
2553 // 步骤 136:SEQ20-10] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2554 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2555 var sdCla136 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2556 var s136 = bind.sendApdu(sdCla136, "E2", "91", "00", "BF2B0481020560", "00", "9000");
2557 bind.checkData("S136-C1 SW", "9000", s136.sw);
2558 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2559 var lw136T = BindEs10xSingleRequest.parseBerTlv(s136.resp);
2560 var lw136Ok0 = lw136T.length === 1 && lw136T[0].tag === "BF2B";
2561 var lw136_br = lw136Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw136T[0].value) : [];
2562 var lw136_brtag = lw136_br.length === 1 ? lw136_br[0].tag : "";
2563 var lw136_els = lw136_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw136_br[0].value) : [];
2564 bind.checkData("S136-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw136_brtag === "A0" && lw136_els.length === 0) ? "1" : "0");
2565
2566 // 步骤 137:SEQ20-11] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_072, RQ57_072_1, RQ57_073, RQ57_074)
2567 // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
2568 var sdCla137 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
2569 var s137 = bind.sendApdu(sdCla137, "E2", "91", "00", "BF2B04810205E0", "00", "9000");
2570 bind.checkData("S137-C1 SW", "9000", s137.sw);
2571 // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
2572 var lw137T = BindEs10xSingleRequest.parseBerTlv(s137.resp);
2573 var lw137Ok0 = lw137T.length === 1 && lw137T[0].tag === "BF2B";
2574 var lw137_br = lw137Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw137T[0].value) : [];
2575 var lw137_brtag = lw137_br.length === 1 ? lw137_br[0].tag : "";
2576 var lw137_els = lw137_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw137_br[0].value) : [];
2577 bind.checkData("S137-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count", "1", (lw137_brtag === "A0" && lw137_els.length === 0) ? "1" : "0");
2578}
2579
完整 unified diff
行级差异:新增 2577 行 / 删除 2975 行(以 -man 为基准,unified 上下文 3 行)。
diff 过长,仅显示前 4000 行(共 5557 行)。
展开 diff(4000 行)
--- -man
+++ -cas
@@ -1,2977 +1,2579 @@
-// slice of Import\TestCase_SGP_23.js - cases: TC_eUICC_ES10b_RetrieveNotificationsList_01_Nominal_Retrieve_by_Sequence_Number_for_Install_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_02_Nominal_Retrieve_by_Sequence_Number_for_Enable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_03_Nominal_Retrieve_by_Sequence_Number_for_Disable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_04_Nominal_Retrieve_by_Sequence_Number_for_Delete_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_05_Nominal_Retrieve_by_Sequence_Number_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses + TC_eUICC_ES10b_RetrieveNotificationsList_06_Nominal_Retrieve_by_Sequence_Number_for_Install_PIR_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_07_Nominal_Retrieve_by_Sequence_Number_for_Disable_and_Delete_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_08_Nominal_Retrieve_by_Sequence_Number_for_Install_OtherSignedNotification_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_09_Nominal_Retrieve_by_Sequence_Number_for_Enable_and_Install_PIR_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_10_Nominal_Retrieve_Sequence_Numbers_that_are_not_present + TC_eUICC_ES10b_RetrieveNotificationsList_11_Nominal_Retrieve_by_Notification_Type_for_Install_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_12_Nominal_Retrieve_by_Notification_Type_for_Enable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_13_Nominal_Retrieve_by_Notification_Type_for_Disable_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_14_Nominal_Retrieve_by_Notification_Type_for_Delete_Notification + TC_eUICC_ES10b_RetrieveNotificationsList_15_Nominal_Retrieve_by_Notification_Type_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses + TC_eUICC_ES10b_RetrieveNotificationsList_16_Nominal_Retrieve_by_Notification_Type_for_Install_PIR_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_17_Nominal_Retrieve_by_Notification_Type_for_Disable_and_Delete_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_18_Nominal_Retrieve_by_Notification_Type_for_Install_OtherSignedNotification_and_Enable_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_19_Nominal_Retrieve_by_Notification_Type_for_Enable_and_Install_PIR_Notifications + TC_eUICC_ES10b_RetrieveNotificationsList_20_Nominal_Retrieve_by_Notification_Type_for_No_Notifications_available (extracted verbatim)
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_01_Nominal_Retrieve_by_Sequence_Number_for_Install_Notification()
-{
- Remove_All_the_Notification();
-
- tracenamestr = "Install PROFILE_OPERATIONAL1. Do not remove both the notifications. ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = NAME_OP_PROF1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "04F0";//NotificationEvent ::= BIT STRING { notificationInstall(0), notificationEnable(1), notificationDisable(2), notificationDelete(3) }
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.profileClass = "02";
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
- tracenamestr = "Retrieve by Sequence Number for Install Notification";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- tracenamestr = "DELETE PROFILE_OPERATIONAL1 ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
- curDis.TestStepStart2(stno++,"复位;");
- ResetCard();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
- var deleProfileRequest = new DeleteProfileRequest();
- deleProfileRequest.iccid = ICCID_OP_PROF1;
- deleProfileRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
-
- curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
- var proInfoListRequest = new ProfileInfoListRequest();
- proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
- proInfoListRequest.tagList = "5A4F9F70";
- proInfoListRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
-
- var proInfoListResponse = new ProfileInfoListResponse();
- proInfoListResponse.checkCardResDataFormat(respData);
-
- try
- {
- curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
- }catch(e){
- obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
- }
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_02_Nominal_Retrieve_by_Sequence_Number_for_Enable_Notification()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
-
- Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
- tracenamestr = "Retrieve by Sequence Number for Enable Notification";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- tracenamestr = "DISABLE PROFILE_OPERATIONAL1 ";
- curDis.TraceStart(sno++,tracenamestr);
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DisableProfileRequest,refreshFlag为FF;");
- var disableProRequest = new DisableProfileRequest();
- disableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
- disableProRequest.refreshFlag = BooleanValue_BerCode_True;
- disableProRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(disableProRequest.hexData,"91","00","91XX");
-
- curStrHandle.CheckData("BF3203800100", respData, "DisableProfileResponse");
-
-
- tracenamestr = "DELETE PROFILE_OPERATIONAL1 ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
- curDis.TestStepStart2(stno++,"复位;");
- ResetCard();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
- var deleProfileRequest = new DeleteProfileRequest();
- deleProfileRequest.iccid = ICCID_OP_PROF1;
- deleProfileRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
-
- curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
- var proInfoListRequest = new ProfileInfoListRequest();
- proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
- proInfoListRequest.tagList = "5A4F9F70";
- proInfoListRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
-
- var proInfoListResponse = new ProfileInfoListResponse();
- proInfoListResponse.checkCardResDataFormat(respData);
-
- try
- {
- curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
- }catch(e){
- obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_03_Nominal_Retrieve_by_Sequence_Number_for_Disable_Notification()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
- Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- tracenamestr = "Disable PROFILE_OPERATIONAL1. Do not Remove the Notification. ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DisableProfileRequest;");
- var disableProRequest = new DisableProfileRequest();
- disableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
- disableProRequest.refreshFlag = "00";
- disableProRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(disableProRequest.hexData);
-
- curStrHandle.CheckData("BF3203800100", respData, "DisableProfileResponse");
-
-
- tracenamestr = "Retrieve by Sequence Number for Disable Notification";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- tracenamestr = "DELETE PROFILE_OPERATIONAL1 ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
- curDis.TestStepStart2(stno++,"复位;");
- ResetCard();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
- var deleProfileRequest = new DeleteProfileRequest();
- deleProfileRequest.iccid = ICCID_OP_PROF1;
- deleProfileRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
-
- curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
- var proInfoListRequest = new ProfileInfoListRequest();
- proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
- proInfoListRequest.tagList = "5A4F9F70";
- proInfoListRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
-
- var proInfoListResponse = new ProfileInfoListResponse();
- proInfoListResponse.checkCardResDataFormat(respData);
-
- try
- {
- curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
- }catch(e){
- obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
- }
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_04_Nominal_Retrieve_by_Sequence_Number_for_Delete_Notification()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
- Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- tracenamestr = "Delete PROFILE_OPERATIONAL1. Do not Remove the Notification. ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
- var deleProfileRequest = new DeleteProfileRequest();
- deleProfileRequest.iccid = ICCID_OP_PROF1;
- deleProfileRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
-
- curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
- var proInfoListRequest = new ProfileInfoListRequest();
- proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
- proInfoListRequest.tagList = "5A4F9F70";
- proInfoListRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
-
- var proInfoListResponse = new ProfileInfoListResponse();
- proInfoListResponse.checkCardResDataFormat(respData);
-
- try
- {
- curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
- }catch(e){
- obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
- }
-
- tracenamestr = "Retrieve by Sequence Number for Delete Notification";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_05_Nominal_Retrieve_by_Sequence_Number_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses()
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 0;
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF2;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME2;
- Profile_load_procedure.profileName = NAME_OP_PROF2;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF2;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.profileClass = "02";
- Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
- Profile_load_procedure.mccMnc = MCC_MNC2;
-
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
- tracenamestr = "Retrieve by Sequence Number for Install Notification";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)//获取安装通知
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_06_Nominal_Retrieve_by_Sequence_Number_for_Install_PIR_and_Enable_Notifications()
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 0;
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
- tracenamestr = "初始化测试条件:Enable PROFILE_OPERATIONAL1. Do not remove the Notification.";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行EnableProfileRequest;");
- var enableProRequest = new EnableProfileRequest();
- enableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
- enableProRequest.refreshFlag = BooleanValue_BerCode_False;
- enableProRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(enableProRequest.hexData);
-
- curStrHandle.CheckData("BF3103800100", respData, "EnableProfileResponse");
-
-
- tracenamestr = "Retrieve by Sequence Number for Install (PIR) and Enable Notifications;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
-
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
-
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_07_Nominal_Retrieve_by_Sequence_Number_for_Disable_and_Delete_Notifications()
-{
- Remove_All_the_Notification();
-
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
- Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- tracenamestr = "Disable PROFILE_OPERATIONAL1. Do not remove the Notification. ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DisableProfileRequest;");
- var disableProRequest = new DisableProfileRequest();
- disableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
- disableProRequest.refreshFlag = "00";
- disableProRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(disableProRequest.hexData);
-
- curStrHandle.CheckData("BF3203800100", respData, "DisableProfileResponse");
-
-
- tracenamestr = "Delete PROFILE_OPERATIONAL1. Do not remove the Notification. ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
- var deleProfileRequest = new DeleteProfileRequest();
- deleProfileRequest.iccid = ICCID_OP_PROF1;
- deleProfileRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
-
- curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
-
-
- tracenamestr = "Retrieve by Sequence Number for Disable and Delete Notifications;";
- curDis.TraceStart(sno++,tracenamestr);
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0410",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_08_Nominal_Retrieve_by_Sequence_Number_for_Install_OtherSignedNotification_and_Enable_Notifications()
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 0;
-
- tracenamestr = "Install PROFILE_OPERATIONAL1. Remove the PIR notification, but do not remove the OtherSignedNotification.";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "04F0";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification();
-
- var NotificationLen = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement.length;
- for(var i=0;i<(NotificationLen-1);i++)
- {
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行NotificationSentRequest;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[i].seqNumber;
- Profile_load_procedure.ES10b_RemoveNotificationFromList(parameter);
- var deleteNotificationStatus=Profile_load_procedure.notificationSentResponse.deleteNotificationStatus;
- curStrHandle.CheckData("00", deleteNotificationStatus, "deleteNotificationStatus");
- }
-
-
- Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
-
- tracenamestr = "Retrieve by Sequence Number for Install (OtherSignedNotification) and Enable Notifications ;";
- curDis.TraceStart(sno++,tracenamestr);
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_09_Nominal_Retrieve_by_Sequence_Number_for_Enable_and_Install_PIR_Notifications()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
- Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF2;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME2;
- Profile_load_procedure.profileName = NAME_OP_PROF2;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF2;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.profileClass = "02";
- Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
- Profile_load_procedure.mccMnc = MCC_MNC2;
-
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
- tracenamestr = "Retrieve by Sequence Number for Enable_and_Install_PIR_Notifications;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else//
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {//
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_10_Nominal_Retrieve_Sequence_Numbers_that_are_not_present ()
-{
-
- tracenamestr = "Remove Notification";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"复位;");
- ResetCard();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification();
-
- var NotificationLen = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement.length;
- for(var i=0;i<NotificationLen;i++)
- {
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行NotificationSentRequest;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[i].seqNumber;
- Profile_load_procedure.ES10b_RemoveNotificationFromList(parameter);
- var deleteNotificationStatus=Profile_load_procedure.notificationSentResponse.deleteNotificationStatus;
- curStrHandle.CheckData("00", deleteNotificationStatus, "deleteNotificationStatus");
- }
-
-
- tracenamestr = "Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification. ";
- curDis.TraceStart(sno++,tracenamestr);
-
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("复位;");
- ResetCard();
-
- curDis.TestStepStart("读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
-
-
-
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- //Profile_load_procedure.profilePolicyRules = "02";
- Profile_load_procedure.serviceProviderName = SP_NAME1; //SP Name 1
- Profile_load_procedure.profileName = NAME_OP_PROF1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.profileClass = "02";
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
-
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
- tracenamestr = "Retrieve Sequence Numbers that are not present";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
-
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
-
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsListRequest--通过seqNumber;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].seqNumber;
- parameter = EnCodeInteger_Ber(parseInt(parameter,16)+1);
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.seqNumber,parameter);
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("复位;");
- ResetCard();
-
- curDis.TestStepStart("读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行DeleteProfileRequest;");
- var deleProfileRequest = new DeleteProfileRequest();
- deleProfileRequest.iccid = ICCID_OP_PROF1;
- deleProfileRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(deleProfileRequest.hexData);
-
- curStrHandle.CheckData("BF3303800100", respData, "DeleteProfileResponse");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行ProfileInfoListRequest,获取profile状态;");
- var proInfoListRequest = new ProfileInfoListRequest();
- proInfoListRequest.searchCriteria = new ChoiceObj(tagOfsearchCriteria_ProfileInfo.iccid,ICCID_OP_PROF1);
- proInfoListRequest.tagList = "5A4F9F70";
- proInfoListRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(proInfoListRequest.hexData);
-
-
- var proInfoListResponse = new ProfileInfoListResponse();
- proInfoListResponse.checkCardResDataFormat(respData);
-
- try
- {
- curStrHandle.CheckData("00", obj.ToHex(proInfoListResponse.profileInfoListOk.arrOfElement.length),"Profile Info number");
- }catch(e){
- obj.SubLevel(ProfileInfoListResponse_Data_Error, level_of_SubLevel.error);
- }
-
- RecoverCard();
-
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_11_Nominal_Retrieve_by_Notification_Type_for_Install_Notifications ()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Do_not_remove_both_the_Notifications();
-
- tracenamestr = "Retrieve by Notification Type for Install Notifications ;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令1,执行RetrieveNotificationsList;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- if (Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][0] == tagOfPendingNotification.profileInstallationResult)
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }
- else
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_12_Nominal_Retrieve_by_Notification_Type_for_Enable_Notification()
-{
- Remove_All_the_Notification();
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
- Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
-
- tracenamestr = "Retrieve by Notification Type for Enable Notification ";
- curDis.TraceStart(sno++,tracenamestr);
-
-
- curLogicChannel = 1;
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_13_Nominal_Retrieve_by_Notification_Type_for_Disable_Notification()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
- Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Disable_PROFILE_OPERATIONAL1_Do_not_Remove_the_Notification();
-
- tracenamestr = "Retrieve by Notification Type for Disable Notification ";
- curDis.TraceStart(sno++,tracenamestr);
-
-
- curLogicChannel = 1;
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_14_Nominal_Retrieve_by_Notification_Type_for_Delete_Notification()
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
- Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Delete_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
- tracenamestr = "Retrieve by Notification Type for Delete Notification .";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 1;
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_15_Nominal_Retrieve_by_Notification_Type_for_Two_Install_PIR_Notifications_with_different_Notification_Addresses()
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 0;
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF2;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME2;
- Profile_load_procedure.profileName = NAME_OP_PROF2;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF2;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.profileClass = "02";
- Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
- Profile_load_procedure.mccMnc = MCC_MNC2;
-
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
- tracenamestr = "Retrieve by Notification Type for Two Install (PIR) Notifications with different Notification Addresses";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_16_Nominal_Retrieve_by_Notification_Type_for_Install_PIR_and_Enable_Notifications()
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 0;
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL1 with #METADATA_OP_PROF1_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
- tracenamestr = "初始化测试条件:Enable PROFILE_OPERATIONAL1. Do not remove the Notification.";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行EnableProfileRequest;");
- var enableProRequest = new EnableProfileRequest();
- enableProRequest.profileIdentifier = new ChoiceObj(tagOfProfileIdentifier.iccid,ICCID_OP_PROF1);
- enableProRequest.refreshFlag = BooleanValue_BerCode_False;
- enableProRequest.GenHexData();
- var respData = LPAd_Transport_data_to_eUICC(enableProRequest.hexData);
-
- curStrHandle.CheckData("BF3103800100", respData, "EnableProfileResponse");
-
-
- tracenamestr = "Retrieve by Notification Type for Install (PIR) and Enable Notifications ;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_17_Nominal_Retrieve_by_Notification_Type_for_Disable_and_Delete_Notifications ()//0520 0410
-{
- Remove_All_the_Notification();
-
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
- Enable_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- Disable_PROFILE_OPERATIONAL1_Do_not_Remove_the_Notification();
-
- Delete_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0410",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
-
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0410",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0520",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_18_Nominal_Retrieve_by_Notification_Type_for_Install_OtherSignedNotification_and_Enable_Notifications()//0780 0640 ??????????????????????
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 0;
-
- tracenamestr = "Install PROFILE_OPERATIONAL1. Remove the PIR notification, but do not remove the OtherSignedNotification.";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME1;
- Profile_load_procedure.profileName = PROFILE_OPERATIONAL1_NAME1;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF1;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "04F0";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS1;
- Profile_load_procedure.mccMnc = MCC_MNC1;
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification();
-
- var NotificationLen = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement.length;
- for(var i=0;i<(NotificationLen-1);i++)//删除PIR通知
- {
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行NotificationSentRequest;");
- var parameter = Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[i].seqNumber;
- Profile_load_procedure.ES10b_RemoveNotificationFromList(parameter);
- var deleteNotificationStatus=Profile_load_procedure.notificationSentResponse.deleteNotificationStatus;
- curStrHandle.CheckData("00", deleteNotificationStatus, "deleteNotificationStatus");
- }
-
-
- Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
-
- tracenamestr = "Retrieve by Sequence Number for Install (OtherSignedNotification) and Enable Notifications ;";
- curDis.TraceStart(sno++,tracenamestr);
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ES10b_RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_19_Nominal_Retrieve_by_Notification_Type_for_Enable_and_Install_PIR_Notifications()//0640 0780
-{
- Remove_All_the_Notification();
-
- Install_PROFILE_OPERATIONAL1_Remove_both_the_Notifications();
-
- Enable_PROFILE_OPERATIONAL1_Do_not_remove_the_Notification();
-
-
- tracenamestr = "初始化测试条件:Install PROFILE_OPERATIONAL2 with #METADATA_OP_PROF2_NO_INSTALL. Do not remove the Notification;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curLogicChannel = 0;
-
- curDis.TestStepStart("eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
-
- curDis.TestStepStart("读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart("读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL2_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF2;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.serverAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行PrepareDownloadRequest;");
- Profile_load_procedure.ES10b_PrepareDownload();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行GetEuiccDataRequest(GetEID);");
- Profile_load_procedure.ES10b_GetEID();
-
- curDis.TestStepStart("读卡器向卡片发送 StoreData命令,执行BoundProfilePackage;");
- Profile_load_procedure.serviceProviderName = SP_NAME2;
- Profile_load_procedure.profileName = NAME_OP_PROF2;
- Profile_load_procedure.iconType = "01";
- Profile_load_procedure.icon = ICON_OP_PROF2;
- Profile_load_procedure.notificationConfigurationInfo = new SequenceOfElement("30");
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0] = new NotificationConfigurationInformation();
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].profileManagementOperation = "0470";
- Profile_load_procedure.notificationConfigurationInfo.arrOfElement[0].notificationAddress = TEST_DP_ADDRESS2;
- Profile_load_procedure.profileClass = "02";
- Profile_load_procedure.profileOwner = OWNER_OP_PROF2;
- Profile_load_procedure.mccMnc = MCC_MNC2;
-
- Profile_load_procedure.ES10b_LoadBoundProfilePackage();
-
-
- tracenamestr = "Retrieve by Notification Type_for Enable_and_Install_PIR_Notifications;";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[0].iccid, "ICCID");
-
- curStrHandle.CheckData("0780",Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2,Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.listNotificationResponse.notificationMetadataList.arrOfElement[1].iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- try
- {
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- try
- {
-
- curStrHandle.CheckData("0640",Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.profileManagementOperation,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS1,Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.notificationAddress,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF1, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[0][1].tbsOtherNotification.iccid, "ICCID");
-
- curStrHandle.CheckData("0780", Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.profileManagementOperation ,"profileManagementOperation");
- curStrHandle.CheckData(TEST_DP_ADDRESS2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.notificationAddress ,"notificationAddress");
- curStrHandle.CheckData(ICCID_OP_PROF2, Profile_load_procedure.retrieveNotificationsListResponse.notificationList.arrOfElement[1][1].profileInstallationResultData.notificationMetadata.iccid ,"iccid");
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
-
-
- Disable_PROFILE_OPERATIONAL1_Remove_the_Notification();
- Delete_PROFILE_OPERATIONAL1_Remove_the_Notification();
-
- RecoverCard();
-}
-
-function TC_eUICC_ES10b_RetrieveNotificationsList_20_Nominal_Retrieve_by_Notification_Type_for_No_Notifications_available ()// ?????????????????
-{
- Remove_All_the_Notification();
-
- curLogicChannel = 1;
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
-
- tracenamestr = "Retrieve by Notification Type for No Notifications available ; ";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行ListNotificationRequest;");
- Profile_load_procedure.ES10b_ListNotification("04F0");
- try
- {
-
- }catch(e){
- obj.SubLevel(Notification_Data_Error, level_of_SubLevel.error);
- }
- curStrHandle.CheckData("BF2802A000", Profile_load_procedure.listNotificationResponse.hexData, "null");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"04F0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行RetrieveNotificationsList;");
- Profile_load_procedure.ES10b_RetrieveNotificationsList();
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令3,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"00");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令4,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0780");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令5,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0640");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令6,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0520");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令7,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0410");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令8,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"06C0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令9,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0430");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令10,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"0560");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令11,执行RetrieveNotificationsList;");
- parameter=GenASN1HexData(tagOfsearchCriteria_Notifications.profileManagementOperation,"05E0");
- Profile_load_procedure.ES10b_RetrieveNotificationsList(parameter);
- curStrHandle.CheckData("BF2B02A000", Profile_load_procedure.retrieveNotificationsListResponse.hexData, "通知检查");
-
- RecoverCard();
+// Author: 卡思Cas智能体
+// Date: 20261004-141736
+// Function: (purpose 原文未由 SGP.23 该 TC 提供,corpus vacuum 登记)TC_eUICC_ES10b.RetrieveNotificationsList,Test Sequence #01-#20 Nominal (all 20 sequences),适用性 M。
+// Test points: ICH-SEQ01-IC1-K1-C1 ATR_present;ICH-SEQ01-IC1-K2-C2 FCP_Template
+// ICH-SEQ01-IC1-K2-C4 SW;ICH-SEQ01-IC1-K3-C4 SW;ICH-SEQ01-IC1-K4-C4 final SW
+// ICH-SEQ01-IC2-K1-C4 SW;ICH-SEQ01-IC2-K1-C3 CHANNEL_NUMBER extracted;ICH-SEQ01-IC2-K2-C4 SW
+// S1-C1 SW;S1-C2 响应结构匹配 #R_LIST_NOTIF_IN1_IN1_PIR:ListNotificationResponse no branch/count
+// S2-C1 SW;S2-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count
+// S2-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S3-C1 SW
+// S3-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
+// S3-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S4-C1 SW
+// S4-C2 响应结构匹配 #R_LIST_NOTIF_EN1:ListNotificationResponse notificati branch/count;S5-C1 SW
+// S5-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S5-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S6-C1 SW
+// S6-C2 响应结构匹配 #R_LIST_NOTIF_DI1:ListNotificationResponse notificati branch/count;S7-C1 SW
+// S7-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S7-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S8-C1 SW
+// S8-C2 响应结构匹配 #R_LIST_NOTIF_DE1:ListNotificationResponse notificati branch/count;S9-C1 SW
+// S9-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S9-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S10-C1 SW
+// S10-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_IN2_PIR:ListNotificationRespons branch/count;S11-C1 SW
+// S11-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
+// S11-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S12-C1 SW
+// S12-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count
+// S12-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S13-C1 SW
+// S13-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_EN1:ListNotificationResponse no branch/count;S14-C1 SW
+// S14-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
+// S14-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S15-C1 SW
+// S15-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S15-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S16-C1 SW
+// S16-C2 响应结构匹配 #R_LIST_NOTIF_DI1_DE1:ListNotificationResponse notifi branch/count;S17-C1 SW
+// S17-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S17-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S18-C1 SW
+// S18-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S18-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S19-C1 SW
+// S19-C2 响应结构匹配 #R_LIST_NOTIF_IN1_EN1:ListNotificationResponse notifi branch/count;S20-C1 SW
+// S20-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count
+// S20-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S21-C1 SW
+// S21-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S21-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S22-C1 SW
+// S22-C2 响应结构匹配 #R_LIST_NOTIF_EN1_IN2_PIR:ListNotificationResponse no branch/count;S23-C1 SW
+// S23-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count
+// S23-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S24-C1 SW
+// S24-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S24-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S25-C1 SW
+// S25-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR:ListNotificationResponse notifi branch/count;S26-C1 SW
+// S26-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
+// S26-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S27-C1 SW
+// S27-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S28-C1 SW
+// S28-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
+// S28-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S28-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S29-C1 SW
+// S29-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
+// S29-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S29-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S30-C1 SW
+// S30-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S31-C1 SW
+// S31-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
+// S31-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S31-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S32-C1 SW
+// S32-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S33-C1 SW
+// S33-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S34-C1 SW
+// S34-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S35-C1 SW
+// S35-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
+// S35-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S35-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S36-C1 SW
+// S36-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S37-C1 SW
+// S37-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S38-C1 SW
+// S38-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_IN1_PIR:RetrieveNotificationsLi branch/count
+// S38-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S38-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S39-C1 SW
+// S39-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S39-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S40-C1 SW
+// S40-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S41-C1 SW
+// S41-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S42-C1 SW
+// S42-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S43-C1 SW
+// S43-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S44-C1 SW
+// S44-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S45-C1 SW
+// S45-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S46-C1 SW
+// S46-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S47-C1 SW
+// S47-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S48-C1 SW
+// S48-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S49-C1 SW
+// S49-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count;S50-C1 SW
+// S50-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S50-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S51-C1 SW
+// S51-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S51-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S52-C1 SW
+// S52-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S53-C1 SW
+// S53-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S54-C1 SW
+// S54-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S55-C1 SW
+// S55-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S55-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S56-C1 SW
+// S56-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S57-C1 SW
+// S57-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S58-C1 SW
+// S58-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S58-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S59-C1 SW
+// S59-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S59-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S60-C1 SW
+// S60-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S60-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S61-C1 SW
+// S61-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S61-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S62-C1 SW
+// S62-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S62-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S63-C1 SW
+// S63-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S64-C1 SW
+// S64-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S65-C1 SW
+// S65-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S66-C1 SW
+// S66-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S67-C1 SW
+// S67-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S67-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S68-C1 SW
+// S68-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S69-C1 SW
+// S69-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S69-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S70-C1 SW
+// S70-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S71-C1 SW
+// S71-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S72-C1 SW
+// S72-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
+// S72-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S73-C1 SW
+// S73-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
+// S73-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S74-C1 SW
+// S74-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S75-C1 SW
+// S75-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
+// S75-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S76-C1 SW
+// S76-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S77-C1 SW
+// S77-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S78-C1 SW
+// S78-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S79-C1 SW
+// S79-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
+// S79-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S80-C1 SW
+// S80-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S81-C1 SW
+// S81-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S82-C1 SW
+// S82-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_IN2_PIR:RetrieveNotificatio branch/count
+// S82-C3 Verify both the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_ branch/count;S83-C1 SW
+// S83-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
+// S83-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S83-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S84-C1 SW
+// S84-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
+// S84-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S84-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S85-C1 SW
+// S85-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S86-C1 SW
+// S86-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count
+// S86-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S87-C1 SW
+// S87-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S87-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S88-C1 SW
+// S88-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S89-C1 SW
+// S89-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S90-C1 SW
+// S90-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
+// S90-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S90-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S91-C1 SW
+// S91-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S92-C1 SW
+// S92-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S92-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S93-C1 SW
+// S93-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR_EN1:RetrieveNotificationsLi branch/count
+// S93-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S93-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S94-C1 SW
+// S94-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count
+// S94-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S95-C1 SW
+// S95-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count
+// S95-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S96-C1 SW
+// S96-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S97-C1 SW
+// S97-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S98-C1 SW
+// S98-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S99-C1 SW
+// S99-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S99-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S100-C1 SW
+// S100-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count
+// S100-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S101-C1 SW
+// S101-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S102-C1 SW
+// S102-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1_DE1:RetrieveNotificationsListRe branch/count
+// S102-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S103-C1 SW
+// S103-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S103-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S104-C1 SW
+// S104-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count
+// S104-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S105-C1 SW
+// S105-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
+// S105-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S106-C1 SW
+// S106-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
+// S106-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S107-C1 SW
+// S107-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S108-C1 SW
+// S108-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count
+// S108-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S109-C1 SW
+// S109-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S109-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S110-C1 SW
+// S110-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S111-C1 SW
+// S111-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S112-C1 SW
+// S112-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
+// S112-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S113-C1 SW
+// S113-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S114-C1 SW
+// S114-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S114-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S115-C1 SW
+// S115-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_EN1:RetrieveNotificationsListRe branch/count
+// S115-C3 Verify both the euiccNotificationSignatures <TBS_EUICC_NOTIF branch/count;S116-C1 SW
+// S116-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
+// S116-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S116-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S117-C1 SW
+// S117-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
+// S117-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S117-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S118-C1 SW
+// S118-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S119-C1 SW
+// S119-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count
+// S119-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S120-C1 SW
+// S120-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S120-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S121-C1 SW
+// S121-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S122-C1 SW
+// S122-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S123-C1 SW
+// S123-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
+// S123-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S123-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S124-C1 SW
+// S124-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S125-C1 SW
+// S125-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count
+// S125-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count;S126-C1 SW
+// S126-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1_IN2_PIR:RetrieveNotificationsLi branch/count
+// S126-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count
+// S126-C4 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count;S127-C1 SW
+// S127-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S128-C1 SW
+// S128-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S129-C1 SW
+// S129-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S130-C1 SW
+// S130-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S131-C1 SW
+// S131-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S132-C1 SW
+// S132-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S133-C1 SW
+// S133-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S134-C1 SW
+// S134-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S135-C1 SW
+// S135-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S136-C1 SW
+// S136-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count;S137-C1 SW
+// S137-C2 响应结构匹配 #R_RETRIEVE_NOTIF_NONE:notificationList/notificationM branch/count
+// 本函数由 CaseIR 4.2.15.2.1 编译生成(fullwave-blindgen-live-70-W1-laneA2,SGP.23 v1.16 × SGP.22 v2.7):字节权威=CaseIR,非誊录黄金脚本。
+// Value-free template: every data byte is injected from CaseIR fields; no scaffold globals (see docs/speconly/compile-symbol-migration.md).
+// 适用性 M:编译期门,运行时由 harness 环境前置承担。
+function TC_eUICC_ES10b_RetrieveNotificationsList_01_20_Nominal_all_20_sequences() {
+ var bind = curBind;
+ var profileAidSession = BindEs10xProcProfileDynamic.beginSession(bind, "TC_eUICC_ES10b_RetrieveNotificationsList_01_20_Nominal_all_20_sequences");
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 1):RESET(K 语料机械展开)
+ var s138 = bind.resetAndAtr();
+ bind.checkData("ICH-SEQ01-IC1-K1-C1 ATR_present", "1", s138.atr_hex !== "" ? "1" : "0");
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 2):SELECT_MF(K 语料机械展开)
+ // FCP outer tag not materialized from clause: tag-face asserted only when corpus fixes the tag byte (e.g. TS 102 221 FCP '62').
+ var s139 = bind.sendApdu("00", "A4", "00", "04", "3F00", "00", "9000");
+ bind.checkData("ICH-SEQ01-IC1-K2-C2 FCP_Template", "1", s139.resp.length > 0 ? "1" : "0");
+ bind.checkData("ICH-SEQ01-IC1-K2-C4 SW", "9000", s139.sw);
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 3):TERMINAL_CAPABILITY_LPAd(K 语料机械展开)
+ var s140 = bind.sendApdu("80", "AA", "00", "00", "A9058100830107", null, "9000");
+ bind.checkData("ICH-SEQ01-IC1-K3-C4 SW", "9000", s140.sw);
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 4):TERMINAL_PROFILE(K 语料机械展开)
+ var steady141 = bind.runToSteadyState(function () {
+ return bind.sendTerminalProfile("FFFFFFFF7F9D00DFBF00001FE2000000C7EB0000000168005000000000000200", "9000");
+ });
+ bind.checkData("ICH-SEQ01-IC1-K4-C4 final SW", "9000", steady141.final.sw);
+
+ // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 1):MANAGE_CHANNEL_OPEN(K 语料机械展开)
+ // CHANNEL_NUMBER extraction and dynamic CLA rebinding are CasBind internal state (chaining rule; no generated-code re-implementation).
+ var s142 = bind.manageChannelOpen("9000");
+ bind.checkData("ICH-SEQ01-IC2-K1-C4 SW", "9000", s142.sw);
+ bind.checkData("ICH-SEQ01-IC2-K1-C3 CHANNEL_NUMBER extracted", "1", s142.chan !== null ? "1" : "0");
+
+ // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 2):MTD_SELECT(K 语料机械展开)
+ // CLA = bound channel (cla_rule) and <L> length binding are CasBind internal state (chaining rule; no generated-code re-implementation).
+ var s143 = bind.sendApdu(null, "A4", "04", "00", "A0000005591010FFFFFFFF8900000100", null, "9000");
+ // MTD_SELECT expected face is SW-only (K Annex C.2 open-channel procedure step 2: no FCI content assertion in corpus); no fabricated template parse.
+ bind.checkData("ICH-SEQ01-IC2-K2-C4 SW", "9000", s143.sw);
+
+ // 步骤 1:SEQ01-IC4] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla1 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s1 = bind.sendApdu(sdCla1, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S1-C1 SW", "9000", s1.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw1T = BindEs10xSingleRequest.parseBerTlv(s1.resp);
+ var lw1Ok0 = lw1T.length === 1 && lw1T[0].tag === "BF28";
+ var lw1_br = lw1Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw1T[0].value) : [];
+ var lw1_brtag = lw1_br.length === 1 ? lw1_br[0].tag : "";
+ var lw1_els = lw1_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw1_br[0].value) : [];
+ bind.checkData("S1-C2 响应结构匹配 #R_LIST_NOTIF_IN1_IN1_PIR:ListNotificationResponse no branch/count", "1", (lw1_brtag === "A0" && lw1_els.length === 2) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1 ← 步 1 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd2_NOTIF_SEQ_NO_IN1 = {ok: false, seq: ""};
+ var nd2_NOTIF_SEQ_NO_IN1T = BindEs10xSingleRequest.parseBerTlv(s1.resp);
+ if (nd2_NOTIF_SEQ_NO_IN1T.length === 1 && nd2_NOTIF_SEQ_NO_IN1T[0].tag === "BF28") {
+ var nd2_NOTIF_SEQ_NO_IN1X1 = BindEs10xSingleRequest.parseBerTlv(nd2_NOTIF_SEQ_NO_IN1T[0].value);
+ if (nd2_NOTIF_SEQ_NO_IN1X1.length === 1 && nd2_NOTIF_SEQ_NO_IN1X1[0].tag === "A0") {
+ var nd2_NOTIF_SEQ_NO_IN1X2 = BindEs10xSingleRequest.parseBerTlv(nd2_NOTIF_SEQ_NO_IN1X1[0].value);
+ var nd2_NOTIF_SEQ_NO_IN1XHIT = 0;
+ for (var nd2_NOTIF_SEQ_NO_IN1XI = 0; nd2_NOTIF_SEQ_NO_IN1XI < nd2_NOTIF_SEQ_NO_IN1X2.length; nd2_NOTIF_SEQ_NO_IN1XI++) {
+ if (nd2_NOTIF_SEQ_NO_IN1X2[nd2_NOTIF_SEQ_NO_IN1XI].tag !== "BF2F") { continue; }
+ var nd2_NOTIF_SEQ_NO_IN1XM = BindEs10xSingleRequest.parseBerTlv(nd2_NOTIF_SEQ_NO_IN1X2[nd2_NOTIF_SEQ_NO_IN1XI].value);
+ for (var nd2_NOTIF_SEQ_NO_IN1XJ = 0; nd2_NOTIF_SEQ_NO_IN1XJ < nd2_NOTIF_SEQ_NO_IN1XM.length; nd2_NOTIF_SEQ_NO_IN1XJ++) {
+ if (nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XJ].tag === "81" && nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XJ].value === "80") {
+ nd2_NOTIF_SEQ_NO_IN1XHIT += 1;
+ if (nd2_NOTIF_SEQ_NO_IN1XHIT === 1) {
+ for (var nd2_NOTIF_SEQ_NO_IN1XK = 0; nd2_NOTIF_SEQ_NO_IN1XK < nd2_NOTIF_SEQ_NO_IN1XM.length; nd2_NOTIF_SEQ_NO_IN1XK++) {
+ if (nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XK].tag === "80") { nd2_NOTIF_SEQ_NO_IN1.seq = nd2_NOTIF_SEQ_NO_IN1XM[nd2_NOTIF_SEQ_NO_IN1XK].value; nd2_NOTIF_SEQ_NO_IN1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd2_NOTIF_SEQ_NO_IN1Req = nd2_NOTIF_SEQ_NO_IN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd2_NOTIF_SEQ_NO_IN1.seq))) : "";
+ // 步骤 2:SEQ01-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1, RQ35_001_2, RQ35_003_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla2 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN1 stays in execution domain
+ var s2 = bind.sendApdu(sdCla2, "E2", "91", "00", nd2_NOTIF_SEQ_NO_IN1Req, "00", "9000");
+ bind.checkData("S2-C1 SW", "9000", s2.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1", s2.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw2T = BindEs10xSingleRequest.parseBerTlv(s2.resp);
+ var lw2Ok0 = lw2T.length === 1 && lw2T[0].tag === "BF2B";
+ var lw2_br = lw2Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw2T[0].value) : [];
+ var lw2_brtag = lw2_br.length === 1 ? lw2_br[0].tag : "";
+ var lw2_els = lw2_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw2_br[0].value) : [];
+ bind.checkData("S2-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count", "1", (lw2_brtag === "A0" && lw2_els.length === 1) ? "1" : "0");
+ bind.checkData("S2-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw2_brtag === "A0") ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 1 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd3_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
+ var nd3_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s1.resp);
+ if (nd3_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd3_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
+ var nd3_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd3_NOTIF_SEQ_NO_IN1_PIRT[0].value);
+ if (nd3_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd3_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
+ var nd3_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd3_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
+ var nd3_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
+ for (var nd3_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd3_NOTIF_SEQ_NO_IN1_PIRXI < nd3_NOTIF_SEQ_NO_IN1_PIRX2.length; nd3_NOTIF_SEQ_NO_IN1_PIRXI++) {
+ if (nd3_NOTIF_SEQ_NO_IN1_PIRX2[nd3_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
+ var nd3_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd3_NOTIF_SEQ_NO_IN1_PIRX2[nd3_NOTIF_SEQ_NO_IN1_PIRXI].value);
+ for (var nd3_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd3_NOTIF_SEQ_NO_IN1_PIRXJ < nd3_NOTIF_SEQ_NO_IN1_PIRXM.length; nd3_NOTIF_SEQ_NO_IN1_PIRXJ++) {
+ if (nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
+ nd3_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
+ if (nd3_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
+ for (var nd3_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd3_NOTIF_SEQ_NO_IN1_PIRXK < nd3_NOTIF_SEQ_NO_IN1_PIRXM.length; nd3_NOTIF_SEQ_NO_IN1_PIRXK++) {
+ if (nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd3_NOTIF_SEQ_NO_IN1_PIR.seq = nd3_NOTIF_SEQ_NO_IN1_PIRXM[nd3_NOTIF_SEQ_NO_IN1_PIRXK].value; nd3_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd3_NOTIF_SEQ_NO_IN1_PIRReq = nd3_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd3_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
+ // 步骤 3:SEQ01-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1, RQ35_001_2, RQ35_003_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla3 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
+ var s3 = bind.sendApdu(sdCla3, "E2", "91", "00", nd3_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
+ bind.checkData("S3-C1 SW", "9000", s3.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s3.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw3T = BindEs10xSingleRequest.parseBerTlv(s3.resp);
+ var lw3Ok0 = lw3T.length === 1 && lw3T[0].tag === "BF2B";
+ var lw3_br = lw3Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw3T[0].value) : [];
+ var lw3_brtag = lw3_br.length === 1 ? lw3_br[0].tag : "";
+ var lw3_els = lw3_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw3_br[0].value) : [];
+ bind.checkData("S3-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw3_brtag === "A0" && lw3_els.length === 1) ? "1" : "0");
+ bind.checkData("S3-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw3_brtag === "A0") ? "1" : "0");
+
+ // 步骤 4:SEQ02-IC5] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla4 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s4 = bind.sendApdu(sdCla4, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S4-C1 SW", "9000", s4.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw4T = BindEs10xSingleRequest.parseBerTlv(s4.resp);
+ var lw4Ok0 = lw4T.length === 1 && lw4T[0].tag === "BF28";
+ var lw4_br = lw4Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw4T[0].value) : [];
+ var lw4_brtag = lw4_br.length === 1 ? lw4_br[0].tag : "";
+ var lw4_els = lw4_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw4_br[0].value) : [];
+ bind.checkData("S4-C2 响应结构匹配 #R_LIST_NOTIF_EN1:ListNotificationResponse notificati branch/count", "1", (lw4_brtag === "A0" && lw4_els.length === 1) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 4 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd5_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
+ var nd5_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s4.resp);
+ if (nd5_NOTIF_SEQ_NO_EN1T.length === 1 && nd5_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
+ var nd5_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd5_NOTIF_SEQ_NO_EN1T[0].value);
+ if (nd5_NOTIF_SEQ_NO_EN1X1.length === 1 && nd5_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
+ var nd5_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd5_NOTIF_SEQ_NO_EN1X1[0].value);
+ var nd5_NOTIF_SEQ_NO_EN1XHIT = 0;
+ for (var nd5_NOTIF_SEQ_NO_EN1XI = 0; nd5_NOTIF_SEQ_NO_EN1XI < nd5_NOTIF_SEQ_NO_EN1X2.length; nd5_NOTIF_SEQ_NO_EN1XI++) {
+ if (nd5_NOTIF_SEQ_NO_EN1X2[nd5_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
+ var nd5_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd5_NOTIF_SEQ_NO_EN1X2[nd5_NOTIF_SEQ_NO_EN1XI].value);
+ for (var nd5_NOTIF_SEQ_NO_EN1XJ = 0; nd5_NOTIF_SEQ_NO_EN1XJ < nd5_NOTIF_SEQ_NO_EN1XM.length; nd5_NOTIF_SEQ_NO_EN1XJ++) {
+ if (nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XJ].value === "40") {
+ nd5_NOTIF_SEQ_NO_EN1XHIT += 1;
+ if (nd5_NOTIF_SEQ_NO_EN1XHIT === 1) {
+ for (var nd5_NOTIF_SEQ_NO_EN1XK = 0; nd5_NOTIF_SEQ_NO_EN1XK < nd5_NOTIF_SEQ_NO_EN1XM.length; nd5_NOTIF_SEQ_NO_EN1XK++) {
+ if (nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd5_NOTIF_SEQ_NO_EN1.seq = nd5_NOTIF_SEQ_NO_EN1XM[nd5_NOTIF_SEQ_NO_EN1XK].value; nd5_NOTIF_SEQ_NO_EN1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd5_NOTIF_SEQ_NO_EN1Req = nd5_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd5_NOTIF_SEQ_NO_EN1.seq))) : "";
+ // 步骤 5:SEQ02-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_2, RQ35_003_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla5 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
+ var s5 = bind.sendApdu(sdCla5, "E2", "91", "00", nd5_NOTIF_SEQ_NO_EN1Req, "00", "9000");
+ bind.checkData("S5-C1 SW", "9000", s5.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s5.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw5T = BindEs10xSingleRequest.parseBerTlv(s5.resp);
+ var lw5Ok0 = lw5T.length === 1 && lw5T[0].tag === "BF2B";
+ var lw5_br = lw5Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw5T[0].value) : [];
+ var lw5_brtag = lw5_br.length === 1 ? lw5_br[0].tag : "";
+ var lw5_els = lw5_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw5_br[0].value) : [];
+ bind.checkData("S5-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw5_brtag === "A0" && lw5_els.length === 1) ? "1" : "0");
+ bind.checkData("S5-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw5_brtag === "A0") ? "1" : "0");
+
+ // 步骤 6:SEQ03-IC6] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla6 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s6 = bind.sendApdu(sdCla6, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S6-C1 SW", "9000", s6.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw6T = BindEs10xSingleRequest.parseBerTlv(s6.resp);
+ var lw6Ok0 = lw6T.length === 1 && lw6T[0].tag === "BF28";
+ var lw6_br = lw6Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw6T[0].value) : [];
+ var lw6_brtag = lw6_br.length === 1 ? lw6_br[0].tag : "";
+ var lw6_els = lw6_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw6_br[0].value) : [];
+ bind.checkData("S6-C2 响应结构匹配 #R_LIST_NOTIF_DI1:ListNotificationResponse notificati branch/count", "1", (lw6_brtag === "A0" && lw6_els.length === 1) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DI1 ← 步 6 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=20 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd7_NOTIF_SEQ_NO_DI1 = {ok: false, seq: ""};
+ var nd7_NOTIF_SEQ_NO_DI1T = BindEs10xSingleRequest.parseBerTlv(s6.resp);
+ if (nd7_NOTIF_SEQ_NO_DI1T.length === 1 && nd7_NOTIF_SEQ_NO_DI1T[0].tag === "BF28") {
+ var nd7_NOTIF_SEQ_NO_DI1X1 = BindEs10xSingleRequest.parseBerTlv(nd7_NOTIF_SEQ_NO_DI1T[0].value);
+ if (nd7_NOTIF_SEQ_NO_DI1X1.length === 1 && nd7_NOTIF_SEQ_NO_DI1X1[0].tag === "A0") {
+ var nd7_NOTIF_SEQ_NO_DI1X2 = BindEs10xSingleRequest.parseBerTlv(nd7_NOTIF_SEQ_NO_DI1X1[0].value);
+ var nd7_NOTIF_SEQ_NO_DI1XHIT = 0;
+ for (var nd7_NOTIF_SEQ_NO_DI1XI = 0; nd7_NOTIF_SEQ_NO_DI1XI < nd7_NOTIF_SEQ_NO_DI1X2.length; nd7_NOTIF_SEQ_NO_DI1XI++) {
+ if (nd7_NOTIF_SEQ_NO_DI1X2[nd7_NOTIF_SEQ_NO_DI1XI].tag !== "BF2F") { continue; }
+ var nd7_NOTIF_SEQ_NO_DI1XM = BindEs10xSingleRequest.parseBerTlv(nd7_NOTIF_SEQ_NO_DI1X2[nd7_NOTIF_SEQ_NO_DI1XI].value);
+ for (var nd7_NOTIF_SEQ_NO_DI1XJ = 0; nd7_NOTIF_SEQ_NO_DI1XJ < nd7_NOTIF_SEQ_NO_DI1XM.length; nd7_NOTIF_SEQ_NO_DI1XJ++) {
+ if (nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XJ].tag === "81" && nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XJ].value === "20") {
+ nd7_NOTIF_SEQ_NO_DI1XHIT += 1;
+ if (nd7_NOTIF_SEQ_NO_DI1XHIT === 1) {
+ for (var nd7_NOTIF_SEQ_NO_DI1XK = 0; nd7_NOTIF_SEQ_NO_DI1XK < nd7_NOTIF_SEQ_NO_DI1XM.length; nd7_NOTIF_SEQ_NO_DI1XK++) {
+ if (nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XK].tag === "80") { nd7_NOTIF_SEQ_NO_DI1.seq = nd7_NOTIF_SEQ_NO_DI1XM[nd7_NOTIF_SEQ_NO_DI1XK].value; nd7_NOTIF_SEQ_NO_DI1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd7_NOTIF_SEQ_NO_DI1Req = nd7_NOTIF_SEQ_NO_DI1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd7_NOTIF_SEQ_NO_DI1.seq))) : "";
+ // 步骤 7:SEQ03-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_2, RQ35_003_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla7 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_DI1 stays in execution domain
+ var s7 = bind.sendApdu(sdCla7, "E2", "91", "00", nd7_NOTIF_SEQ_NO_DI1Req, "00", "9000");
+ bind.checkData("S7-C1 SW", "9000", s7.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DI1", s7.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw7T = BindEs10xSingleRequest.parseBerTlv(s7.resp);
+ var lw7Ok0 = lw7T.length === 1 && lw7T[0].tag === "BF2B";
+ var lw7_br = lw7Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw7T[0].value) : [];
+ var lw7_brtag = lw7_br.length === 1 ? lw7_br[0].tag : "";
+ var lw7_els = lw7_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw7_br[0].value) : [];
+ bind.checkData("S7-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw7_brtag === "A0" && lw7_els.length === 1) ? "1" : "0");
+ bind.checkData("S7-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw7_brtag === "A0") ? "1" : "0");
+
+ // 步骤 8:SEQ04-IC7] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla8 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s8 = bind.sendApdu(sdCla8, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S8-C1 SW", "9000", s8.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw8T = BindEs10xSingleRequest.parseBerTlv(s8.resp);
+ var lw8Ok0 = lw8T.length === 1 && lw8T[0].tag === "BF28";
+ var lw8_br = lw8Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw8T[0].value) : [];
+ var lw8_brtag = lw8_br.length === 1 ? lw8_br[0].tag : "";
+ var lw8_els = lw8_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw8_br[0].value) : [];
+ bind.checkData("S8-C2 响应结构匹配 #R_LIST_NOTIF_DE1:ListNotificationResponse notificati branch/count", "1", (lw8_brtag === "A0" && lw8_els.length === 1) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DE1 ← 步 8 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=10 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd9_NOTIF_SEQ_NO_DE1 = {ok: false, seq: ""};
+ var nd9_NOTIF_SEQ_NO_DE1T = BindEs10xSingleRequest.parseBerTlv(s8.resp);
+ if (nd9_NOTIF_SEQ_NO_DE1T.length === 1 && nd9_NOTIF_SEQ_NO_DE1T[0].tag === "BF28") {
+ var nd9_NOTIF_SEQ_NO_DE1X1 = BindEs10xSingleRequest.parseBerTlv(nd9_NOTIF_SEQ_NO_DE1T[0].value);
+ if (nd9_NOTIF_SEQ_NO_DE1X1.length === 1 && nd9_NOTIF_SEQ_NO_DE1X1[0].tag === "A0") {
+ var nd9_NOTIF_SEQ_NO_DE1X2 = BindEs10xSingleRequest.parseBerTlv(nd9_NOTIF_SEQ_NO_DE1X1[0].value);
+ var nd9_NOTIF_SEQ_NO_DE1XHIT = 0;
+ for (var nd9_NOTIF_SEQ_NO_DE1XI = 0; nd9_NOTIF_SEQ_NO_DE1XI < nd9_NOTIF_SEQ_NO_DE1X2.length; nd9_NOTIF_SEQ_NO_DE1XI++) {
+ if (nd9_NOTIF_SEQ_NO_DE1X2[nd9_NOTIF_SEQ_NO_DE1XI].tag !== "BF2F") { continue; }
+ var nd9_NOTIF_SEQ_NO_DE1XM = BindEs10xSingleRequest.parseBerTlv(nd9_NOTIF_SEQ_NO_DE1X2[nd9_NOTIF_SEQ_NO_DE1XI].value);
+ for (var nd9_NOTIF_SEQ_NO_DE1XJ = 0; nd9_NOTIF_SEQ_NO_DE1XJ < nd9_NOTIF_SEQ_NO_DE1XM.length; nd9_NOTIF_SEQ_NO_DE1XJ++) {
+ if (nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XJ].tag === "81" && nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XJ].value === "10") {
+ nd9_NOTIF_SEQ_NO_DE1XHIT += 1;
+ if (nd9_NOTIF_SEQ_NO_DE1XHIT === 1) {
+ for (var nd9_NOTIF_SEQ_NO_DE1XK = 0; nd9_NOTIF_SEQ_NO_DE1XK < nd9_NOTIF_SEQ_NO_DE1XM.length; nd9_NOTIF_SEQ_NO_DE1XK++) {
+ if (nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XK].tag === "80") { nd9_NOTIF_SEQ_NO_DE1.seq = nd9_NOTIF_SEQ_NO_DE1XM[nd9_NOTIF_SEQ_NO_DE1XK].value; nd9_NOTIF_SEQ_NO_DE1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd9_NOTIF_SEQ_NO_DE1Req = nd9_NOTIF_SEQ_NO_DE1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd9_NOTIF_SEQ_NO_DE1.seq))) : "";
+ // 步骤 9:SEQ04-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_2, RQ35_003_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla9 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_DE1 stays in execution domain
+ var s9 = bind.sendApdu(sdCla9, "E2", "91", "00", nd9_NOTIF_SEQ_NO_DE1Req, "00", "9000");
+ bind.checkData("S9-C1 SW", "9000", s9.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DE1", s9.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw9T = BindEs10xSingleRequest.parseBerTlv(s9.resp);
+ var lw9Ok0 = lw9T.length === 1 && lw9T[0].tag === "BF2B";
+ var lw9_br = lw9Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw9T[0].value) : [];
+ var lw9_brtag = lw9_br.length === 1 ? lw9_br[0].tag : "";
+ var lw9_els = lw9_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw9_br[0].value) : [];
+ bind.checkData("S9-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw9_brtag === "A0" && lw9_els.length === 1) ? "1" : "0");
+ bind.checkData("S9-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw9_brtag === "A0") ? "1" : "0");
+
+ // 步骤 10:SEQ05-IC5] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla10 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s10 = bind.sendApdu(sdCla10, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S10-C1 SW", "9000", s10.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw10T = BindEs10xSingleRequest.parseBerTlv(s10.resp);
+ var lw10Ok0 = lw10T.length === 1 && lw10T[0].tag === "BF28";
+ var lw10_br = lw10Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw10T[0].value) : [];
+ var lw10_brtag = lw10_br.length === 1 ? lw10_br[0].tag : "";
+ var lw10_els = lw10_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw10_br[0].value) : [];
+ bind.checkData("S10-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_IN2_PIR:ListNotificationRespons branch/count", "1", (lw10_brtag === "A0" && lw10_els.length === 2) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 10 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd11_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
+ var nd11_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s10.resp);
+ if (nd11_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd11_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
+ var nd11_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd11_NOTIF_SEQ_NO_IN1_PIRT[0].value);
+ if (nd11_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd11_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
+ var nd11_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd11_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
+ var nd11_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
+ for (var nd11_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd11_NOTIF_SEQ_NO_IN1_PIRXI < nd11_NOTIF_SEQ_NO_IN1_PIRX2.length; nd11_NOTIF_SEQ_NO_IN1_PIRXI++) {
+ if (nd11_NOTIF_SEQ_NO_IN1_PIRX2[nd11_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
+ var nd11_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd11_NOTIF_SEQ_NO_IN1_PIRX2[nd11_NOTIF_SEQ_NO_IN1_PIRXI].value);
+ for (var nd11_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd11_NOTIF_SEQ_NO_IN1_PIRXJ < nd11_NOTIF_SEQ_NO_IN1_PIRXM.length; nd11_NOTIF_SEQ_NO_IN1_PIRXJ++) {
+ if (nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
+ nd11_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
+ if (nd11_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
+ for (var nd11_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd11_NOTIF_SEQ_NO_IN1_PIRXK < nd11_NOTIF_SEQ_NO_IN1_PIRXM.length; nd11_NOTIF_SEQ_NO_IN1_PIRXK++) {
+ if (nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd11_NOTIF_SEQ_NO_IN1_PIR.seq = nd11_NOTIF_SEQ_NO_IN1_PIRXM[nd11_NOTIF_SEQ_NO_IN1_PIRXK].value; nd11_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd11_NOTIF_SEQ_NO_IN1_PIRReq = nd11_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd11_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
+ // 步骤 11:SEQ05-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla11 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
+ var s11 = bind.sendApdu(sdCla11, "E2", "91", "00", nd11_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
+ bind.checkData("S11-C1 SW", "9000", s11.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s11.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw11T = BindEs10xSingleRequest.parseBerTlv(s11.resp);
+ var lw11Ok0 = lw11T.length === 1 && lw11T[0].tag === "BF2B";
+ var lw11_br = lw11Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw11T[0].value) : [];
+ var lw11_brtag = lw11_br.length === 1 ? lw11_br[0].tag : "";
+ var lw11_els = lw11_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw11_br[0].value) : [];
+ bind.checkData("S11-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw11_brtag === "A0" && lw11_els.length === 1) ? "1" : "0");
+ bind.checkData("S11-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw11_brtag === "A0") ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN2_PIR ← 步 10 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd12_NOTIF_SEQ_NO_IN2_PIR = {ok: false, seq: ""};
+ var nd12_NOTIF_SEQ_NO_IN2_PIRT = BindEs10xSingleRequest.parseBerTlv(s10.resp);
+ if (nd12_NOTIF_SEQ_NO_IN2_PIRT.length === 1 && nd12_NOTIF_SEQ_NO_IN2_PIRT[0].tag === "BF28") {
+ var nd12_NOTIF_SEQ_NO_IN2_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd12_NOTIF_SEQ_NO_IN2_PIRT[0].value);
+ if (nd12_NOTIF_SEQ_NO_IN2_PIRX1.length === 1 && nd12_NOTIF_SEQ_NO_IN2_PIRX1[0].tag === "A0") {
+ var nd12_NOTIF_SEQ_NO_IN2_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd12_NOTIF_SEQ_NO_IN2_PIRX1[0].value);
+ var nd12_NOTIF_SEQ_NO_IN2_PIRXHIT = 0;
+ for (var nd12_NOTIF_SEQ_NO_IN2_PIRXI = 0; nd12_NOTIF_SEQ_NO_IN2_PIRXI < nd12_NOTIF_SEQ_NO_IN2_PIRX2.length; nd12_NOTIF_SEQ_NO_IN2_PIRXI++) {
+ if (nd12_NOTIF_SEQ_NO_IN2_PIRX2[nd12_NOTIF_SEQ_NO_IN2_PIRXI].tag !== "BF2F") { continue; }
+ var nd12_NOTIF_SEQ_NO_IN2_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd12_NOTIF_SEQ_NO_IN2_PIRX2[nd12_NOTIF_SEQ_NO_IN2_PIRXI].value);
+ for (var nd12_NOTIF_SEQ_NO_IN2_PIRXJ = 0; nd12_NOTIF_SEQ_NO_IN2_PIRXJ < nd12_NOTIF_SEQ_NO_IN2_PIRXM.length; nd12_NOTIF_SEQ_NO_IN2_PIRXJ++) {
+ if (nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXJ].tag === "81" && nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXJ].value === "80") {
+ nd12_NOTIF_SEQ_NO_IN2_PIRXHIT += 1;
+ if (nd12_NOTIF_SEQ_NO_IN2_PIRXHIT === 2) {
+ for (var nd12_NOTIF_SEQ_NO_IN2_PIRXK = 0; nd12_NOTIF_SEQ_NO_IN2_PIRXK < nd12_NOTIF_SEQ_NO_IN2_PIRXM.length; nd12_NOTIF_SEQ_NO_IN2_PIRXK++) {
+ if (nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXK].tag === "80") { nd12_NOTIF_SEQ_NO_IN2_PIR.seq = nd12_NOTIF_SEQ_NO_IN2_PIRXM[nd12_NOTIF_SEQ_NO_IN2_PIRXK].value; nd12_NOTIF_SEQ_NO_IN2_PIR.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd12_NOTIF_SEQ_NO_IN2_PIRReq = nd12_NOTIF_SEQ_NO_IN2_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd12_NOTIF_SEQ_NO_IN2_PIR.seq))) : "";
+ // 步骤 12:SEQ05-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla12 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN2_PIR stays in execution domain
+ var s12 = bind.sendApdu(sdCla12, "E2", "91", "00", nd12_NOTIF_SEQ_NO_IN2_PIRReq, "00", "9000");
+ bind.checkData("S12-C1 SW", "9000", s12.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN2_PIR", s12.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw12T = BindEs10xSingleRequest.parseBerTlv(s12.resp);
+ var lw12Ok0 = lw12T.length === 1 && lw12T[0].tag === "BF2B";
+ var lw12_br = lw12Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw12T[0].value) : [];
+ var lw12_brtag = lw12_br.length === 1 ? lw12_br[0].tag : "";
+ var lw12_els = lw12_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw12_br[0].value) : [];
+ bind.checkData("S12-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count", "1", (lw12_brtag === "A0" && lw12_els.length === 1) ? "1" : "0");
+ bind.checkData("S12-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw12_brtag === "A0") ? "1" : "0");
+
+ // 步骤 13:SEQ06-IC5] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla13 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s13 = bind.sendApdu(sdCla13, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S13-C1 SW", "9000", s13.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw13T = BindEs10xSingleRequest.parseBerTlv(s13.resp);
+ var lw13Ok0 = lw13T.length === 1 && lw13T[0].tag === "BF28";
+ var lw13_br = lw13Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw13T[0].value) : [];
+ var lw13_brtag = lw13_br.length === 1 ? lw13_br[0].tag : "";
+ var lw13_els = lw13_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw13_br[0].value) : [];
+ bind.checkData("S13-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR_EN1:ListNotificationResponse no branch/count", "1", (lw13_brtag === "A0" && lw13_els.length === 2) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 13 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd14_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
+ var nd14_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s13.resp);
+ if (nd14_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd14_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
+ var nd14_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd14_NOTIF_SEQ_NO_IN1_PIRT[0].value);
+ if (nd14_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd14_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
+ var nd14_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd14_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
+ var nd14_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
+ for (var nd14_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd14_NOTIF_SEQ_NO_IN1_PIRXI < nd14_NOTIF_SEQ_NO_IN1_PIRX2.length; nd14_NOTIF_SEQ_NO_IN1_PIRXI++) {
+ if (nd14_NOTIF_SEQ_NO_IN1_PIRX2[nd14_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
+ var nd14_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd14_NOTIF_SEQ_NO_IN1_PIRX2[nd14_NOTIF_SEQ_NO_IN1_PIRXI].value);
+ for (var nd14_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd14_NOTIF_SEQ_NO_IN1_PIRXJ < nd14_NOTIF_SEQ_NO_IN1_PIRXM.length; nd14_NOTIF_SEQ_NO_IN1_PIRXJ++) {
+ if (nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
+ nd14_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
+ if (nd14_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
+ for (var nd14_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd14_NOTIF_SEQ_NO_IN1_PIRXK < nd14_NOTIF_SEQ_NO_IN1_PIRXM.length; nd14_NOTIF_SEQ_NO_IN1_PIRXK++) {
+ if (nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd14_NOTIF_SEQ_NO_IN1_PIR.seq = nd14_NOTIF_SEQ_NO_IN1_PIRXM[nd14_NOTIF_SEQ_NO_IN1_PIRXK].value; nd14_NOTIF_SEQ_NO_IN1_PIR.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd14_NOTIF_SEQ_NO_IN1_PIRReq = nd14_NOTIF_SEQ_NO_IN1_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd14_NOTIF_SEQ_NO_IN1_PIR.seq))) : "";
+ // 步骤 14:SEQ06-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ25_020, RQ25_021, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla14 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN1_PIR stays in execution domain
+ var s14 = bind.sendApdu(sdCla14, "E2", "91", "00", nd14_NOTIF_SEQ_NO_IN1_PIRReq, "00", "9000");
+ bind.checkData("S14-C1 SW", "9000", s14.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1_PIR", s14.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw14T = BindEs10xSingleRequest.parseBerTlv(s14.resp);
+ var lw14Ok0 = lw14T.length === 1 && lw14T[0].tag === "BF2B";
+ var lw14_br = lw14Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw14T[0].value) : [];
+ var lw14_brtag = lw14_br.length === 1 ? lw14_br[0].tag : "";
+ var lw14_els = lw14_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw14_br[0].value) : [];
+ bind.checkData("S14-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1_PIR:RetrieveNotificationsListRe branch/count", "1", (lw14_brtag === "A0" && lw14_els.length === 1) ? "1" : "0");
+ bind.checkData("S14-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw14_brtag === "A0") ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 13 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd15_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
+ var nd15_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s13.resp);
+ if (nd15_NOTIF_SEQ_NO_EN1T.length === 1 && nd15_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
+ var nd15_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd15_NOTIF_SEQ_NO_EN1T[0].value);
+ if (nd15_NOTIF_SEQ_NO_EN1X1.length === 1 && nd15_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
+ var nd15_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd15_NOTIF_SEQ_NO_EN1X1[0].value);
+ var nd15_NOTIF_SEQ_NO_EN1XHIT = 0;
+ for (var nd15_NOTIF_SEQ_NO_EN1XI = 0; nd15_NOTIF_SEQ_NO_EN1XI < nd15_NOTIF_SEQ_NO_EN1X2.length; nd15_NOTIF_SEQ_NO_EN1XI++) {
+ if (nd15_NOTIF_SEQ_NO_EN1X2[nd15_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
+ var nd15_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd15_NOTIF_SEQ_NO_EN1X2[nd15_NOTIF_SEQ_NO_EN1XI].value);
+ for (var nd15_NOTIF_SEQ_NO_EN1XJ = 0; nd15_NOTIF_SEQ_NO_EN1XJ < nd15_NOTIF_SEQ_NO_EN1XM.length; nd15_NOTIF_SEQ_NO_EN1XJ++) {
+ if (nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XJ].value === "40") {
+ nd15_NOTIF_SEQ_NO_EN1XHIT += 1;
+ if (nd15_NOTIF_SEQ_NO_EN1XHIT === 1) {
+ for (var nd15_NOTIF_SEQ_NO_EN1XK = 0; nd15_NOTIF_SEQ_NO_EN1XK < nd15_NOTIF_SEQ_NO_EN1XM.length; nd15_NOTIF_SEQ_NO_EN1XK++) {
+ if (nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd15_NOTIF_SEQ_NO_EN1.seq = nd15_NOTIF_SEQ_NO_EN1XM[nd15_NOTIF_SEQ_NO_EN1XK].value; nd15_NOTIF_SEQ_NO_EN1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd15_NOTIF_SEQ_NO_EN1Req = nd15_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd15_NOTIF_SEQ_NO_EN1.seq))) : "";
+ // 步骤 15:SEQ06-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla15 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
+ var s15 = bind.sendApdu(sdCla15, "E2", "91", "00", nd15_NOTIF_SEQ_NO_EN1Req, "00", "9000");
+ bind.checkData("S15-C1 SW", "9000", s15.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s15.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw15T = BindEs10xSingleRequest.parseBerTlv(s15.resp);
+ var lw15Ok0 = lw15T.length === 1 && lw15T[0].tag === "BF2B";
+ var lw15_br = lw15Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw15T[0].value) : [];
+ var lw15_brtag = lw15_br.length === 1 ? lw15_br[0].tag : "";
+ var lw15_els = lw15_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw15_br[0].value) : [];
+ bind.checkData("S15-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw15_brtag === "A0" && lw15_els.length === 1) ? "1" : "0");
+ bind.checkData("S15-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw15_brtag === "A0") ? "1" : "0");
+
+ // 步骤 16:SEQ07-IC7] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla16 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s16 = bind.sendApdu(sdCla16, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S16-C1 SW", "9000", s16.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw16T = BindEs10xSingleRequest.parseBerTlv(s16.resp);
+ var lw16Ok0 = lw16T.length === 1 && lw16T[0].tag === "BF28";
+ var lw16_br = lw16Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw16T[0].value) : [];
+ var lw16_brtag = lw16_br.length === 1 ? lw16_br[0].tag : "";
+ var lw16_els = lw16_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw16_br[0].value) : [];
+ bind.checkData("S16-C2 响应结构匹配 #R_LIST_NOTIF_DI1_DE1:ListNotificationResponse notifi branch/count", "1", (lw16_brtag === "A0" && lw16_els.length === 2) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DI1 ← 步 16 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=20 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd17_NOTIF_SEQ_NO_DI1 = {ok: false, seq: ""};
+ var nd17_NOTIF_SEQ_NO_DI1T = BindEs10xSingleRequest.parseBerTlv(s16.resp);
+ if (nd17_NOTIF_SEQ_NO_DI1T.length === 1 && nd17_NOTIF_SEQ_NO_DI1T[0].tag === "BF28") {
+ var nd17_NOTIF_SEQ_NO_DI1X1 = BindEs10xSingleRequest.parseBerTlv(nd17_NOTIF_SEQ_NO_DI1T[0].value);
+ if (nd17_NOTIF_SEQ_NO_DI1X1.length === 1 && nd17_NOTIF_SEQ_NO_DI1X1[0].tag === "A0") {
+ var nd17_NOTIF_SEQ_NO_DI1X2 = BindEs10xSingleRequest.parseBerTlv(nd17_NOTIF_SEQ_NO_DI1X1[0].value);
+ var nd17_NOTIF_SEQ_NO_DI1XHIT = 0;
+ for (var nd17_NOTIF_SEQ_NO_DI1XI = 0; nd17_NOTIF_SEQ_NO_DI1XI < nd17_NOTIF_SEQ_NO_DI1X2.length; nd17_NOTIF_SEQ_NO_DI1XI++) {
+ if (nd17_NOTIF_SEQ_NO_DI1X2[nd17_NOTIF_SEQ_NO_DI1XI].tag !== "BF2F") { continue; }
+ var nd17_NOTIF_SEQ_NO_DI1XM = BindEs10xSingleRequest.parseBerTlv(nd17_NOTIF_SEQ_NO_DI1X2[nd17_NOTIF_SEQ_NO_DI1XI].value);
+ for (var nd17_NOTIF_SEQ_NO_DI1XJ = 0; nd17_NOTIF_SEQ_NO_DI1XJ < nd17_NOTIF_SEQ_NO_DI1XM.length; nd17_NOTIF_SEQ_NO_DI1XJ++) {
+ if (nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XJ].tag === "81" && nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XJ].value === "20") {
+ nd17_NOTIF_SEQ_NO_DI1XHIT += 1;
+ if (nd17_NOTIF_SEQ_NO_DI1XHIT === 1) {
+ for (var nd17_NOTIF_SEQ_NO_DI1XK = 0; nd17_NOTIF_SEQ_NO_DI1XK < nd17_NOTIF_SEQ_NO_DI1XM.length; nd17_NOTIF_SEQ_NO_DI1XK++) {
+ if (nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XK].tag === "80") { nd17_NOTIF_SEQ_NO_DI1.seq = nd17_NOTIF_SEQ_NO_DI1XM[nd17_NOTIF_SEQ_NO_DI1XK].value; nd17_NOTIF_SEQ_NO_DI1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd17_NOTIF_SEQ_NO_DI1Req = nd17_NOTIF_SEQ_NO_DI1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd17_NOTIF_SEQ_NO_DI1.seq))) : "";
+ // 步骤 17:SEQ07-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla17 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_DI1 stays in execution domain
+ var s17 = bind.sendApdu(sdCla17, "E2", "91", "00", nd17_NOTIF_SEQ_NO_DI1Req, "00", "9000");
+ bind.checkData("S17-C1 SW", "9000", s17.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DI1", s17.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw17T = BindEs10xSingleRequest.parseBerTlv(s17.resp);
+ var lw17Ok0 = lw17T.length === 1 && lw17T[0].tag === "BF2B";
+ var lw17_br = lw17Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw17T[0].value) : [];
+ var lw17_brtag = lw17_br.length === 1 ? lw17_br[0].tag : "";
+ var lw17_els = lw17_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw17_br[0].value) : [];
+ bind.checkData("S17-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DI1:RetrieveNotificationsListRespon branch/count", "1", (lw17_brtag === "A0" && lw17_els.length === 1) ? "1" : "0");
+ bind.checkData("S17-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw17_brtag === "A0") ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_DE1 ← 步 16 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=10 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd18_NOTIF_SEQ_NO_DE1 = {ok: false, seq: ""};
+ var nd18_NOTIF_SEQ_NO_DE1T = BindEs10xSingleRequest.parseBerTlv(s16.resp);
+ if (nd18_NOTIF_SEQ_NO_DE1T.length === 1 && nd18_NOTIF_SEQ_NO_DE1T[0].tag === "BF28") {
+ var nd18_NOTIF_SEQ_NO_DE1X1 = BindEs10xSingleRequest.parseBerTlv(nd18_NOTIF_SEQ_NO_DE1T[0].value);
+ if (nd18_NOTIF_SEQ_NO_DE1X1.length === 1 && nd18_NOTIF_SEQ_NO_DE1X1[0].tag === "A0") {
+ var nd18_NOTIF_SEQ_NO_DE1X2 = BindEs10xSingleRequest.parseBerTlv(nd18_NOTIF_SEQ_NO_DE1X1[0].value);
+ var nd18_NOTIF_SEQ_NO_DE1XHIT = 0;
+ for (var nd18_NOTIF_SEQ_NO_DE1XI = 0; nd18_NOTIF_SEQ_NO_DE1XI < nd18_NOTIF_SEQ_NO_DE1X2.length; nd18_NOTIF_SEQ_NO_DE1XI++) {
+ if (nd18_NOTIF_SEQ_NO_DE1X2[nd18_NOTIF_SEQ_NO_DE1XI].tag !== "BF2F") { continue; }
+ var nd18_NOTIF_SEQ_NO_DE1XM = BindEs10xSingleRequest.parseBerTlv(nd18_NOTIF_SEQ_NO_DE1X2[nd18_NOTIF_SEQ_NO_DE1XI].value);
+ for (var nd18_NOTIF_SEQ_NO_DE1XJ = 0; nd18_NOTIF_SEQ_NO_DE1XJ < nd18_NOTIF_SEQ_NO_DE1XM.length; nd18_NOTIF_SEQ_NO_DE1XJ++) {
+ if (nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XJ].tag === "81" && nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XJ].value === "10") {
+ nd18_NOTIF_SEQ_NO_DE1XHIT += 1;
+ if (nd18_NOTIF_SEQ_NO_DE1XHIT === 1) {
+ for (var nd18_NOTIF_SEQ_NO_DE1XK = 0; nd18_NOTIF_SEQ_NO_DE1XK < nd18_NOTIF_SEQ_NO_DE1XM.length; nd18_NOTIF_SEQ_NO_DE1XK++) {
+ if (nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XK].tag === "80") { nd18_NOTIF_SEQ_NO_DE1.seq = nd18_NOTIF_SEQ_NO_DE1XM[nd18_NOTIF_SEQ_NO_DE1XK].value; nd18_NOTIF_SEQ_NO_DE1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd18_NOTIF_SEQ_NO_DE1Req = nd18_NOTIF_SEQ_NO_DE1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd18_NOTIF_SEQ_NO_DE1.seq))) : "";
+ // 步骤 18:SEQ07-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla18 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_DE1 stays in execution domain
+ var s18 = bind.sendApdu(sdCla18, "E2", "91", "00", nd18_NOTIF_SEQ_NO_DE1Req, "00", "9000");
+ bind.checkData("S18-C1 SW", "9000", s18.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_DE1", s18.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw18T = BindEs10xSingleRequest.parseBerTlv(s18.resp);
+ var lw18Ok0 = lw18T.length === 1 && lw18T[0].tag === "BF2B";
+ var lw18_br = lw18Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw18T[0].value) : [];
+ var lw18_brtag = lw18_br.length === 1 ? lw18_br[0].tag : "";
+ var lw18_els = lw18_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw18_br[0].value) : [];
+ bind.checkData("S18-C2 响应结构匹配 #R_RETRIEVE_NOTIF_DE1:RetrieveNotificationsListRespon branch/count", "1", (lw18_brtag === "A0" && lw18_els.length === 1) ? "1" : "0");
+ bind.checkData("S18-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw18_brtag === "A0") ? "1" : "0");
+
+ // 步骤 19:SEQ08-IC5] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla19 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s19 = bind.sendApdu(sdCla19, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S19-C1 SW", "9000", s19.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw19T = BindEs10xSingleRequest.parseBerTlv(s19.resp);
+ var lw19Ok0 = lw19T.length === 1 && lw19T[0].tag === "BF28";
+ var lw19_br = lw19Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw19T[0].value) : [];
+ var lw19_brtag = lw19_br.length === 1 ? lw19_br[0].tag : "";
+ var lw19_els = lw19_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw19_br[0].value) : [];
+ bind.checkData("S19-C2 响应结构匹配 #R_LIST_NOTIF_IN1_EN1:ListNotificationResponse notifi branch/count", "1", (lw19_brtag === "A0" && lw19_els.length === 2) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1 ← 步 19 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd20_NOTIF_SEQ_NO_IN1 = {ok: false, seq: ""};
+ var nd20_NOTIF_SEQ_NO_IN1T = BindEs10xSingleRequest.parseBerTlv(s19.resp);
+ if (nd20_NOTIF_SEQ_NO_IN1T.length === 1 && nd20_NOTIF_SEQ_NO_IN1T[0].tag === "BF28") {
+ var nd20_NOTIF_SEQ_NO_IN1X1 = BindEs10xSingleRequest.parseBerTlv(nd20_NOTIF_SEQ_NO_IN1T[0].value);
+ if (nd20_NOTIF_SEQ_NO_IN1X1.length === 1 && nd20_NOTIF_SEQ_NO_IN1X1[0].tag === "A0") {
+ var nd20_NOTIF_SEQ_NO_IN1X2 = BindEs10xSingleRequest.parseBerTlv(nd20_NOTIF_SEQ_NO_IN1X1[0].value);
+ var nd20_NOTIF_SEQ_NO_IN1XHIT = 0;
+ for (var nd20_NOTIF_SEQ_NO_IN1XI = 0; nd20_NOTIF_SEQ_NO_IN1XI < nd20_NOTIF_SEQ_NO_IN1X2.length; nd20_NOTIF_SEQ_NO_IN1XI++) {
+ if (nd20_NOTIF_SEQ_NO_IN1X2[nd20_NOTIF_SEQ_NO_IN1XI].tag !== "BF2F") { continue; }
+ var nd20_NOTIF_SEQ_NO_IN1XM = BindEs10xSingleRequest.parseBerTlv(nd20_NOTIF_SEQ_NO_IN1X2[nd20_NOTIF_SEQ_NO_IN1XI].value);
+ for (var nd20_NOTIF_SEQ_NO_IN1XJ = 0; nd20_NOTIF_SEQ_NO_IN1XJ < nd20_NOTIF_SEQ_NO_IN1XM.length; nd20_NOTIF_SEQ_NO_IN1XJ++) {
+ if (nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XJ].tag === "81" && nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XJ].value === "80") {
+ nd20_NOTIF_SEQ_NO_IN1XHIT += 1;
+ if (nd20_NOTIF_SEQ_NO_IN1XHIT === 1) {
+ for (var nd20_NOTIF_SEQ_NO_IN1XK = 0; nd20_NOTIF_SEQ_NO_IN1XK < nd20_NOTIF_SEQ_NO_IN1XM.length; nd20_NOTIF_SEQ_NO_IN1XK++) {
+ if (nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XK].tag === "80") { nd20_NOTIF_SEQ_NO_IN1.seq = nd20_NOTIF_SEQ_NO_IN1XM[nd20_NOTIF_SEQ_NO_IN1XK].value; nd20_NOTIF_SEQ_NO_IN1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd20_NOTIF_SEQ_NO_IN1Req = nd20_NOTIF_SEQ_NO_IN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd20_NOTIF_SEQ_NO_IN1.seq))) : "";
+ // 步骤 20:SEQ08-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035, RQ35_001_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla20 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN1 stays in execution domain
+ var s20 = bind.sendApdu(sdCla20, "E2", "91", "00", nd20_NOTIF_SEQ_NO_IN1Req, "00", "9000");
+ bind.checkData("S20-C1 SW", "9000", s20.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN1", s20.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw20T = BindEs10xSingleRequest.parseBerTlv(s20.resp);
+ var lw20Ok0 = lw20T.length === 1 && lw20T[0].tag === "BF2B";
+ var lw20_br = lw20Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw20T[0].value) : [];
+ var lw20_brtag = lw20_br.length === 1 ? lw20_br[0].tag : "";
+ var lw20_els = lw20_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw20_br[0].value) : [];
+ bind.checkData("S20-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN1:RetrieveNotificationsListRespon branch/count", "1", (lw20_brtag === "A0" && lw20_els.length === 1) ? "1" : "0");
+ bind.checkData("S20-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw20_brtag === "A0") ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 19 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd21_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
+ var nd21_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s19.resp);
+ if (nd21_NOTIF_SEQ_NO_EN1T.length === 1 && nd21_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
+ var nd21_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd21_NOTIF_SEQ_NO_EN1T[0].value);
+ if (nd21_NOTIF_SEQ_NO_EN1X1.length === 1 && nd21_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
+ var nd21_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd21_NOTIF_SEQ_NO_EN1X1[0].value);
+ var nd21_NOTIF_SEQ_NO_EN1XHIT = 0;
+ for (var nd21_NOTIF_SEQ_NO_EN1XI = 0; nd21_NOTIF_SEQ_NO_EN1XI < nd21_NOTIF_SEQ_NO_EN1X2.length; nd21_NOTIF_SEQ_NO_EN1XI++) {
+ if (nd21_NOTIF_SEQ_NO_EN1X2[nd21_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
+ var nd21_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd21_NOTIF_SEQ_NO_EN1X2[nd21_NOTIF_SEQ_NO_EN1XI].value);
+ for (var nd21_NOTIF_SEQ_NO_EN1XJ = 0; nd21_NOTIF_SEQ_NO_EN1XJ < nd21_NOTIF_SEQ_NO_EN1XM.length; nd21_NOTIF_SEQ_NO_EN1XJ++) {
+ if (nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XJ].value === "40") {
+ nd21_NOTIF_SEQ_NO_EN1XHIT += 1;
+ if (nd21_NOTIF_SEQ_NO_EN1XHIT === 1) {
+ for (var nd21_NOTIF_SEQ_NO_EN1XK = 0; nd21_NOTIF_SEQ_NO_EN1XK < nd21_NOTIF_SEQ_NO_EN1XM.length; nd21_NOTIF_SEQ_NO_EN1XK++) {
+ if (nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd21_NOTIF_SEQ_NO_EN1.seq = nd21_NOTIF_SEQ_NO_EN1XM[nd21_NOTIF_SEQ_NO_EN1XK].value; nd21_NOTIF_SEQ_NO_EN1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd21_NOTIF_SEQ_NO_EN1Req = nd21_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd21_NOTIF_SEQ_NO_EN1.seq))) : "";
+ // 步骤 21:SEQ08-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla21 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
+ var s21 = bind.sendApdu(sdCla21, "E2", "91", "00", nd21_NOTIF_SEQ_NO_EN1Req, "00", "9000");
+ bind.checkData("S21-C1 SW", "9000", s21.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s21.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw21T = BindEs10xSingleRequest.parseBerTlv(s21.resp);
+ var lw21Ok0 = lw21T.length === 1 && lw21T[0].tag === "BF2B";
+ var lw21_br = lw21Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw21T[0].value) : [];
+ var lw21_brtag = lw21_br.length === 1 ? lw21_br[0].tag : "";
+ var lw21_els = lw21_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw21_br[0].value) : [];
+ bind.checkData("S21-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw21_brtag === "A0" && lw21_els.length === 1) ? "1" : "0");
+ bind.checkData("S21-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw21_brtag === "A0") ? "1" : "0");
+
+ // 步骤 22:SEQ09-IC6] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla22 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s22 = bind.sendApdu(sdCla22, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S22-C1 SW", "9000", s22.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw22T = BindEs10xSingleRequest.parseBerTlv(s22.resp);
+ var lw22Ok0 = lw22T.length === 1 && lw22T[0].tag === "BF28";
+ var lw22_br = lw22Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw22T[0].value) : [];
+ var lw22_brtag = lw22_br.length === 1 ? lw22_br[0].tag : "";
+ var lw22_els = lw22_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw22_br[0].value) : [];
+ bind.checkData("S22-C2 响应结构匹配 #R_LIST_NOTIF_EN1_IN2_PIR:ListNotificationResponse no branch/count", "1", (lw22_brtag === "A0" && lw22_els.length === 2) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN2_PIR ← 步 22 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd23_NOTIF_SEQ_NO_IN2_PIR = {ok: false, seq: ""};
+ var nd23_NOTIF_SEQ_NO_IN2_PIRT = BindEs10xSingleRequest.parseBerTlv(s22.resp);
+ if (nd23_NOTIF_SEQ_NO_IN2_PIRT.length === 1 && nd23_NOTIF_SEQ_NO_IN2_PIRT[0].tag === "BF28") {
+ var nd23_NOTIF_SEQ_NO_IN2_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd23_NOTIF_SEQ_NO_IN2_PIRT[0].value);
+ if (nd23_NOTIF_SEQ_NO_IN2_PIRX1.length === 1 && nd23_NOTIF_SEQ_NO_IN2_PIRX1[0].tag === "A0") {
+ var nd23_NOTIF_SEQ_NO_IN2_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd23_NOTIF_SEQ_NO_IN2_PIRX1[0].value);
+ var nd23_NOTIF_SEQ_NO_IN2_PIRXHIT = 0;
+ for (var nd23_NOTIF_SEQ_NO_IN2_PIRXI = 0; nd23_NOTIF_SEQ_NO_IN2_PIRXI < nd23_NOTIF_SEQ_NO_IN2_PIRX2.length; nd23_NOTIF_SEQ_NO_IN2_PIRXI++) {
+ if (nd23_NOTIF_SEQ_NO_IN2_PIRX2[nd23_NOTIF_SEQ_NO_IN2_PIRXI].tag !== "BF2F") { continue; }
+ var nd23_NOTIF_SEQ_NO_IN2_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd23_NOTIF_SEQ_NO_IN2_PIRX2[nd23_NOTIF_SEQ_NO_IN2_PIRXI].value);
+ for (var nd23_NOTIF_SEQ_NO_IN2_PIRXJ = 0; nd23_NOTIF_SEQ_NO_IN2_PIRXJ < nd23_NOTIF_SEQ_NO_IN2_PIRXM.length; nd23_NOTIF_SEQ_NO_IN2_PIRXJ++) {
+ if (nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXJ].tag === "81" && nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXJ].value === "80") {
+ nd23_NOTIF_SEQ_NO_IN2_PIRXHIT += 1;
+ if (nd23_NOTIF_SEQ_NO_IN2_PIRXHIT === 2) {
+ for (var nd23_NOTIF_SEQ_NO_IN2_PIRXK = 0; nd23_NOTIF_SEQ_NO_IN2_PIRXK < nd23_NOTIF_SEQ_NO_IN2_PIRXM.length; nd23_NOTIF_SEQ_NO_IN2_PIRXK++) {
+ if (nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXK].tag === "80") { nd23_NOTIF_SEQ_NO_IN2_PIR.seq = nd23_NOTIF_SEQ_NO_IN2_PIRXM[nd23_NOTIF_SEQ_NO_IN2_PIRXK].value; nd23_NOTIF_SEQ_NO_IN2_PIR.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd23_NOTIF_SEQ_NO_IN2_PIRReq = nd23_NOTIF_SEQ_NO_IN2_PIR.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd23_NOTIF_SEQ_NO_IN2_PIR.seq))) : "";
+ // 步骤 23:SEQ09-1] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_071_3, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ26_034, RQ26_035, RQ31_174, RQ35_001_1)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla23 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_IN2_PIR stays in execution domain
+ var s23 = bind.sendApdu(sdCla23, "E2", "91", "00", nd23_NOTIF_SEQ_NO_IN2_PIRReq, "00", "9000");
+ bind.checkData("S23-C1 SW", "9000", s23.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_IN2_PIR", s23.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw23T = BindEs10xSingleRequest.parseBerTlv(s23.resp);
+ var lw23Ok0 = lw23T.length === 1 && lw23T[0].tag === "BF2B";
+ var lw23_br = lw23Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw23T[0].value) : [];
+ var lw23_brtag = lw23_br.length === 1 ? lw23_br[0].tag : "";
+ var lw23_els = lw23_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw23_br[0].value) : [];
+ bind.checkData("S23-C2 响应结构匹配 #R_RETRIEVE_NOTIF_IN2_PIR:RetrieveNotificationsListRe branch/count", "1", (lw23_brtag === "A0" && lw23_els.length === 1) ? "1" : "0");
+ bind.checkData("S23-C3 Verify the euiccSignPIR <EUICC_SIGN_PIR> using the #PK_EUICC branch/count", "1", (lw23_brtag === "A0") ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_EN1 ← 步 22 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=40 第 1 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd24_NOTIF_SEQ_NO_EN1 = {ok: false, seq: ""};
+ var nd24_NOTIF_SEQ_NO_EN1T = BindEs10xSingleRequest.parseBerTlv(s22.resp);
+ if (nd24_NOTIF_SEQ_NO_EN1T.length === 1 && nd24_NOTIF_SEQ_NO_EN1T[0].tag === "BF28") {
+ var nd24_NOTIF_SEQ_NO_EN1X1 = BindEs10xSingleRequest.parseBerTlv(nd24_NOTIF_SEQ_NO_EN1T[0].value);
+ if (nd24_NOTIF_SEQ_NO_EN1X1.length === 1 && nd24_NOTIF_SEQ_NO_EN1X1[0].tag === "A0") {
+ var nd24_NOTIF_SEQ_NO_EN1X2 = BindEs10xSingleRequest.parseBerTlv(nd24_NOTIF_SEQ_NO_EN1X1[0].value);
+ var nd24_NOTIF_SEQ_NO_EN1XHIT = 0;
+ for (var nd24_NOTIF_SEQ_NO_EN1XI = 0; nd24_NOTIF_SEQ_NO_EN1XI < nd24_NOTIF_SEQ_NO_EN1X2.length; nd24_NOTIF_SEQ_NO_EN1XI++) {
+ if (nd24_NOTIF_SEQ_NO_EN1X2[nd24_NOTIF_SEQ_NO_EN1XI].tag !== "BF2F") { continue; }
+ var nd24_NOTIF_SEQ_NO_EN1XM = BindEs10xSingleRequest.parseBerTlv(nd24_NOTIF_SEQ_NO_EN1X2[nd24_NOTIF_SEQ_NO_EN1XI].value);
+ for (var nd24_NOTIF_SEQ_NO_EN1XJ = 0; nd24_NOTIF_SEQ_NO_EN1XJ < nd24_NOTIF_SEQ_NO_EN1XM.length; nd24_NOTIF_SEQ_NO_EN1XJ++) {
+ if (nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XJ].tag === "81" && nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XJ].value === "40") {
+ nd24_NOTIF_SEQ_NO_EN1XHIT += 1;
+ if (nd24_NOTIF_SEQ_NO_EN1XHIT === 1) {
+ for (var nd24_NOTIF_SEQ_NO_EN1XK = 0; nd24_NOTIF_SEQ_NO_EN1XK < nd24_NOTIF_SEQ_NO_EN1XM.length; nd24_NOTIF_SEQ_NO_EN1XK++) {
+ if (nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XK].tag === "80") { nd24_NOTIF_SEQ_NO_EN1.seq = nd24_NOTIF_SEQ_NO_EN1XM[nd24_NOTIF_SEQ_NO_EN1XK].value; nd24_NOTIF_SEQ_NO_EN1.ok = true; }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ var nd24_NOTIF_SEQ_NO_EN1Req = nd24_NOTIF_SEQ_NO_EN1.ok ? BindEs10xSingleRequest.buildTlv("BF2B", BindEs10xSingleRequest.buildTlv("A0", BindEs10xSingleRequest.buildTlv("80", nd24_NOTIF_SEQ_NO_EN1.seq))) : "";
+ // 步骤 24:SEQ09-2] MTD_STORE_DATA(tc_step;REQ: RQ57_071, RQ57_071_1, RQ57_071_2, RQ57_072, RQ57_072_1, RQ57_072_2, RQ57_074, RQ57_075, RQ57_076, RQ26_034, RQ26_035)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla24 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ // runtime-bound payload: NOTIF_SEQ_NO_EN1 stays in execution domain
+ var s24 = bind.sendApdu(sdCla24, "E2", "91", "00", nd24_NOTIF_SEQ_NO_EN1Req, "00", "9000");
+ bind.checkData("S24-C1 SW", "9000", s24.sw);
+ BindEs10xProcProfileDynamic.assertBoundPayload(bind, "NOTIF_SEQ_NO_EN1", s24.cmd, profileAidSession);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw24T = BindEs10xSingleRequest.parseBerTlv(s24.resp);
+ var lw24Ok0 = lw24T.length === 1 && lw24T[0].tag === "BF2B";
+ var lw24_br = lw24Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw24T[0].value) : [];
+ var lw24_brtag = lw24_br.length === 1 ? lw24_br[0].tag : "";
+ var lw24_els = lw24_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw24_br[0].value) : [];
+ bind.checkData("S24-C2 响应结构匹配 #R_RETRIEVE_NOTIF_EN1:RetrieveNotificationsListRespon branch/count", "1", (lw24_brtag === "A0" && lw24_els.length === 1) ? "1" : "0");
+ bind.checkData("S24-C3 Verify the euiccNotificationSignature <TBS_EUICC_NOTIF_SIG> branch/count", "1", (lw24_brtag === "A0") ? "1" : "0");
+
+ // 步骤 25:SEQ10-IC4] MTD_STORE_DATA(tc_step)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla25 = s142.chan !== null ? (s142.chan <= 3 ? 128 + s142.chan : 188 + s142.chan).toString(16).toUpperCase() : null;
+ var s25 = bind.sendApdu(sdCla25, "E2", "91", "00", "BF2804810204F0", "00", "9000");
+ bind.checkData("S25-C1 SW", "9000", s25.sw);
+ // notification-list 响应面(TC_eUICC_ES10b.RetrieveNotificationsList,SGP.22 §5.7.9 结构 + vendor ABI 分支锚;断言参数经 spec_pattern 子句注入):
+ var lw25T = BindEs10xSingleRequest.parseBerTlv(s25.resp);
+ var lw25Ok0 = lw25T.length === 1 && lw25T[0].tag === "BF28";
+ var lw25_br = lw25Ok0 ? BindEs10xSingleRequest.parseBerTlv(lw25T[0].value) : [];
+ var lw25_brtag = lw25_br.length === 1 ? lw25_br[0].tag : "";
+ var lw25_els = lw25_brtag === "A0" ? BindEs10xSingleRequest.parseBerTlv(lw25_br[0].value) : [];
+ bind.checkData("S25-C2 响应结构匹配 #R_LIST_NOTIF_IN1_PIR:ListNotificationResponse notifi branch/count", "1", (lw25_brtag === "A0" && lw25_els.length === 1) ? "1" : "0");
+
+ // notif_seq 运行时绑定(B-6 缺口④):NOTIF_SEQ_NO_IN1_PIR ← 步 25 ListNotification 响应 BF28→A0→BF2F 元素 op[1]=80 第 2 命中的 seqNumber[0](AUTOMATIC TAGS 机械链)
+ var nd26_NOTIF_SEQ_NO_IN1_PIR = {ok: false, seq: ""};
+ var nd26_NOTIF_SEQ_NO_IN1_PIRT = BindEs10xSingleRequest.parseBerTlv(s25.resp);
+ if (nd26_NOTIF_SEQ_NO_IN1_PIRT.length === 1 && nd26_NOTIF_SEQ_NO_IN1_PIRT[0].tag === "BF28") {
+ var nd26_NOTIF_SEQ_NO_IN1_PIRX1 = BindEs10xSingleRequest.parseBerTlv(nd26_NOTIF_SEQ_NO_IN1_PIRT[0].value);
+ if (nd26_NOTIF_SEQ_NO_IN1_PIRX1.length === 1 && nd26_NOTIF_SEQ_NO_IN1_PIRX1[0].tag === "A0") {
+ var nd26_NOTIF_SEQ_NO_IN1_PIRX2 = BindEs10xSingleRequest.parseBerTlv(nd26_NOTIF_SEQ_NO_IN1_PIRX1[0].value);
+ var nd26_NOTIF_SEQ_NO_IN1_PIRXHIT = 0;
+ for (var nd26_NOTIF_SEQ_NO_IN1_PIRXI = 0; nd26_NOTIF_SEQ_NO_IN1_PIRXI < nd26_NOTIF_SEQ_NO_IN1_PIRX2.length; nd26_NOTIF_SEQ_NO_IN1_PIRXI++) {
+ if (nd26_NOTIF_SEQ_NO_IN1_PIRX2[nd26_NOTIF_SEQ_NO_IN1_PIRXI].tag !== "BF2F") { continue; }
+ var nd26_NOTIF_SEQ_NO_IN1_PIRXM = BindEs10xSingleRequest.parseBerTlv(nd26_NOTIF_SEQ_NO_IN1_PIRX2[nd26_NOTIF_SEQ_NO_IN1_PIRXI].value);
+ for (var nd26_NOTIF_SEQ_NO_IN1_PIRXJ = 0; nd26_NOTIF_SEQ_NO_IN1_PIRXJ < nd26_NOTIF_SEQ_NO_IN1_PIRXM.length; nd26_NOTIF_SEQ_NO_IN1_PIRXJ++) {
+ if (nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXJ].tag === "81" && nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXJ].value === "80") {
+ nd26_NOTIF_SEQ_NO_IN1_PIRXHIT += 1;
+ if (nd26_NOTIF_SEQ_NO_IN1_PIRXHIT === 2) {
+ for (var nd26_NOTIF_SEQ_NO_IN1_PIRXK = 0; nd26_NOTIF_SEQ_NO_IN1_PIRXK < nd26_NOTIF_SEQ_NO_IN1_PIRXM.length; nd26_NOTIF_SEQ_NO_IN1_PIRXK++) {
+ if (nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXK].tag === "80") { nd26_NOTIF_SEQ_NO_IN1_PIR.seq = nd26_NOTIF_SEQ_NO_IN1_PIRXM[nd26_NOTIF_SEQ_NO_IN1_PIRXK].value; nd26_NOTIF_SEQ_NO_IN1_PIR.ok = true; }