make some better use of mocks during unit tests

This commit is contained in:
Sebastian Stenzel
2015-12-07 14:59:12 +01:00
parent 0697e19b01
commit 97a72ecbf7
15 changed files with 252 additions and 28 deletions
@@ -9,7 +9,7 @@ import javax.inject.Singleton;
import org.cryptomator.crypto.Cryptor;
import org.cryptomator.crypto.SamplingCryptorDecorator;
import org.cryptomator.crypto.aes256.Aes256Cryptor;
import org.cryptomator.crypto.aes256.CryptoModule;
import org.cryptomator.ui.model.VaultObjectMapperProvider;
import org.cryptomator.ui.settings.Settings;
import org.cryptomator.ui.settings.SettingsProvider;
@@ -26,7 +26,7 @@ import dagger.Module;
import dagger.Provides;
import javafx.application.Application;
@Module
@Module(includes = CryptoModule.class)
class CryptomatorModule {
private final Application application;
@@ -90,8 +90,9 @@ class CryptomatorModule {
}
@Provides
Cryptor provideCryptor() {
return SamplingCryptorDecorator.decorate(new Aes256Cryptor());
@Named("SamplingCryptor")
Cryptor provideCryptor(Cryptor cryptor) {
return SamplingCryptorDecorator.decorate(cryptor);
}
private <T> T closeLater(T object, Closer<T> closer) {
@@ -9,6 +9,7 @@
package org.cryptomator.ui.controllers;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Comparator;
import java.util.HashMap;
@@ -25,6 +26,7 @@ import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.cookie.CookiePolicy;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.SystemUtils;
import org.cryptomator.ui.settings.Settings;
import org.slf4j.Logger;
@@ -140,8 +142,9 @@ public class WelcomeController extends AbstractFXMLViewController {
client.getParams().setConnectionManagerTimeout(5000);
try {
client.executeMethod(method);
if (method.getStatusCode() == HttpStatus.SC_OK) {
final byte[] responseData = method.getResponseBody();
final InputStream responseBodyStream = method.getResponseBodyAsStream();
if (method.getStatusCode() == HttpStatus.SC_OK && responseBodyStream != null) {
final byte[] responseData = IOUtils.toByteArray(responseBodyStream);
final ObjectMapper mapper = new ObjectMapper();
final Map<String, String> map = mapper.readValue(responseData, new TypeReference<HashMap<String, String>>() {
});
@@ -3,6 +3,7 @@ package org.cryptomator.ui.model;
import java.nio.file.Path;
import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Provider;
import javax.inject.Singleton;
@@ -20,7 +21,7 @@ public class VaultFactory {
private final DeferredCloser closer;
@Inject
public VaultFactory(WebDavServer server, Provider<Cryptor> cryptorProvider, WebDavMounter mounter, DeferredCloser closer) {
public VaultFactory(WebDavServer server, @Named("SamplingCryptor") Provider<Cryptor> cryptorProvider, WebDavMounter mounter, DeferredCloser closer) {
this.server = server;
this.cryptorProvider = cryptorProvider;
this.mounter = mounter;