ui: rename the Phone simulator tab to Simulator and the eSIM pill to eSIM LPA (v3.5.12)

- Top-level tab label "Phone simulator" -> "Simulator" (RU "Симулятор");
  the DOM ids stay tab-phone / phone-sub-*.
- The eSIM pill inside the Simulator tab is now "eSIM LPA" (EN/RU),
  matching the section's ES10/LPA scope; the panel id stays phone-sub-esim.
- Documentation updated: help EN/RU (section 8 Simulator, list of the four
  pills including Test script, tab lists and cross-references),
  README/README_RUS (tab lists, Simulator section, eSIM LPA), AGENTS
  repo/root.
- Test titles updated; version 3.5.12; sw cache simple-v265.

579 frontend / 467 Python green.
This commit is contained in:
2026-09-27 01:33:22 +03:00
parent 722e237ea4
commit d1c6a9c27a
11 changed files with 37 additions and 37 deletions
+1 -1
View File
@@ -233,7 +233,7 @@ test('the chip view groups the sections into a grid', () => {
assert.match(fn, /esimChipSectionRows/);
});
test('the eSIM pill is wired into the Phone simulator tab', () => {
test('the eSIM LPA pill is wired into the Simulator tab', () => {
assert.ok(html.includes('data-phone-sub="esim"'));
assert.ok(html.includes('id="phone-sub-esim"'));
assert.ok(html.includes("'phone', 'tr', 'esim'"));
+4 -4
View File
@@ -150,12 +150,12 @@ test('the document and its inline script are complete', () => {
assert.ok(inline[1].includes('function cApduSwitchSubtab'), 'key function missing');
});
test('profiler and phone simulator are top-level tab contents', () => {
test('profiler and simulator are top-level tab contents', () => {
assert.ok(html.includes('id="tab-profiler" class="tab-content hidden"'));
assert.ok(html.includes('id="tab-phone" class="tab-content hidden"'));
});
test('phone simulator has Phone / TR Config pills', () => {
test('simulator has Phone / TR Config pills', () => {
assert.match(html, /data-phone-sub="phone" onclick="phoneSwitchSubtab\('phone'\)"/);
assert.match(html, /data-phone-sub="tr" onclick="phoneSwitchSubtab\('tr'\)"/);
assert.ok(html.includes('id="phone-sub-phone"'));
@@ -267,7 +267,7 @@ test('every help anchor used by the UI exists in help.html', () => {
assert.ok(html.includes("? 'scp81-scripts' : 'scp81-listener'"));
});
test('phone simulator has the network-simulation fieldset', () => {
test('simulator has the network-simulation fieldset', () => {
assert.ok(html.includes('data-l10n="Network simulation"'));
for (const s of ['cold_boot', 'attach_eps', 'attach_2g', 'service_lost',
'limited_service', 'roaming_denied', 'churn', 'sms_received',
@@ -283,7 +283,7 @@ test('phone simulator has the network-simulation fieldset', () => {
assert.match(html, /data-needs="card" onclick="netSimRun\('service_lost'\)"/);
});
test('phone simulator action buttons are green and the TP status sits below them', () => {
test('simulator action buttons are green and the TP status sits below them', () => {
assert.match(html, /id="tp-send-btn"[^>]*bg-emerald-600/);
assert.match(html, /id="pli-status-btn"[^>]*bg-emerald-600/);
// #tp-status is outside the button row (the row's </div> comes after
+1 -1
View File
@@ -117,7 +117,7 @@ test('testCommandOptions covers the proactive names and keeps custom values', ()
assert.ok(custom.some(o => o.v === '0x74'));
});
test('the Phone simulator hosts the Test script pill and its wiring', () => {
test('the Simulator hosts the Test script pill and its wiring', () => {
assert.match(html, /data-phone-sub="test"[^>]*data-l10n="Test script"/);
assert.match(html, /id="phone-sub-test"/);
assert.match(html, /\['phone', 'tr', 'esim', 'test'\]/);