dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34038 )
Change subject: runtime: make sure applications are always listed in the same order ......................................................................
runtime: make sure applications are always listed in the same order
When we print the profile applications. which are not registered in EF.DIR, we use python sets to subtract the applications which were part of EF.DIR and hence already listed. Since we use sets the order may be arbitrary. This is so far not a problem, since the output is meant to be read by humans, but as soon as we try to use the output for unit-test verifications we need a consistent order (sorted)
Related: OS#6094 Change-Id: Ie75613910aaba14c27420c52b6596ab080588273 --- M pySim/runtime.py 1 file changed, 18 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/38/34038/1
diff --git a/pySim/runtime.py b/pySim/runtime.py index 642e9c1..422e916 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -108,7 +108,7 @@
# Some card applications may not be registered in EF.DIR, we will actively # probe for those applications - for f in set(apps_profile) - set(apps_taken): + for f in sorted(set(apps_profile) - set(apps_taken), key=str): try: data, sw = self.card.select_adf_by_aid(f.aid) if sw == "9000":