<matrixBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim" build number 3,164</shortDescription><upstreamBuild>3164</upstreamBuild><upstreamProject>gerrit-pysim</upstreamProject><upstreamUrl>job/gerrit-pysim/</upstreamUrl></cause></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>40823</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/23/40823/10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3164/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>493386</blockedDurationMillis><blockedTimeMillis>493386</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>25702</buildingDurationMillis><executingTimeMillis>25702</executingTimeMillis><executorUtilization>1.0</executorUtilization><queuingDurationMillis>498617</queuingDurationMillis><queuingTimeMillis>498617</queuingTimeMillis><subTaskCount>0</subTaskCount><totalDurationMillis>524319</totalDurationMillis><waitingDurationMillis>5228</waitingDurationMillis><waitingTimeMillis>5228</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3166</buildNumber><marked><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></marked><revision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'><artifactsUrl>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/3166/artifact</artifactsUrl><changesUrl>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/changes</changesUrl><displayUrl>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/3166/</displayUrl><testsUrl>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/3166/testReport</testsUrl></action><building>false</building><displayName>#3166</displayName><duration>25702</duration><estimatedDuration>42468</estimatedDuration><fullDisplayName>gerrit-pysim-build #3166</fullDisplayName><id>3166</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3166</number><queueId>98028</queueId><result>SUCCESS</result><timestamp>1777069586580</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/3166/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><affectedPath>tests/unittests/smdpp_data</affectedPath><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</commitId><timestamp>1777068963000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add test_configurable_parameters.py

Add ConfigurableParameterTest, which applies each parameter to a real
UPP DER template and reads it back, comparing results against a stored
expected-output snapshot (xo/test_configurable_parameters).

Add TestValidateVal covering validate_val() for Iccid, Imsi, Pin1, Puk1
and K, testing both valid inputs and invalid ones expected to raise
ValueError.

Add TestEnumParam covering the EnumParam methods (validate_val,
map_name_to_val, map_val_to_name, name_normalize, clean_name_str) using
AlgorithmID as the concrete subclass, including fuzzy name matching.

Also add get_value_from_pes() to ConfigurableParameter as a convenience
wrapper around get_values_from_pes() that asserts all returned values
are identical and returns the single result.

Change-Id: Ia55f0d11f8197ca15a948a83a34b3488acf1a0b4
Co-authored-by: Vadim Yanitskiy &lt;vyanitskiy@sysmocom.de&gt;
Jenkins: skip-card-test
</comment><date>2026-04-25 05:16:03 +0700</date><id>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</id><msg>add test_configurable_parameters.py</msg><path><editType>add</editType><file>tests/unittests/xo/test_configurable_parameters</file></path><path><editType>add</editType><file>tests/unittests/test_configurable_parameters.py</file></path><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path><path><editType>add</editType><file>tests/unittests/smdpp_data</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><description></description><fullName>Vadim Yanitskiy</fullName><id>fixeria</id></culprit><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>40823</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/23/40823/10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3164/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,166</shortDescription><upstreamBuild>3166</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>8369</buildingDurationMillis><executingTimeMillis>8369</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><master _class='hudson.plugins.git.util.Build'><buildNumber>3166</buildNumber><marked><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></marked><revision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3166</displayName><duration>8369</duration><estimatedDuration>8472</estimatedDuration><fullDisplayName>gerrit-pysim-build » card-test,a1=default,a3=default,a4=default,simtester #3166</fullDisplayName><id>3166</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3166</number><queueId>98147</queueId><result>SUCCESS</result><timestamp>1777069586580</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/JOB_TYPE=card-test,a1=default,a3=default,a4=default,label=simtester/3166/</url><builtOn>simtester</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><affectedPath>tests/unittests/smdpp_data</affectedPath><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</commitId><timestamp>1777068963000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add test_configurable_parameters.py

Add ConfigurableParameterTest, which applies each parameter to a real
UPP DER template and reads it back, comparing results against a stored
expected-output snapshot (xo/test_configurable_parameters).

Add TestValidateVal covering validate_val() for Iccid, Imsi, Pin1, Puk1
and K, testing both valid inputs and invalid ones expected to raise
ValueError.

Add TestEnumParam covering the EnumParam methods (validate_val,
map_name_to_val, map_val_to_name, name_normalize, clean_name_str) using
AlgorithmID as the concrete subclass, including fuzzy name matching.

Also add get_value_from_pes() to ConfigurableParameter as a convenience
wrapper around get_values_from_pes() that asserts all returned values
are identical and returns the single result.

Change-Id: Ia55f0d11f8197ca15a948a83a34b3488acf1a0b4
Co-authored-by: Vadim Yanitskiy &lt;vyanitskiy@sysmocom.de&gt;
Jenkins: skip-card-test
</comment><date>2026-04-25 05:16:03 +0700</date><id>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</id><msg>add test_configurable_parameters.py</msg><path><editType>add</editType><file>tests/unittests/smdpp_data</file></path><path><editType>add</editType><file>tests/unittests/xo/test_configurable_parameters</file></path><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path><path><editType>add</editType><file>tests/unittests/test_configurable_parameters.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>40823</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/23/40823/10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3164/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,166</shortDescription><upstreamBuild>3166</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>1</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>9737</buildingDurationMillis><executingTimeMillis>9737</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3166</buildNumber><marked><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></marked><revision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3166</displayName><duration>9737</duration><estimatedDuration>13761</estimatedDuration><fullDisplayName>gerrit-pysim-build » distcheck,a1=default,a3=default,a4=default,osmocom-gerrit #3166</fullDisplayName><id>3166</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3166</number><queueId>98149</queueId><result>SUCCESS</result><timestamp>1777069586580</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/JOB_TYPE=distcheck,a1=default,a3=default,a4=default,label=osmocom-gerrit/3166/</url><builtOn>build4-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><affectedPath>tests/unittests/smdpp_data</affectedPath><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</commitId><timestamp>1777068963000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add test_configurable_parameters.py

Add ConfigurableParameterTest, which applies each parameter to a real
UPP DER template and reads it back, comparing results against a stored
expected-output snapshot (xo/test_configurable_parameters).

Add TestValidateVal covering validate_val() for Iccid, Imsi, Pin1, Puk1
and K, testing both valid inputs and invalid ones expected to raise
ValueError.

Add TestEnumParam covering the EnumParam methods (validate_val,
map_name_to_val, map_val_to_name, name_normalize, clean_name_str) using
AlgorithmID as the concrete subclass, including fuzzy name matching.

Also add get_value_from_pes() to ConfigurableParameter as a convenience
wrapper around get_values_from_pes() that asserts all returned values
are identical and returns the single result.

Change-Id: Ia55f0d11f8197ca15a948a83a34b3488acf1a0b4
Co-authored-by: Vadim Yanitskiy &lt;vyanitskiy@sysmocom.de&gt;
Jenkins: skip-card-test
</comment><date>2026-04-25 05:16:03 +0700</date><id>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</id><msg>add test_configurable_parameters.py</msg><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path><path><editType>add</editType><file>tests/unittests/test_configurable_parameters.py</file></path><path><editType>add</editType><file>tests/unittests/smdpp_data</file></path><path><editType>add</editType><file>tests/unittests/xo/test_configurable_parameters</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>40823</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/23/40823/10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3164/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,166</shortDescription><upstreamBuild>3166</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>24533</buildingDurationMillis><executingTimeMillis>24533</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3166</buildNumber><marked><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></marked><revision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3166</displayName><duration>24533</duration><estimatedDuration>39908</estimatedDuration><fullDisplayName>gerrit-pysim-build » docs,a1=default,a3=default,a4=default,osmocom-gerrit #3166</fullDisplayName><id>3166</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3166</number><queueId>98150</queueId><result>SUCCESS</result><timestamp>1777069586580</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/JOB_TYPE=docs,a1=default,a3=default,a4=default,label=osmocom-gerrit/3166/</url><builtOn>build5-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><affectedPath>tests/unittests/smdpp_data</affectedPath><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</commitId><timestamp>1777068963000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add test_configurable_parameters.py

Add ConfigurableParameterTest, which applies each parameter to a real
UPP DER template and reads it back, comparing results against a stored
expected-output snapshot (xo/test_configurable_parameters).

Add TestValidateVal covering validate_val() for Iccid, Imsi, Pin1, Puk1
and K, testing both valid inputs and invalid ones expected to raise
ValueError.

Add TestEnumParam covering the EnumParam methods (validate_val,
map_name_to_val, map_val_to_name, name_normalize, clean_name_str) using
AlgorithmID as the concrete subclass, including fuzzy name matching.

Also add get_value_from_pes() to ConfigurableParameter as a convenience
wrapper around get_values_from_pes() that asserts all returned values
are identical and returns the single result.

Change-Id: Ia55f0d11f8197ca15a948a83a34b3488acf1a0b4
Co-authored-by: Vadim Yanitskiy &lt;vyanitskiy@sysmocom.de&gt;
Jenkins: skip-card-test
</comment><date>2026-04-25 05:16:03 +0700</date><id>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</id><msg>add test_configurable_parameters.py</msg><path><editType>add</editType><file>tests/unittests/smdpp_data</file></path><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path><path><editType>add</editType><file>tests/unittests/test_configurable_parameters.py</file></path><path><editType>add</editType><file>tests/unittests/xo/test_configurable_parameters</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>40823</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/23/40823/10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3164/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,166</shortDescription><upstreamBuild>3166</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>11085</buildingDurationMillis><executingTimeMillis>11085</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3166</buildNumber><marked><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></marked><revision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3166</displayName><duration>11085</duration><estimatedDuration>14861</estimatedDuration><fullDisplayName>gerrit-pysim-build » pylint,a1=default,a3=default,a4=default,osmocom-gerrit #3166</fullDisplayName><id>3166</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3166</number><queueId>98148</queueId><result>SUCCESS</result><timestamp>1777069586580</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/JOB_TYPE=pylint,a1=default,a3=default,a4=default,label=osmocom-gerrit/3166/</url><builtOn>build4-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><affectedPath>tests/unittests/smdpp_data</affectedPath><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</commitId><timestamp>1777068963000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add test_configurable_parameters.py

Add ConfigurableParameterTest, which applies each parameter to a real
UPP DER template and reads it back, comparing results against a stored
expected-output snapshot (xo/test_configurable_parameters).

Add TestValidateVal covering validate_val() for Iccid, Imsi, Pin1, Puk1
and K, testing both valid inputs and invalid ones expected to raise
ValueError.

Add TestEnumParam covering the EnumParam methods (validate_val,
map_name_to_val, map_val_to_name, name_normalize, clean_name_str) using
AlgorithmID as the concrete subclass, including fuzzy name matching.

Also add get_value_from_pes() to ConfigurableParameter as a convenience
wrapper around get_values_from_pes() that asserts all returned values
are identical and returns the single result.

Change-Id: Ia55f0d11f8197ca15a948a83a34b3488acf1a0b4
Co-authored-by: Vadim Yanitskiy &lt;vyanitskiy@sysmocom.de&gt;
Jenkins: skip-card-test
</comment><date>2026-04-25 05:16:03 +0700</date><id>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</id><msg>add test_configurable_parameters.py</msg><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path><path><editType>add</editType><file>tests/unittests/smdpp_data</file></path><path><editType>add</editType><file>tests/unittests/test_configurable_parameters.py</file></path><path><editType>add</editType><file>tests/unittests/xo/test_configurable_parameters</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>40823</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/23/40823/10</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3164/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,166</shortDescription><upstreamBuild>3166</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>1</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>9916</buildingDurationMillis><executingTimeMillis>9916</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><master _class='hudson.plugins.git.util.Build'><buildNumber>3166</buildNumber><marked><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></marked><revision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><branch><SHA1>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3166</displayName><duration>9916</duration><estimatedDuration>40998</estimatedDuration><fullDisplayName>gerrit-pysim-build » test,a1=default,a3=default,a4=default,osmocom-gerrit #3166</fullDisplayName><id>3166</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3166</number><queueId>98146</queueId><result>SUCCESS</result><timestamp>1777069586580</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/JOB_TYPE=test,a1=default,a3=default,a4=default,label=osmocom-gerrit/3166/</url><builtOn>build5-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><affectedPath>tests/unittests/smdpp_data</affectedPath><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</commitId><timestamp>1777068963000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add test_configurable_parameters.py

Add ConfigurableParameterTest, which applies each parameter to a real
UPP DER template and reads it back, comparing results against a stored
expected-output snapshot (xo/test_configurable_parameters).

Add TestValidateVal covering validate_val() for Iccid, Imsi, Pin1, Puk1
and K, testing both valid inputs and invalid ones expected to raise
ValueError.

Add TestEnumParam covering the EnumParam methods (validate_val,
map_name_to_val, map_val_to_name, name_normalize, clean_name_str) using
AlgorithmID as the concrete subclass, including fuzzy name matching.

Also add get_value_from_pes() to ConfigurableParameter as a convenience
wrapper around get_values_from_pes() that asserts all returned values
are identical and returns the single result.

Change-Id: Ia55f0d11f8197ca15a948a83a34b3488acf1a0b4
Co-authored-by: Vadim Yanitskiy &lt;vyanitskiy@sysmocom.de&gt;
Jenkins: skip-card-test
</comment><date>2026-04-25 05:16:03 +0700</date><id>7cdbce50e1ace9f1a7425a52ae11fe2755dd2f6d</id><msg>add test_configurable_parameters.py</msg><path><editType>add</editType><file>tests/unittests/smdpp_data</file></path><path><editType>add</editType><file>tests/unittests/test_configurable_parameters.py</file></path><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path><path><editType>add</editType><file>tests/unittests/xo/test_configurable_parameters</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>41845</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>9</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/45/41845/9</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3085/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,112</shortDescription><upstreamBuild>3112</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>12475</buildableDurationMillis><buildableTimeMillis>12475</buildableTimeMillis><buildingDurationMillis>155430</buildingDurationMillis><executingTimeMillis>155430</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3112</buildNumber><marked><SHA1>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</SHA1><branch><SHA1>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</SHA1><name>master</name></branch></marked><revision><SHA1>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</SHA1><branch><SHA1>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</SHA1><branch><SHA1>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3112</displayName><duration>155430</duration><estimatedDuration>155163</estimatedDuration><fullDisplayName>gerrit-pysim-build » test,a1=default,a3=default,a4=default,simtester #3112</fullDisplayName><id>3112</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3112</number><queueId>96924</queueId><result>SUCCESS</result><timestamp>1776994106002</timestamp><url>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim-build/JOB_TYPE=test,a1=default,a3=default,a4=default,label=simtester/3112/</url><builtOn>simtester</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>pySim/esim/saip/batch.py</affectedPath><affectedPath>pySim/esim/saip/param_source.py</affectedPath><commitId>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</commitId><timestamp>1776982717000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>personalization: add param_source.py, add batch.py

Implement pySim.esim.saip.batch.BatchPersonalization,
generating N eSIM profiles from a preset configuration.

Batch parameters can be fed by a constant, incrementing, random or from
CSV rows: add pySim.esim.saip.param_source.* classes to feed such input
to each of the BatchPersonalization's ConfigurableParameter instances.

Related: SYS#6768
Change-Id: I01ae40a06605eb205bfb409189fcd2b3a128855a
Jenkins: skip-card-test
</comment><date>2026-04-24 05:18:37 +0700</date><id>fb0dc1a8e75f6d895c2a3688011727664e49c6bf</id><msg>personalization: add param_source.py, add batch.py</msg><path><editType>add</editType><file>pySim/esim/saip/param_source.py</file></path><path><editType>add</editType><file>pySim/esim/saip/batch.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run></matrixBuild>