Push Tracker
ria-ran--sim-drop/tests
A ashkan@beigi.net b88fe4eed1 Add real SGP.22 SAIP profile generation (optional)
New server/saip_profile.py encodes a DER ProfileElement sequence (ProfileHeader
with ICCID + Milenage AKA parameters carrying Ki/OPc) using asn1tools against
the official PE_Definitions SAIP ASN.1 schema. It locates the schema from an
installed osmocom pySim (or SAIP_ASN_PATH) via find_spec WITHOUT importing
pySim's Python package, so it avoids the pyscard/smpp card-reader stack — the
only runtime dep is asn1tools.

Selectable via profile.format ("v2" default | "saip"); the app falls back to
profile-package-v2 with a warning when SAIP prerequisites are absent. IMSI and
other EFs (USIM-template PEs) are the documented next layer.

Add requirements-saip.txt, pytest.ini (silence asn1tools warnings), README and
config updates. Tests: +6 (encode/round-trip/credentials, app emit + fallback);
92 pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 02:35:54 +00:00
..
__init__.py Add Phase-1 eSIM provisioning implementation 2026-07-01 05:56:31 +00:00
test_app.py Harden: gate /api/export behind an admin token (closed by default) 2026-07-01 22:01:59 +00:00
test_core_adapters.py Harden: fix bare-filename db path crash, configurable APN 2026-07-01 06:13:26 +00:00
test_database.py Add Phase-1 eSIM provisioning implementation 2026-07-01 05:56:31 +00:00
test_profile_generator.py Phase 2: real 3GPP profile encodings + changelog 2026-07-01 06:03:48 +00:00
test_saip.py Add real SGP.22 SAIP profile generation (optional) 2026-07-02 02:35:54 +00:00
test_utils.py Harden: fix bare-filename db path crash, configurable APN 2026-07-01 06:13:26 +00:00