summaryrefslogtreecommitdiff
path: root/app/src/test/java/se/leap/bitmaskclient/testutils
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2018-03-18 03:37:20 +0100
committercyBerta <cyberta@riseup.net>2018-03-18 03:37:20 +0100
commitac7204c4daa0ae7e68ddfb89845c4f115b8a646c (patch)
tree4c88f84b430fda52d599c2892e45f576b63a1d9b /app/src/test/java/se/leap/bitmaskclient/testutils
parenta95567b4bbb2319636a79cc5e8d6a7921df9f4d1 (diff)
refactor ConfigHelper, split into multiple helper classes
Diffstat (limited to 'app/src/test/java/se/leap/bitmaskclient/testutils')
-rw-r--r--app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java39
1 files changed, 28 insertions, 11 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 d85b050f..d68296a8 100644
--- a/app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java
+++ b/app/src/test/java/se/leap/bitmaskclient/testutils/MockHelper.java
@@ -14,6 +14,7 @@ import org.json.JSONObject;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;
+import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
@@ -29,12 +30,15 @@ import java.util.Map;
import java.util.Set;
import okhttp3.OkHttpClient;
-import se.leap.bitmaskclient.ConfigHelper;
import se.leap.bitmaskclient.OkHttpClientGenerator;
import se.leap.bitmaskclient.Provider;
import se.leap.bitmaskclient.R;
import se.leap.bitmaskclient.testutils.BackendMockResponses.BackendMockProvider;
import se.leap.bitmaskclient.testutils.matchers.BundleMatcher;
+import se.leap.bitmaskclient.utils.ConfigHelper;
+import se.leap.bitmaskclient.utils.FileHelper;
+import se.leap.bitmaskclient.utils.InputStreamHelper;
+import se.leap.bitmaskclient.utils.PreferenceHelper;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
@@ -49,6 +53,8 @@ import static org.mockito.Mockito.when;
import static org.powermock.api.mockito.PowerMockito.mockStatic;
import static se.leap.bitmaskclient.Constants.PROVIDER_PRIVATE_KEY;
import static se.leap.bitmaskclient.Constants.PROVIDER_VPN_CERTIFICATE;
+import static se.leap.bitmaskclient.utils.FileHelper.createFile;
+import static se.leap.bitmaskclient.utils.PreferenceHelper.getFromPersistedProvider;
/**
* Created by cyberta on 29.01.18.
@@ -343,22 +349,36 @@ public class MockHelper {
return resultReceiver;
}
- public static void mockConfigHelperForFileInputStream() throws FileNotFoundException {
- mockStatic(ConfigHelper.class);
- when(ConfigHelper.loadInputStreamAsString(any(InputStream.class))).thenCallRealMethod();
- when(ConfigHelper.getInputStreamFrom(anyString())).thenAnswer(new Answer<InputStream>() {
+ public static void mockInputStreamHelper() throws FileNotFoundException {
+ mockStatic(InputStreamHelper.class);
+ when(InputStreamHelper.loadInputStreamAsString(any(InputStream.class))).thenCallRealMethod();
+ when(InputStreamHelper.getInputStreamFrom(anyString())).thenAnswer(new Answer<InputStream>() {
@Override
public InputStream answer(InvocationOnMock invocation) throws Throwable {
String filename = (String) invocation.getArguments()[0];
return getClass().getClassLoader().getResourceAsStream(filename);
}
});
+
+ }
+
+ public static void mockFileHelper(final File mockedFile) throws FileNotFoundException {
+ mockStatic(FileHelper.class);
+ when(createFile(any(File.class), anyString())).thenReturn(mockedFile);
}
- public static void mockConfigHelper(String mockedFingerprint, final Provider providerFromPrefs) throws CertificateEncodingException, NoSuchAlgorithmException {
+ public static void mockConfigHelper(String mockedFingerprint) throws CertificateEncodingException, NoSuchAlgorithmException {
// FIXME use MockSharedPreferences instead of provider
mockStatic(ConfigHelper.class);
- when(ConfigHelper.getFromPersistedProvider(anyString(), anyString(), any(SharedPreferences.class))).thenAnswer(new Answer<String>() {
+ when(ConfigHelper.getFingerprintFromCertificate(any(X509Certificate.class), anyString())).thenReturn(mockedFingerprint);
+ when(ConfigHelper.checkErroneousDownload(anyString())).thenCallRealMethod();
+ when(ConfigHelper.parseX509CertificateFromString(anyString())).thenCallRealMethod();
+ }
+
+ 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>() {
@Override
public String answer(InvocationOnMock invocation) throws Throwable {
String key = (String) invocation.getArguments()[0];
@@ -375,11 +395,8 @@ public class MockHelper {
return null;
}
});
- when(ConfigHelper.getFingerprintFromCertificate(any(X509Certificate.class), anyString())).thenReturn(mockedFingerprint);
- when(ConfigHelper.checkErroneousDownload(anyString())).thenCallRealMethod();
- when(ConfigHelper.parseX509CertificateFromString(anyString())).thenCallRealMethod();
- when(ConfigHelper.loadInputStreamAsString(any(InputStream.class))).thenCallRealMethod();
}
+
public static void mockFingerprintForCertificate(String mockedFingerprint) throws CertificateEncodingException, NoSuchAlgorithmException {
mockStatic(ConfigHelper.class);
when(ConfigHelper.getFingerprintFromCertificate(any(X509Certificate.class), anyString())).thenReturn(mockedFingerprint);