Merge "wifi: add CTS tests for Passpoint parsing APIs" am: 66d2bf1fe9
am: 8376afc701
Change-Id: I7865133af1a2eb56a98bf8e1a8f74f225a9ba925
This commit is contained in:
85
tests/cts/net/assets/HSR1ProfileWithCACert.base64
Normal file
85
tests/cts/net/assets/HSR1ProfileWithCACert.base64
Normal file
@@ -0,0 +1,85 @@
|
||||
Q29udGVudC1UeXBlOiBtdWx0aXBhcnQvbWl4ZWQ7IGJvdW5kYXJ5PXtib3VuZGFyeX0KQ29udGVu
|
||||
dC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0CgotLXtib3VuZGFyeX0KQ29udGVudC1UeXBlOiBh
|
||||
cHBsaWNhdGlvbi94LXBhc3Nwb2ludC1wcm9maWxlCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6
|
||||
IGJhc2U2NAoKUEUxbmJYUlVjbVZsSUhodGJHNXpQU0p6ZVc1amJXdzZaRzFrWkdZeExqSWlQZ29n
|
||||
SUR4V1pYSkVWRVErTVM0eVBDOVdaWEpFVkVRKwpDaUFnUEU1dlpHVStDaUFnSUNBOFRtOWtaVTVo
|
||||
YldVK1VHVnlVSEp2ZG1sa1pYSlRkV0p6WTNKcGNIUnBiMjQ4TDA1dlpHVk9ZVzFsClBnb2dJQ0Fn
|
||||
UEZKVVVISnZjR1Z5ZEdsbGN6NEtJQ0FnSUNBZ1BGUjVjR1UrQ2lBZ0lDQWdJQ0FnUEVSRVJrNWhi
|
||||
V1UrZFhKdU9uZG0KWVRwdGJ6cG9iM1J6Y0c5ME1tUnZkREF0Y0dWeWNISnZkbWxrWlhKemRXSnpZ
|
||||
M0pwY0hScGIyNDZNUzR3UEM5RVJFWk9ZVzFsUGdvZwpJQ0FnSUNBOEwxUjVjR1UrQ2lBZ0lDQThM
|
||||
MUpVVUhKdmNHVnlkR2xsY3o0S0lDQWdJRHhPYjJSbFBnb2dJQ0FnSUNBOFRtOWtaVTVoCmJXVSth
|
||||
VEF3TVR3dlRtOWtaVTVoYldVK0NpQWdJQ0FnSUR4T2IyUmxQZ29nSUNBZ0lDQWdJRHhPYjJSbFRt
|
||||
RnRaVDVJYjIxbFUxQTgKTDA1dlpHVk9ZVzFsUGdvZ0lDQWdJQ0FnSUR4T2IyUmxQZ29nSUNBZ0lD
|
||||
QWdJQ0FnUEU1dlpHVk9ZVzFsUGtaeWFXVnVaR3g1VG1GdApaVHd2VG05a1pVNWhiV1UrQ2lBZ0lD
|
||||
QWdJQ0FnSUNBOFZtRnNkV1UrUTJWdWRIVnllU0JJYjNWelpUd3ZWbUZzZFdVK0NpQWdJQ0FnCklD
|
||||
QWdQQzlPYjJSbFBnb2dJQ0FnSUNBZ0lEeE9iMlJsUGdvZ0lDQWdJQ0FnSUNBZ1BFNXZaR1ZPWVcx
|
||||
bFBrWlJSRTQ4TDA1dlpHVk8KWVcxbFBnb2dJQ0FnSUNBZ0lDQWdQRlpoYkhWbFBtMXBOaTVqYnk1
|
||||
MWF6d3ZWbUZzZFdVK0NpQWdJQ0FnSUNBZ1BDOU9iMlJsUGdvZwpJQ0FnSUNBZ0lEeE9iMlJsUGdv
|
||||
Z0lDQWdJQ0FnSUNBZ1BFNXZaR1ZPWVcxbFBsSnZZVzFwYm1kRGIyNXpiM0owYVhWdFQwazhMMDV2
|
||||
ClpHVk9ZVzFsUGdvZ0lDQWdJQ0FnSUNBZ1BGWmhiSFZsUGpFeE1qSXpNeXcwTkRVMU5qWThMMVpo
|
||||
YkhWbFBnb2dJQ0FnSUNBZ0lEd3YKVG05a1pUNEtJQ0FnSUNBZ1BDOU9iMlJsUGdvZ0lDQWdJQ0E4
|
||||
VG05a1pUNEtJQ0FnSUNBZ0lDQThUbTlrWlU1aGJXVStRM0psWkdWdQpkR2xoYkR3dlRtOWtaVTVo
|
||||
YldVK0NpQWdJQ0FnSUNBZ1BFNXZaR1UrQ2lBZ0lDQWdJQ0FnSUNBOFRtOWtaVTVoYldVK1VtVmhi
|
||||
RzA4CkwwNXZaR1ZPWVcxbFBnb2dJQ0FnSUNBZ0lDQWdQRlpoYkhWbFBuTm9ZV3RsYmk1emRHbHlj
|
||||
bVZrTG1OdmJUd3ZWbUZzZFdVK0NpQWcKSUNBZ0lDQWdQQzlPYjJSbFBnb2dJQ0FnSUNBZ0lEeE9i
|
||||
MlJsUGdvZ0lDQWdJQ0FnSUNBZ1BFNXZaR1ZPWVcxbFBsVnpaWEp1WVcxbApVR0Z6YzNkdmNtUThM
|
||||
MDV2WkdWT1lXMWxQZ29nSUNBZ0lDQWdJQ0FnUEU1dlpHVStDaUFnSUNBZ0lDQWdJQ0FnSUR4T2Iy
|
||||
UmxUbUZ0ClpUNVZjMlZ5Ym1GdFpUd3ZUbTlrWlU1aGJXVStDaUFnSUNBZ0lDQWdJQ0FnSUR4V1lX
|
||||
eDFaVDVxWVcxbGN6d3ZWbUZzZFdVK0NpQWcKSUNBZ0lDQWdJQ0E4TDA1dlpHVStDaUFnSUNBZ0lD
|
||||
QWdJQ0E4VG05a1pUNEtJQ0FnSUNBZ0lDQWdJQ0FnUEU1dlpHVk9ZVzFsUGxCaApjM04zYjNKa1BD
|
||||
OU9iMlJsVG1GdFpUNEtJQ0FnSUNBZ0lDQWdJQ0FnUEZaaGJIVmxQbGx0T1hWYVJFRjNUbmM5UFR3
|
||||
dlZtRnNkV1UrCkNpQWdJQ0FnSUNBZ0lDQThMMDV2WkdVK0NpQWdJQ0FnSUNBZ0lDQThUbTlrWlQ0
|
||||
S0lDQWdJQ0FnSUNBZ0lDQWdQRTV2WkdWT1lXMWwKUGtWQlVFMWxkR2h2WkR3dlRtOWtaVTVoYldV
|
||||
K0NpQWdJQ0FnSUNBZ0lDQWdJRHhPYjJSbFBnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUR4TwpiMlJsVG1G
|
||||
dFpUNUZRVkJVZVhCbFBDOU9iMlJsVG1GdFpUNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBOFZtRnNkV1Ur
|
||||
TWpFOEwxWmhiSFZsClBnb2dJQ0FnSUNBZ0lDQWdJQ0E4TDA1dlpHVStDaUFnSUNBZ0lDQWdJQ0Fn
|
||||
SUR4T2IyUmxQZ29nSUNBZ0lDQWdJQ0FnSUNBZ0lEeE8KYjJSbFRtRnRaVDVKYm01bGNrMWxkR2h2
|
||||
WkR3dlRtOWtaVTVoYldVK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnUEZaaGJIVmxQazFUTFVOSQpRVkF0
|
||||
VmpJOEwxWmhiSFZsUGdvZ0lDQWdJQ0FnSUNBZ0lDQThMMDV2WkdVK0NpQWdJQ0FnSUNBZ0lDQThM
|
||||
MDV2WkdVK0NpQWdJQ0FnCklDQWdQQzlPYjJSbFBnb2dJQ0FnSUNBZ0lEeE9iMlJsUGdvZ0lDQWdJ
|
||||
Q0FnSUNBZ1BFNXZaR1ZPWVcxbFBrUnBaMmwwWVd4RFpYSjAKYVdacFkyRjBaVHd2VG05a1pVNWhi
|
||||
V1UrQ2lBZ0lDQWdJQ0FnSUNBOFRtOWtaVDRLSUNBZ0lDQWdJQ0FnSUNBZ1BFNXZaR1ZPWVcxbApQ
|
||||
a05sY25ScFptbGpZWFJsVkhsd1pUd3ZUbTlrWlU1aGJXVStDaUFnSUNBZ0lDQWdJQ0FnSUR4V1lX
|
||||
eDFaVDU0TlRBNWRqTThMMVpoCmJIVmxQZ29nSUNBZ0lDQWdJQ0FnUEM5T2IyUmxQZ29nSUNBZ0lD
|
||||
QWdJQ0FnUEU1dlpHVStDaUFnSUNBZ0lDQWdJQ0FnSUR4T2IyUmwKVG1GdFpUNURaWEowVTBoQk1q
|
||||
VTJSbWx1WjJWeWNISnBiblE4TDA1dlpHVk9ZVzFsUGdvZ0lDQWdJQ0FnSUNBZ0lDQThWbUZzZFdV
|
||||
KwpNV1l4WmpGbU1XWXhaakZtTVdZeFpqRm1NV1l4WmpGbU1XWXhaakZtTVdZeFpqRm1NV1l4WmpG
|
||||
bU1XWXhaakZtTVdZeFpqRm1NV1l4ClpqRm1NV1l4Wmp3dlZtRnNkV1UrQ2lBZ0lDQWdJQ0FnSUNB
|
||||
OEwwNXZaR1UrQ2lBZ0lDQWdJQ0FnUEM5T2IyUmxQZ29nSUNBZ0lDQWcKSUR4T2IyUmxQZ29nSUNB
|
||||
Z0lDQWdJQ0FnUEU1dlpHVk9ZVzFsUGxOSlRUd3ZUbTlrWlU1aGJXVStDaUFnSUNBZ0lDQWdJQ0E4
|
||||
VG05awpaVDRLSUNBZ0lDQWdJQ0FnSUNBZ1BFNXZaR1ZPWVcxbFBrbE5VMGs4TDA1dlpHVk9ZVzFs
|
||||
UGdvZ0lDQWdJQ0FnSUNBZ0lDQThWbUZzCmRXVSthVzF6YVR3dlZtRnNkV1UrQ2lBZ0lDQWdJQ0Fn
|
||||
SUNBOEwwNXZaR1UrQ2lBZ0lDQWdJQ0FnSUNBOFRtOWtaVDRLSUNBZ0lDQWcKSUNBZ0lDQWdQRTV2
|
||||
WkdWT1lXMWxQa1ZCVUZSNWNHVThMMDV2WkdWT1lXMWxQZ29nSUNBZ0lDQWdJQ0FnSUNBOFZtRnNk
|
||||
V1UrTWpROApMMVpoYkhWbFBnb2dJQ0FnSUNBZ0lDQWdQQzlPYjJSbFBnb2dJQ0FnSUNBZ0lEd3ZU
|
||||
bTlrWlQ0S0lDQWdJQ0FnUEM5T2IyUmxQZ29nCklDQWdQQzlPYjJSbFBnb2dJRHd2VG05a1pUNEtQ
|
||||
QzlOWjIxMFZISmxaVDRLCgotLXtib3VuZGFyeX0KQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94
|
||||
LXg1MDktY2EtY2VydApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjQKCkxTMHRMUzFD
|
||||
UlVkSlRpQkRSVkpVU1VaSlEwRlVSUzB0TFMwdENrMUpTVVJMUkVORFFXaERaMEYzU1VKQlowbEtR
|
||||
VWxNYkVaa2QzcE0KVm5WeVRVRXdSME5UY1VkVFNXSXpSRkZGUWtOM1ZVRk5Ra2w0UlVSQlQwSm5U
|
||||
bFlLUWtGTlZFSXdWa0pWUTBKRVVWUkZkMGhvWTA1TgpWRmwzVFZSRmVVMVVSVEZOUkVVeFYyaGpU
|
||||
azFxV1hkTlZFRTFUVlJGTVUxRVJURlhha0ZUVFZKQmR3cEVaMWxFVmxGUlJFVjNaRVpSClZrRm5V
|
||||
VEJGZUUxSlNVSkpha0ZPUW1kcmNXaHJhVWM1ZHpCQ1FWRkZSa0ZCVDBOQlVUaEJUVWxKUWtOblMw
|
||||
TkJVVVZCQ25wdVFWQlYKZWpJMlRYTmhaVFIzY3pRelkzcFNOREV2U2pKUmRISlRTVnBWUzIxV1ZY
|
||||
TldkVzFFWWxsSWNsQk9kbFJZUzFOTldFRmpaWGRQVWtSUgpXVmdLVW5GMlNIWndiamhEYzJOQ01T
|
||||
dHZSMWhhZGtoM2VHbzBlbFl3VjB0dlN6SjZaVmhyWVhVemRtTjViRE5JU1V0MWNFcG1jVEpVClJV
|
||||
RkRaV1pXYW1vd2RBcEtWeXRZTXpWUVIxZHdPUzlJTlhwSlZVNVdUbFpxVXpkVmJYTTRORWwyUzJo
|
||||
U1FqZzFNVEpRUWpsVmVVaGgKWjFoWlZsZzFSMWR3UVdOV2NIbG1jbXhTQ2taSk9WRmthR2dyVUdK
|
||||
ck1IVjVhM1JrWW1ZdlEyUm1aMGhQYjJWaWNsUjBkMUpzYWswdwpiMFIwV0NzeVEzWTJhakIzUWtz
|
||||
M2FFUTRjRkIyWmpFcmRYa0tSM3BqZW1sblFWVXZORXQzTjJWYWNYbGtaamxDS3pWU2RYQlNLMGxh
|
||||
CmFYQllOREY0UldsSmNrdFNkM0ZwTlRFM1YxZDZXR05xWVVjeVkwNWlaalExTVFwNGNFZzFVRzVX
|
||||
TTJreGRIRXdOR3BOUjFGVmVrWjMKU1VSQlVVRkNielJIUVUxSU5IZElVVmxFVmxJd1QwSkNXVVZH
|
||||
U1hkWU5IWnpPRUpwUW1OVFkyOWtDalZ1YjFwSVVrMDRSVFFyYVUxRgpTVWRCTVZWa1NYZFJOMDFF
|
||||
YlVGR1NYZFlOSFp6T0VKcFFtTlRZMjlrTlc1dldraFNUVGhGTkN0cGIxSmhhMFpFUVZNS1RWSkJk
|
||||
MFJuCldVUldVVkZFUlhka1JsRldRV2RSTUVWNFoyZHJRV2QxVlZZelJFMTBWelp6ZDBSQldVUldV
|
||||
akJVUWtGVmQwRjNSVUl2ZWtGTVFtZE8KVmdwSVVUaEZRa0ZOUTBGUldYZEVVVmxLUzI5YVNXaDJZ
|
||||
MDVCVVVWTVFsRkJSR2RuUlVKQlJtWlJjVTlVUVRkU2RqZExLMngxVVRkdwpibUZ6TkVKWmQwaEZD
|
||||
amxIUlZBdmRXOW9kalpMVDNrd1ZFZFJSbUp5VWxScVJtOU1WazVDT1VKYU1YbHRUVVJhTUM5VVNY
|
||||
ZEpWV00zCmQyazNZVGgwTlcxRmNWbElNVFV6ZDFjS1lWZHZiMmxUYW5sTVRHaDFTVFJ6VG5KT1Ew
|
||||
OTBhWE5rUW5FeWNqSk5SbGgwTm1nd2JVRlIKV1U5UWRqaFNPRXMzTDJablUzaEhSbkY2YUhsT2JX
|
||||
MVdUQW94Y1VKS2JHUjRNelJUY0hkelZFRk1VVlpRWWpSb1IzZEtlbHBtY2pGUQpZM0JGVVhnMmVF
|
||||
MXVWR3c0ZUVWWFdrVXpUWE01T1hWaFZYaGlVWEZKZDFKMUNreG5RVTlyVGtOdFdUSnRPRGxXYUhw
|
||||
aFNFb3hkVlk0Ck5VRmtUUzkwUkN0WmMyMXNibTVxZERsTVVrTmxhbUpDYVhCcVNVZHFUMWh5WnpG
|
||||
S1VDdHNlRllLYlhWTk5IWklLMUF2Yld4dGVITlEKVUhvd1pEWTFZaXRGUjIxS1duQnZUR3RQTDNS
|
||||
a1RrNTJRMWw2YWtwd1ZFVlhjRVZ6VHpaT1RXaExXVzg5Q2kwdExTMHRSVTVFSUVORgpVbFJKUmts
|
||||
RFFWUkZMUzB0TFMwSwotLXtib3VuZGFyeX0tLQo=
|
||||
399
tests/cts/net/assets/PerProviderSubscription.xml
Normal file
399
tests/cts/net/assets/PerProviderSubscription.xml
Normal file
@@ -0,0 +1,399 @@
|
||||
<MgmtTree xmlns="syncml:dmddf1.2">
|
||||
<VerDTD>1.2</VerDTD>
|
||||
<Node>
|
||||
<NodeName>PerProviderSubscription</NodeName>
|
||||
<RTProperties>
|
||||
<Type>
|
||||
<DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
|
||||
</Type>
|
||||
</RTProperties>
|
||||
<Node>
|
||||
<NodeName>UpdateIdentifier</NodeName>
|
||||
<Value>12</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>i001</NodeName>
|
||||
<Node>
|
||||
<NodeName>HomeSP</NodeName>
|
||||
<Node>
|
||||
<NodeName>FriendlyName</NodeName>
|
||||
<Value>Century House</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>FQDN</NodeName>
|
||||
<Value>mi6.co.uk</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>RoamingConsortiumOI</NodeName>
|
||||
<Value>112233,445566</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>IconURL</NodeName>
|
||||
<Value>icon.test.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>NetworkID</NodeName>
|
||||
<Node>
|
||||
<NodeName>n001</NodeName>
|
||||
<Node>
|
||||
<NodeName>SSID</NodeName>
|
||||
<Value>TestSSID</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>HESSID</NodeName>
|
||||
<Value>12345678</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>n002</NodeName>
|
||||
<Node>
|
||||
<NodeName>SSID</NodeName>
|
||||
<Value>NullHESSID</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>HomeOIList</NodeName>
|
||||
<Node>
|
||||
<NodeName>h001</NodeName>
|
||||
<Node>
|
||||
<NodeName>HomeOI</NodeName>
|
||||
<Value>11223344</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>HomeOIRequired</NodeName>
|
||||
<Value>true</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>h002</NodeName>
|
||||
<Node>
|
||||
<NodeName>HomeOI</NodeName>
|
||||
<Value>55667788</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>HomeOIRequired</NodeName>
|
||||
<Value>false</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>OtherHomePartners</NodeName>
|
||||
<Node>
|
||||
<NodeName>o001</NodeName>
|
||||
<Node>
|
||||
<NodeName>FQDN</NodeName>
|
||||
<Value>other.fqdn.com</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Credential</NodeName>
|
||||
<Node>
|
||||
<NodeName>CreationDate</NodeName>
|
||||
<Value>2016-01-01T10:00:00Z</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>ExpirationDate</NodeName>
|
||||
<Value>2016-02-01T10:00:00Z</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Realm</NodeName>
|
||||
<Value>shaken.stirred.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>CheckAAAServerCertStatus</NodeName>
|
||||
<Value>true</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UsernamePassword</NodeName>
|
||||
<Node>
|
||||
<NodeName>Username</NodeName>
|
||||
<Value>james</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Password</NodeName>
|
||||
<Value>Ym9uZDAwNw==</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>MachineManaged</NodeName>
|
||||
<Value>true</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>SoftTokenApp</NodeName>
|
||||
<Value>TestApp</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>AbleToShare</NodeName>
|
||||
<Value>true</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>EAPMethod</NodeName>
|
||||
<Node>
|
||||
<NodeName>EAPType</NodeName>
|
||||
<Value>21</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>InnerMethod</NodeName>
|
||||
<Value>MS-CHAP-V2</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>DigitalCertificate</NodeName>
|
||||
<Node>
|
||||
<NodeName>CertificateType</NodeName>
|
||||
<Value>x509v3</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>CertSHA256Fingerprint</NodeName>
|
||||
<Value>1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>SIM</NodeName>
|
||||
<Node>
|
||||
<NodeName>IMSI</NodeName>
|
||||
<Value>imsi</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>EAPType</NodeName>
|
||||
<Value>24</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Policy</NodeName>
|
||||
<Node>
|
||||
<NodeName>PreferredRoamingPartnerList</NodeName>
|
||||
<Node>
|
||||
<NodeName>p001</NodeName>
|
||||
<Node>
|
||||
<NodeName>FQDN_Match</NodeName>
|
||||
<Value>test1.fqdn.com,exactMatch</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Priority</NodeName>
|
||||
<Value>127</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Country</NodeName>
|
||||
<Value>us,fr</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>p002</NodeName>
|
||||
<Node>
|
||||
<NodeName>FQDN_Match</NodeName>
|
||||
<Value>test2.fqdn.com,includeSubdomains</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Priority</NodeName>
|
||||
<Value>200</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Country</NodeName>
|
||||
<Value>*</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>MinBackhaulThreshold</NodeName>
|
||||
<Node>
|
||||
<NodeName>m001</NodeName>
|
||||
<Node>
|
||||
<NodeName>NetworkType</NodeName>
|
||||
<Value>home</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>DLBandwidth</NodeName>
|
||||
<Value>23412</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>ULBandwidth</NodeName>
|
||||
<Value>9823</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>m002</NodeName>
|
||||
<Node>
|
||||
<NodeName>NetworkType</NodeName>
|
||||
<Value>roaming</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>DLBandwidth</NodeName>
|
||||
<Value>9271</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>ULBandwidth</NodeName>
|
||||
<Value>2315</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>PolicyUpdate</NodeName>
|
||||
<Node>
|
||||
<NodeName>UpdateInterval</NodeName>
|
||||
<Value>120</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UpdateMethod</NodeName>
|
||||
<Value>OMA-DM-ClientInitiated</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Restriction</NodeName>
|
||||
<Value>HomeSP</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>URI</NodeName>
|
||||
<Value>policy.update.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UsernamePassword</NodeName>
|
||||
<Node>
|
||||
<NodeName>Username</NodeName>
|
||||
<Value>updateUser</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Password</NodeName>
|
||||
<Value>updatePass</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>TrustRoot</NodeName>
|
||||
<Node>
|
||||
<NodeName>CertURL</NodeName>
|
||||
<Value>update.cert.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>CertSHA256Fingerprint</NodeName>
|
||||
<Value>1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>SPExclusionList</NodeName>
|
||||
<Node>
|
||||
<NodeName>s001</NodeName>
|
||||
<Node>
|
||||
<NodeName>SSID</NodeName>
|
||||
<Value>excludeSSID</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>RequiredProtoPortTuple</NodeName>
|
||||
<Node>
|
||||
<NodeName>r001</NodeName>
|
||||
<Node>
|
||||
<NodeName>IPProtocol</NodeName>
|
||||
<Value>12</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>PortNumber</NodeName>
|
||||
<Value>34,92,234</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>MaximumBSSLoadValue</NodeName>
|
||||
<Value>23</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>CredentialPriority</NodeName>
|
||||
<Value>99</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>AAAServerTrustRoot</NodeName>
|
||||
<Node>
|
||||
<NodeName>a001</NodeName>
|
||||
<Node>
|
||||
<NodeName>CertURL</NodeName>
|
||||
<Value>server1.trust.root.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>CertSHA256Fingerprint</NodeName>
|
||||
<Value>1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>SubscriptionUpdate</NodeName>
|
||||
<Node>
|
||||
<NodeName>UpdateInterval</NodeName>
|
||||
<Value>120</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UpdateMethod</NodeName>
|
||||
<Value>SSP-ClientInitiated</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Restriction</NodeName>
|
||||
<Value>RoamingPartner</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>URI</NodeName>
|
||||
<Value>subscription.update.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UsernamePassword</NodeName>
|
||||
<Node>
|
||||
<NodeName>Username</NodeName>
|
||||
<Value>subscriptionUser</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>Password</NodeName>
|
||||
<Value>subscriptionPass</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>TrustRoot</NodeName>
|
||||
<Node>
|
||||
<NodeName>CertURL</NodeName>
|
||||
<Value>subscription.update.cert.com</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>CertSHA256Fingerprint</NodeName>
|
||||
<Value>1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>SubscriptionParameter</NodeName>
|
||||
<Node>
|
||||
<NodeName>CreationDate</NodeName>
|
||||
<Value>2016-02-01T10:00:00Z</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>ExpirationDate</NodeName>
|
||||
<Value>2016-03-01T10:00:00Z</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>TypeOfSubscription</NodeName>
|
||||
<Value>Gold</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UsageLimits</NodeName>
|
||||
<Node>
|
||||
<NodeName>DataLimit</NodeName>
|
||||
<Value>921890</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>StartDate</NodeName>
|
||||
<Value>2016-12-01T10:00:00Z</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>TimeLimit</NodeName>
|
||||
<Value>120</Value>
|
||||
</Node>
|
||||
<Node>
|
||||
<NodeName>UsageTimePeriod</NodeName>
|
||||
<Value>99910</Value>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
</Node>
|
||||
</MgmtTree>
|
||||
114
tests/cts/net/src/android/net/wifi/cts/ConfigParserTest.java
Normal file
114
tests/cts/net/src/android/net/wifi/cts/ConfigParserTest.java
Normal file
@@ -0,0 +1,114 @@
|
||||
/*
|
||||
* Copyright (C) 2017 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License
|
||||
*/
|
||||
|
||||
package android.net.wifi.cts;
|
||||
|
||||
import android.net.wifi.hotspot2.ConfigParser;
|
||||
import android.net.wifi.hotspot2.PasspointConfiguration;
|
||||
import android.net.wifi.hotspot2.pps.Credential;
|
||||
import android.net.wifi.hotspot2.pps.HomeSp;
|
||||
import android.test.AndroidTestCase;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* CTS tests for Hotspot 2.0 Release 1 installation file parsing API.
|
||||
*/
|
||||
public class ConfigParserTest extends AndroidTestCase {
|
||||
/**
|
||||
* Hotspot 2.0 Release 1 installation file that contains a Passpoint profile and a
|
||||
* CA (Certificate Authority) X.509 certificate {@link FakeKeys#CA_CERT0}.
|
||||
*/
|
||||
private static final String PASSPOINT_INSTALLATION_FILE_WITH_CA_CERT =
|
||||
"assets/HSR1ProfileWithCACert.base64";
|
||||
|
||||
/**
|
||||
* Read the content of the given resource file into a String.
|
||||
*
|
||||
* @param filename String name of the file
|
||||
* @return String
|
||||
* @throws IOException
|
||||
*/
|
||||
private String loadResourceFile(String filename) throws IOException {
|
||||
InputStream in = getClass().getClassLoader().getResourceAsStream(filename);
|
||||
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
|
||||
StringBuilder builder = new StringBuilder();
|
||||
String line;
|
||||
while ((line = reader.readLine()) != null) {
|
||||
builder.append(line).append("\n");
|
||||
}
|
||||
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a {@link PasspointConfiguration} that matches the configuration specified in the
|
||||
* XML file {@link #PASSPOINT_INSTALLATION_FILE_WITH_CA_CERT}.
|
||||
*
|
||||
* @return {@link PasspointConfiguration}
|
||||
*/
|
||||
private PasspointConfiguration generateConfigurationFromProfile() {
|
||||
PasspointConfiguration config = new PasspointConfiguration();
|
||||
|
||||
// HomeSP configuration.
|
||||
HomeSp homeSp = new HomeSp();
|
||||
homeSp.setFriendlyName("Century House");
|
||||
homeSp.setFqdn("mi6.co.uk");
|
||||
homeSp.setRoamingConsortiumOis(new long[] {0x112233L, 0x445566L});
|
||||
config.setHomeSp(homeSp);
|
||||
|
||||
// Credential configuration.
|
||||
Credential credential = new Credential();
|
||||
credential.setRealm("shaken.stirred.com");
|
||||
Credential.UserCredential userCredential = new Credential.UserCredential();
|
||||
userCredential.setUsername("james");
|
||||
userCredential.setPassword("Ym9uZDAwNw==");
|
||||
userCredential.setEapType(21);
|
||||
userCredential.setNonEapInnerMethod("MS-CHAP-V2");
|
||||
credential.setUserCredential(userCredential);
|
||||
Credential.CertificateCredential certCredential = new Credential.CertificateCredential();
|
||||
certCredential.setCertType("x509v3");
|
||||
byte[] certSha256Fingerprint = new byte[32];
|
||||
Arrays.fill(certSha256Fingerprint, (byte)0x1f);
|
||||
certCredential.setCertSha256Fingerprint(certSha256Fingerprint);
|
||||
credential.setCertCredential(certCredential);
|
||||
Credential.SimCredential simCredential = new Credential.SimCredential();
|
||||
simCredential.setImsi("imsi");
|
||||
simCredential.setEapType(24);
|
||||
credential.setSimCredential(simCredential);
|
||||
credential.setCaCertificate(FakeKeys.CA_CERT0);
|
||||
config.setCredential(credential);
|
||||
return config;
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify a valid installation file is parsed successfully with the matching contents.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testParseConfigFile() throws Exception {
|
||||
String configStr = loadResourceFile(PASSPOINT_INSTALLATION_FILE_WITH_CA_CERT);
|
||||
PasspointConfiguration expectedConfig = generateConfigurationFromProfile();
|
||||
PasspointConfiguration actualConfig =
|
||||
ConfigParser.parsePasspointConfig(
|
||||
"application/x-wifi-config", configStr.getBytes());
|
||||
assertTrue(actualConfig.equals(expectedConfig));
|
||||
}
|
||||
}
|
||||
194
tests/cts/net/src/android/net/wifi/cts/PpsMoParserTest.java
Normal file
194
tests/cts/net/src/android/net/wifi/cts/PpsMoParserTest.java
Normal file
@@ -0,0 +1,194 @@
|
||||
/*
|
||||
* Copyright (C) 2017 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.net.wifi.cts;
|
||||
|
||||
import android.net.wifi.hotspot2.PasspointConfiguration;
|
||||
import android.net.wifi.hotspot2.omadm.PpsMoParser;
|
||||
import android.net.wifi.hotspot2.pps.Credential;
|
||||
import android.net.wifi.hotspot2.pps.HomeSp;
|
||||
import android.net.wifi.hotspot2.pps.Policy;
|
||||
import android.net.wifi.hotspot2.pps.UpdateParameter;
|
||||
import android.test.AndroidTestCase;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.text.DateFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* CTS tests for PPS MO (PerProviderSubscription Management Object) XML string parsing API.
|
||||
*/
|
||||
public class PpsMoParserTest extends AndroidTestCase {
|
||||
private static final String PPS_MO_XML_FILE = "assets/PerProviderSubscription.xml";
|
||||
|
||||
/**
|
||||
* Read the content of the given resource file into a String.
|
||||
*
|
||||
* @param filename String name of the file
|
||||
* @return String
|
||||
* @throws IOException
|
||||
*/
|
||||
private String loadResourceFile(String filename) throws IOException {
|
||||
InputStream in = getClass().getClassLoader().getResourceAsStream(filename);
|
||||
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
|
||||
StringBuilder builder = new StringBuilder();
|
||||
String line;
|
||||
while ((line = reader.readLine()) != null) {
|
||||
builder.append(line).append("\n");
|
||||
}
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a {@link PasspointConfiguration} that matches the configuration specified in the
|
||||
* XML file {@link #PPS_MO_XML_FILE}.
|
||||
*
|
||||
* @return {@link PasspointConfiguration}
|
||||
*/
|
||||
private PasspointConfiguration generateConfigurationFromPPSMOTree() throws Exception {
|
||||
DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
|
||||
byte[] certFingerprint = new byte[32];
|
||||
Arrays.fill(certFingerprint, (byte) 0x1f);
|
||||
|
||||
PasspointConfiguration config = new PasspointConfiguration();
|
||||
config.setUpdateIdentifier(12);
|
||||
config.setCredentialPriority(99);
|
||||
|
||||
// AAA Server trust root.
|
||||
Map<String, byte[]> trustRootCertList = new HashMap<>();
|
||||
trustRootCertList.put("server1.trust.root.com", certFingerprint);
|
||||
config.setTrustRootCertList(trustRootCertList);
|
||||
|
||||
// Subscription update.
|
||||
UpdateParameter subscriptionUpdate = new UpdateParameter();
|
||||
subscriptionUpdate.setUpdateIntervalInMinutes(120);
|
||||
subscriptionUpdate.setUpdateMethod(UpdateParameter.UPDATE_METHOD_SSP);
|
||||
subscriptionUpdate.setRestriction(UpdateParameter.UPDATE_RESTRICTION_ROAMING_PARTNER);
|
||||
subscriptionUpdate.setServerUri("subscription.update.com");
|
||||
subscriptionUpdate.setUsername("subscriptionUser");
|
||||
subscriptionUpdate.setBase64EncodedPassword("subscriptionPass");
|
||||
subscriptionUpdate.setTrustRootCertUrl("subscription.update.cert.com");
|
||||
subscriptionUpdate.setTrustRootCertSha256Fingerprint(certFingerprint);
|
||||
config.setSubscriptionUpdate(subscriptionUpdate);
|
||||
|
||||
// Subscription parameters.
|
||||
config.setSubscriptionCreationTimeInMs(format.parse("2016-02-01T10:00:00Z").getTime());
|
||||
config.setSubscriptionExpirationTimeInMs(format.parse("2016-03-01T10:00:00Z").getTime());
|
||||
config.setSubscriptionType("Gold");
|
||||
config.setUsageLimitDataLimit(921890);
|
||||
config.setUsageLimitStartTimeInMs(format.parse("2016-12-01T10:00:00Z").getTime());
|
||||
config.setUsageLimitTimeLimitInMinutes(120);
|
||||
config.setUsageLimitUsageTimePeriodInMinutes(99910);
|
||||
|
||||
// HomeSP configuration.
|
||||
HomeSp homeSp = new HomeSp();
|
||||
homeSp.setFriendlyName("Century House");
|
||||
homeSp.setFqdn("mi6.co.uk");
|
||||
homeSp.setRoamingConsortiumOis(new long[] {0x112233L, 0x445566L});
|
||||
homeSp.setIconUrl("icon.test.com");
|
||||
Map<String, Long> homeNetworkIds = new HashMap<>();
|
||||
homeNetworkIds.put("TestSSID", 0x12345678L);
|
||||
homeNetworkIds.put("NullHESSID", null);
|
||||
homeSp.setHomeNetworkIds(homeNetworkIds);
|
||||
homeSp.setMatchAllOis(new long[] {0x11223344});
|
||||
homeSp.setMatchAnyOis(new long[] {0x55667788});
|
||||
homeSp.setOtherHomePartners(new String[] {"other.fqdn.com"});
|
||||
config.setHomeSp(homeSp);
|
||||
|
||||
// Credential configuration.
|
||||
Credential credential = new Credential();
|
||||
credential.setCreationTimeInMs(format.parse("2016-01-01T10:00:00Z").getTime());
|
||||
credential.setExpirationTimeInMs(format.parse("2016-02-01T10:00:00Z").getTime());
|
||||
credential.setRealm("shaken.stirred.com");
|
||||
credential.setCheckAaaServerCertStatus(true);
|
||||
Credential.UserCredential userCredential = new Credential.UserCredential();
|
||||
userCredential.setUsername("james");
|
||||
userCredential.setPassword("Ym9uZDAwNw==");
|
||||
userCredential.setMachineManaged(true);
|
||||
userCredential.setSoftTokenApp("TestApp");
|
||||
userCredential.setAbleToShare(true);
|
||||
userCredential.setEapType(21);
|
||||
userCredential.setNonEapInnerMethod("MS-CHAP-V2");
|
||||
credential.setUserCredential(userCredential);
|
||||
Credential.CertificateCredential certCredential = new Credential.CertificateCredential();
|
||||
certCredential.setCertType("x509v3");
|
||||
certCredential.setCertSha256Fingerprint(certFingerprint);
|
||||
credential.setCertCredential(certCredential);
|
||||
Credential.SimCredential simCredential = new Credential.SimCredential();
|
||||
simCredential.setImsi("imsi");
|
||||
simCredential.setEapType(24);
|
||||
credential.setSimCredential(simCredential);
|
||||
config.setCredential(credential);
|
||||
|
||||
// Policy configuration.
|
||||
Policy policy = new Policy();
|
||||
List<Policy.RoamingPartner> preferredRoamingPartnerList = new ArrayList<>();
|
||||
Policy.RoamingPartner partner1 = new Policy.RoamingPartner();
|
||||
partner1.setFqdn("test1.fqdn.com");
|
||||
partner1.setFqdnExactMatch(true);
|
||||
partner1.setPriority(127);
|
||||
partner1.setCountries("us,fr");
|
||||
Policy.RoamingPartner partner2 = new Policy.RoamingPartner();
|
||||
partner2.setFqdn("test2.fqdn.com");
|
||||
partner2.setFqdnExactMatch(false);
|
||||
partner2.setPriority(200);
|
||||
partner2.setCountries("*");
|
||||
preferredRoamingPartnerList.add(partner1);
|
||||
preferredRoamingPartnerList.add(partner2);
|
||||
policy.setPreferredRoamingPartnerList(preferredRoamingPartnerList);
|
||||
policy.setMinHomeDownlinkBandwidth(23412);
|
||||
policy.setMinHomeUplinkBandwidth(9823);
|
||||
policy.setMinRoamingDownlinkBandwidth(9271);
|
||||
policy.setMinRoamingUplinkBandwidth(2315);
|
||||
policy.setExcludedSsidList(new String[] {"excludeSSID"});
|
||||
Map<Integer, String> requiredProtoPortMap = new HashMap<>();
|
||||
requiredProtoPortMap.put(12, "34,92,234");
|
||||
policy.setRequiredProtoPortMap(requiredProtoPortMap);
|
||||
policy.setMaximumBssLoadValue(23);
|
||||
UpdateParameter policyUpdate = new UpdateParameter();
|
||||
policyUpdate.setUpdateIntervalInMinutes(120);
|
||||
policyUpdate.setUpdateMethod(UpdateParameter.UPDATE_METHOD_OMADM);
|
||||
policyUpdate.setRestriction(UpdateParameter.UPDATE_RESTRICTION_HOMESP);
|
||||
policyUpdate.setServerUri("policy.update.com");
|
||||
policyUpdate.setUsername("updateUser");
|
||||
policyUpdate.setBase64EncodedPassword("updatePass");
|
||||
policyUpdate.setTrustRootCertUrl("update.cert.com");
|
||||
policyUpdate.setTrustRootCertSha256Fingerprint(certFingerprint);
|
||||
policy.setPolicyUpdate(policyUpdate);
|
||||
config.setPolicy(policy);
|
||||
return config;
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse and verify all supported fields under PPS MO tree.
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testParsePPSMOTree() throws Exception {
|
||||
String ppsMoTree = loadResourceFile(PPS_MO_XML_FILE);
|
||||
PasspointConfiguration expectedConfig = generateConfigurationFromPPSMOTree();
|
||||
PasspointConfiguration actualConfig = PpsMoParser.parseMoText(ppsMoTree);
|
||||
assertTrue(actualConfig.equals(expectedConfig));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user