Remove unit test changes in "[Passpoint] Changes to Unique ID"
This partially reverts commit c527eed123.
Reason for revert: Unit tests are out of sync with prebuilt Wifi mainline module
Bug: 168158154
Change-Id: Ia5e9ae3bcadace1a1c2ae53a56c67343db4bef71
Test: Treehugger
Merged-In: Ice11158078b5b86c721747b0d67ecfb09731a3c5
This commit is contained in:
@@ -214,35 +214,6 @@ public class FakeKeys {
|
||||
};
|
||||
public static final PrivateKey RSA_KEY1 = loadPrivateRSAKey(FAKE_RSA_KEY_1);
|
||||
|
||||
private static final String CLIENT_SUITE_B_RSA3072_CERT_STRING =
|
||||
"-----BEGIN CERTIFICATE-----\n"
|
||||
+ "MIIERzCCAq8CFDopjyNgaj+c2TN2k06h7okEWpHJMA0GCSqGSIb3DQEBDAUAMF4x\n"
|
||||
+ "CzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTEMMAoGA1UEBwwDTVRWMRAwDgYDVQQK\n"
|
||||
+ "DAdBbmRyb2lkMQ4wDAYDVQQLDAVXaS1GaTESMBAGA1UEAwwJdW5pdGVzdENBMB4X\n"
|
||||
+ "DTIwMDcyMTAyMjkxMVoXDTMwMDUzMDAyMjkxMVowYjELMAkGA1UEBhMCVVMxCzAJ\n"
|
||||
+ "BgNVBAgMAkNBMQwwCgYDVQQHDANNVFYxEDAOBgNVBAoMB0FuZHJvaWQxDjAMBgNV\n"
|
||||
+ "BAsMBVdpLUZpMRYwFAYDVQQDDA11bml0ZXN0Q2xpZW50MIIBojANBgkqhkiG9w0B\n"
|
||||
+ "AQEFAAOCAY8AMIIBigKCAYEAwSK3C5K5udtCKTnE14e8z2cZvwmB4Xe+a8+7QLud\n"
|
||||
+ "Hooc/lQzClgK4MbVUC0D3FE+U32C78SxKoTaRWtvPmNm+UaFT8KkwyUno/dv+2XD\n"
|
||||
+ "pd/zARQ+3FwAfWopAhEyCVSxwsCa+slQ4juRIMIuUC1Mm0NaptZyM3Tj/ICQEfpk\n"
|
||||
+ "o9qVIbiK6eoJMTkY8EWfAn7RTFdfR1OLuO0mVOjgLW9/+upYv6hZ19nAMAxw4QTJ\n"
|
||||
+ "x7lLwALX7B+tDYNEZHDqYL2zyvQWAj2HClere8QYILxkvktgBg2crEJJe4XbDH7L\n"
|
||||
+ "A3rrXmsiqf1ZbfFFEzK9NFqovL+qGh+zIP+588ShJFO9H/RDnDpiTnAFTWXQdTwg\n"
|
||||
+ "szSS0Vw2PB+JqEABAa9DeMvXT1Oy+NY3ItPHyy63nQZVI2rXANw4NhwS0Z6DF+Qs\n"
|
||||
+ "TNrj+GU7e4SG/EGR8SvldjYfQTWFLg1l/UT1hOOkQZwdsaW1zgKyeuiFB2KdMmbA\n"
|
||||
+ "Sq+Ux1L1KICo0IglwWcB/8nnAgMBAAEwDQYJKoZIhvcNAQEMBQADggGBAMYwJkNw\n"
|
||||
+ "BaCviKFmReDTMwWPRy4AMNViEeqAXgERwDEKwM7efjsaj5gctWfKsxX6UdLzkhgg\n"
|
||||
+ "6S/T6PxVWKzJ6l7SoOuTa6tMQOZp+h3R1mdfEQbw8B5cXBxZ+batzAai6Fiy1FKS\n"
|
||||
+ "/ka3INbcGfYuIYghfTrb4/NJKN06ZaQ1bpPwq0e4gN7800T2nbawvSf7r+8ZLcG3\n"
|
||||
+ "6bGCjRMwDSIipNvOwoj3TG315XC7TccX5difQ4sKOY+d2MkVJ3RiO0Ciw2ZbEW8d\n"
|
||||
+ "1FH5vUQJWnBUfSFznosGzLwH3iWfqlP+27jNE+qB2igEwCRFgVAouURx5ou43xuX\n"
|
||||
+ "qf6JkdI3HTJGLIWxkp7gOeln4dEaYzKjYw+P0VqJvKVqQ0IXiLjHgE0J9p0vgyD6\n"
|
||||
+ "HVVcP7U8RgqrbIjL1QgHU4KBhGi+WSUh/mRplUCNvHgcYdcHi/gHpj/j6ubwqIGV\n"
|
||||
+ "z4iSolAHYTmBWcLyE0NgpzE6ntp+53r2KaUJA99l2iGVzbWTwqPSm0XAVw==\n"
|
||||
+ "-----END CERTIFICATE-----\n";
|
||||
public static final X509Certificate CLIENT_SUITE_B_RSA3072_CERT =
|
||||
loadCertificate(CLIENT_SUITE_B_RSA3072_CERT_STRING);
|
||||
|
||||
private static X509Certificate loadCertificate(String blob) {
|
||||
try {
|
||||
final CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
|
||||
|
||||
@@ -23,8 +23,6 @@ import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import android.net.wifi.EAPConstants;
|
||||
import android.net.wifi.FakeKeys;
|
||||
import android.net.wifi.hotspot2.pps.Credential;
|
||||
import android.net.wifi.hotspot2.pps.HomeSp;
|
||||
import android.os.Parcel;
|
||||
@@ -34,11 +32,6 @@ import androidx.test.filters.SmallTest;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.security.MessageDigest;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.security.PrivateKey;
|
||||
import java.security.cert.CertificateEncodingException;
|
||||
import java.security.cert.X509Certificate;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@@ -390,39 +383,19 @@ public class PasspointConfigurationTest {
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is the same for two instances with different
|
||||
* HomeSp node but same FQDN
|
||||
* Verify that the unique identifier generated is different for two instances with different
|
||||
* HomeSp node
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdDifferentHomeSpSameFqdn() throws Exception {
|
||||
public void validateUniqueIdDifferentHomeSp() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
|
||||
// Modify config2's RCOIs and friendly name to a different set of values
|
||||
// Modify config2's RCOIs to a different set of values
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
HomeSp homeSp = config2.getHomeSp();
|
||||
homeSp.setRoamingConsortiumOis(new long[] {0xaa, 0xbb});
|
||||
homeSp.setFriendlyName("Some other name");
|
||||
config2.setHomeSp(homeSp);
|
||||
|
||||
assertEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is different for two instances with the same
|
||||
* HomeSp node but different FQDN
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdSameHomeSpDifferentFqdn() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
|
||||
// Modify config2's FQDN to a different value
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
HomeSp homeSp = config2.getHomeSp();
|
||||
homeSp.setFqdn("fqdn2.com");
|
||||
config2.setHomeSp(homeSp);
|
||||
|
||||
assertNotEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
@@ -430,15 +403,15 @@ public class PasspointConfigurationTest {
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is different for two instances with different
|
||||
* SIM Credential node
|
||||
* Credential node
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdDifferentSimCredential() throws Exception {
|
||||
public void validateUniqueIdDifferentCredential() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
|
||||
// Modify config2's realm and SIM credential to a different set of values
|
||||
// Modify config2's RCOIs to a different set of values
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
Credential credential = config2.getCredential();
|
||||
credential.setRealm("realm2.example.com");
|
||||
@@ -448,157 +421,6 @@ public class PasspointConfigurationTest {
|
||||
assertNotEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is different for two instances with different
|
||||
* Realm in the Credential node
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdDifferentRealm() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
|
||||
// Modify config2's realm to a different set of values
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
Credential credential = config2.getCredential();
|
||||
credential.setRealm("realm2.example.com");
|
||||
config2.setCredential(credential);
|
||||
|
||||
assertNotEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is the same for two instances with different
|
||||
* password and same username in the User Credential node
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdSameUserInUserCredential() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
Credential credential = createCredentialWithUserCredential("user", "passwd");
|
||||
config1.setCredential(credential);
|
||||
|
||||
// Modify config2's Passpowrd to a different set of values
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
credential = createCredentialWithUserCredential("user", "newpasswd");
|
||||
config2.setCredential(credential);
|
||||
|
||||
assertEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is different for two instances with different
|
||||
* username in the User Credential node
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdDifferentUserCredential() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
Credential credential = createCredentialWithUserCredential("user", "passwd");
|
||||
config1.setCredential(credential);
|
||||
|
||||
// Modify config2's username to a different value
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
credential = createCredentialWithUserCredential("user2", "passwd");
|
||||
config2.setCredential(credential);
|
||||
|
||||
assertNotEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier generated is different for two instances with different
|
||||
* Cert Credential node
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
@Test
|
||||
public void validateUniqueIdDifferentCertCredential() throws Exception {
|
||||
PasspointConfiguration config1 = PasspointTestUtils.createConfig();
|
||||
Credential credential = createCredentialWithCertificateCredential(true, true);
|
||||
config1.setCredential(credential);
|
||||
|
||||
// Modify config2's cert credential to a different set of values
|
||||
PasspointConfiguration config2 = PasspointTestUtils.createConfig();
|
||||
credential = createCredentialWithCertificateCredential(false, false);
|
||||
config2.setCredential(credential);
|
||||
|
||||
assertNotEquals(config1.getUniqueId(), config2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper function for generating certificate credential for testing.
|
||||
*
|
||||
* @return {@link Credential}
|
||||
*/
|
||||
private static Credential createCredentialWithCertificateCredential(Boolean useCaCert0,
|
||||
Boolean useCert0)
|
||||
throws NoSuchAlgorithmException, CertificateEncodingException {
|
||||
Credential.CertificateCredential certCred = new Credential.CertificateCredential();
|
||||
certCred.setCertType("x509v3");
|
||||
if (useCert0) {
|
||||
certCred.setCertSha256Fingerprint(
|
||||
MessageDigest.getInstance("SHA-256").digest(FakeKeys.CLIENT_CERT.getEncoded()));
|
||||
} else {
|
||||
certCred.setCertSha256Fingerprint(MessageDigest.getInstance("SHA-256")
|
||||
.digest(FakeKeys.CLIENT_SUITE_B_RSA3072_CERT.getEncoded()));
|
||||
}
|
||||
return createCredential(null, certCred, null, new X509Certificate[] {FakeKeys.CLIENT_CERT},
|
||||
FakeKeys.RSA_KEY1, useCaCert0 ? FakeKeys.CA_CERT0 : FakeKeys.CA_CERT1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper function for generating user credential for testing.
|
||||
*
|
||||
* @return {@link Credential}
|
||||
*/
|
||||
private static Credential createCredentialWithUserCredential(String username, String password) {
|
||||
Credential.UserCredential userCred = new Credential.UserCredential();
|
||||
userCred.setUsername(username);
|
||||
userCred.setPassword(password);
|
||||
userCred.setMachineManaged(true);
|
||||
userCred.setAbleToShare(true);
|
||||
userCred.setSoftTokenApp("TestApp");
|
||||
userCred.setEapType(EAPConstants.EAP_TTLS);
|
||||
userCred.setNonEapInnerMethod("MS-CHAP");
|
||||
return createCredential(userCred, null, null, null, null, FakeKeys.CA_CERT0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper function for generating Credential for testing.
|
||||
*
|
||||
* @param userCred Instance of UserCredential
|
||||
* @param certCred Instance of CertificateCredential
|
||||
* @param simCred Instance of SimCredential
|
||||
* @param clientCertificateChain Chain of client certificates
|
||||
* @param clientPrivateKey Client private key
|
||||
* @param caCerts CA certificates
|
||||
* @return {@link Credential}
|
||||
*/
|
||||
private static Credential createCredential(Credential.UserCredential userCred,
|
||||
Credential.CertificateCredential certCred,
|
||||
Credential.SimCredential simCred,
|
||||
X509Certificate[] clientCertificateChain, PrivateKey clientPrivateKey,
|
||||
X509Certificate... caCerts) {
|
||||
Credential cred = new Credential();
|
||||
cred.setCreationTimeInMillis(123455L);
|
||||
cred.setExpirationTimeInMillis(2310093L);
|
||||
cred.setRealm("realm");
|
||||
cred.setCheckAaaServerCertStatus(true);
|
||||
cred.setUserCredential(userCred);
|
||||
cred.setCertCredential(certCred);
|
||||
cred.setSimCredential(simCred);
|
||||
if (caCerts != null && caCerts.length == 1) {
|
||||
cred.setCaCertificate(caCerts[0]);
|
||||
} else {
|
||||
cred.setCaCertificates(caCerts);
|
||||
}
|
||||
cred.setClientCertificateChain(clientCertificateChain);
|
||||
cred.setClientPrivateKey(clientPrivateKey);
|
||||
return cred;
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that the unique identifier API generates an exception if HomeSP is not initialized.
|
||||
*
|
||||
|
||||
@@ -593,10 +593,10 @@ public class CredentialTest {
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that unique identifiers are different for a credential with different username
|
||||
* Verify that unique identifiers are different for a credential with different values
|
||||
*/
|
||||
@Test
|
||||
public void testUniqueIdDifferentForUserCredentialsWithDifferentUsername() throws Exception {
|
||||
public void testUniqueIdDifferentForUserCredentialsWithDifferentValues() throws Exception {
|
||||
Credential userCred1 = createCredentialWithUserCredential();
|
||||
Credential userCred2 = createCredentialWithUserCredential();
|
||||
userCred2.getUserCredential().setUsername("anotheruser");
|
||||
@@ -605,24 +605,7 @@ public class CredentialTest {
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that unique identifiers are different for a credential with different password and
|
||||
* other values other than username
|
||||
*/
|
||||
@Test
|
||||
public void testUniqueIdSameForUserCredentialsWithDifferentPassword() throws Exception {
|
||||
Credential userCred1 = createCredentialWithUserCredential();
|
||||
Credential userCred2 = createCredentialWithUserCredential();
|
||||
userCred2.getUserCredential().setPassword("someotherpassword!");
|
||||
userCred2.getUserCredential().setMachineManaged(false);
|
||||
userCred2.getUserCredential().setAbleToShare(false);
|
||||
userCred2.getUserCredential().setSoftTokenApp("TestApp2");
|
||||
userCred2.getUserCredential().setNonEapInnerMethod("PAP");
|
||||
|
||||
assertEquals(userCred1.getUniqueId(), userCred2.getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
* Verify that unique identifiers are different for a cert credential with different values
|
||||
* Verify that unique identifiers are different for a credential with different values
|
||||
*/
|
||||
@Test
|
||||
public void testUniqueIdDifferentForCertCredentialsWithDifferentValues() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user