diff options
author | cyBerta <cyberta@riseup.net> | 2023-08-02 22:45:26 +0200 |
---|---|---|
committer | cyBerta <cyberta@riseup.net> | 2023-08-02 22:45:26 +0200 |
commit | 64449816223cb9abb6e75310c03dcc9353a42ee4 (patch) | |
tree | 66cb86d382cc67267441a10320f7e13cd125e66b /app/src/test/java/se/leap/bitmaskclient/testutils | |
parent | 1ac4ec903f0d10b65810b720f76f08df969c3bec (diff) |
use single instance of shared prefernces across the app, this reduces the laggyness of the UI noticably
Diffstat (limited to 'app/src/test/java/se/leap/bitmaskclient/testutils')
-rw-r--r-- | app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java | 37 |
1 files changed, 33 insertions, 4 deletions
diff --git a/app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java b/app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java index 4ef8b9cc..91823433 100644 --- a/app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java +++ b/app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java @@ -469,7 +469,7 @@ public class MockHelper { public static void mockPreferenceHelper(final Provider providerFromPrefs) { // FIXME use MockSharedPreferences instead of provider mockStatic(PreferenceHelper.class); - when(getFromPersistedProvider(anyString(), anyString(), any(SharedPreferences.class))).thenAnswer(new Answer<String>() { + when(getFromPersistedProvider(anyString(), anyString())).thenAnswer(new Answer<String>() { @Override public String answer(InvocationOnMock invocation) throws Throwable { String key = (String) invocation.getArguments()[0]; @@ -495,7 +495,7 @@ public class MockHelper { return null; } }); - when(getLongFromPersistedProvider(anyString(), anyString(), any(SharedPreferences.class))).thenAnswer(new Answer<Long>() { + when(getLongFromPersistedProvider(anyString(), anyString())).thenAnswer(new Answer<Long>() { @Override public Long answer(InvocationOnMock invocation) throws Throwable { String key = (String) invocation.getArguments()[0]; @@ -508,7 +508,7 @@ public class MockHelper { return 0L; } }); - when(getStringSetFromPersistedProvider(anyString(), anyString(), any(SharedPreferences.class))).thenAnswer(new Answer<Set<String>>() { + when(getStringSetFromPersistedProvider(anyString(), anyString())).thenAnswer(new Answer<Set<String>>() { @Override public Set<String> answer(InvocationOnMock invocation) throws Throwable { String key = (String) invocation.getArguments()[0]; @@ -519,14 +519,43 @@ public class MockHelper { return null; } }); + when(PreferenceHelper.hasKey(anyString())).then(new Answer<Boolean>() { + @Override + public Boolean answer(InvocationOnMock invocation) throws Throwable { + String key = (String) invocation.getArguments()[0]; + if (key!= null && key.contains(providerFromPrefs.getDomain())) { + key = key.substring(0, key.indexOf(providerFromPrefs.getDomain()) - 1 /* -1 -> "." at the end */); + } + switch (key) { + case PROVIDER_PRIVATE_KEY: + return providerFromPrefs.getPrivateKey() != null; + case PROVIDER_VPN_CERTIFICATE: + return providerFromPrefs.getVpnCertificate() != null; + case Provider.KEY: + return providerFromPrefs.getDefinition().keys().hasNext(); + case Provider.CA_CERT_FINGERPRINT: + return providerFromPrefs.getCaCertFingerprint().length() > 1; + case Provider.CA_CERT: + return providerFromPrefs.getCaCert() != null; + case Provider.GEOIP_URL: + return !providerFromPrefs.getGeoipUrl().isDefault(); + case Provider.MOTD_URL: + return !providerFromPrefs.getMotdUrl().isDefault(); + case PROVIDER_MOTD: + return providerFromPrefs.getMotdJson().keys().hasNext(); + } + return false; + } + }); } public static void mockPreferenceHelper(MockSharedPreferences preferences) { mockStatic(PreferenceHelper.class); - when(getEipDefinitionFromPreferences(any(SharedPreferences.class))).thenAnswer(new Answer<JSONObject>() { + when(getEipDefinitionFromPreferences()).thenAnswer(new Answer<JSONObject>() { @Override public JSONObject answer(InvocationOnMock invocation) throws Throwable { + return getEipDefinitionFromPreferences(preferences); } }); |