Create minimal AccountManager interface.

This commit is contained in:
akwizgran
2018-07-20 15:08:53 +01:00
parent 8283760e8a
commit cb29c9bf32
18 changed files with 103 additions and 35 deletions

View File

@@ -0,0 +1,6 @@
package org.briarproject.bramble.api.account;
public interface AccountManager {
boolean hasDatabaseKey();
}

View File

@@ -1,5 +1,6 @@
package org.briarproject.bramble; package org.briarproject.bramble;
import org.briarproject.bramble.account.AccountModule;
import org.briarproject.bramble.client.ClientModule; import org.briarproject.bramble.client.ClientModule;
import org.briarproject.bramble.contact.ContactModule; import org.briarproject.bramble.contact.ContactModule;
import org.briarproject.bramble.crypto.CryptoExecutorModule; import org.briarproject.bramble.crypto.CryptoExecutorModule;
@@ -26,6 +27,7 @@ import org.briarproject.bramble.versioning.VersioningModule;
import dagger.Module; import dagger.Module;
@Module(includes = { @Module(includes = {
AccountModule.class,
ClientModule.class, ClientModule.class,
ContactModule.class, ContactModule.class,
CryptoModule.class, CryptoModule.class,

View File

@@ -0,0 +1,21 @@
package org.briarproject.bramble.account;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.db.DatabaseConfig;
import javax.inject.Inject;
class AccountManagerImpl implements AccountManager {
private final DatabaseConfig databaseConfig;
@Inject
AccountManagerImpl(DatabaseConfig databaseConfig) {
this.databaseConfig = databaseConfig;
}
@Override
public boolean hasDatabaseKey() {
return databaseConfig.getEncryptionKey() != null;
}
}

View File

@@ -0,0 +1,18 @@
package org.briarproject.bramble.account;
import org.briarproject.bramble.api.account.AccountManager;
import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;
@Module
public class AccountModule {
@Provides
@Singleton
AccountManager provideAccountManager(AccountManagerImpl accountManager) {
return accountManager;
}
}

View File

@@ -5,6 +5,7 @@ import android.content.SharedPreferences;
import org.briarproject.bramble.BrambleAndroidModule; import org.briarproject.bramble.BrambleAndroidModule;
import org.briarproject.bramble.BrambleCoreEagerSingletons; import org.briarproject.bramble.BrambleCoreEagerSingletons;
import org.briarproject.bramble.BrambleCoreModule; import org.briarproject.bramble.BrambleCoreModule;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.contact.ContactExchangeTask; import org.briarproject.bramble.api.contact.ContactExchangeTask;
import org.briarproject.bramble.api.contact.ContactManager; import org.briarproject.bramble.api.contact.ContactManager;
import org.briarproject.bramble.api.crypto.CryptoComponent; import org.briarproject.bramble.api.crypto.CryptoComponent;
@@ -151,6 +152,8 @@ public interface AndroidComponent
@IoExecutor @IoExecutor
Executor ioExecutor(); Executor ioExecutor();
AccountManager accountManager();
void inject(SignInReminderReceiver briarService); void inject(SignInReminderReceiver briarService);
void inject(BriarService briarService); void inject(BriarService briarService);

View File

@@ -17,7 +17,7 @@ import android.os.IBinder;
import android.support.v4.app.NotificationCompat; import android.support.v4.app.NotificationCompat;
import android.support.v4.content.ContextCompat; import android.support.v4.content.ContextCompat;
import org.briarproject.bramble.api.db.DatabaseConfig; import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.lifecycle.LifecycleManager; import org.briarproject.bramble.api.lifecycle.LifecycleManager;
import org.briarproject.bramble.api.lifecycle.LifecycleManager.StartResult; import org.briarproject.bramble.api.lifecycle.LifecycleManager.StartResult;
import org.briarproject.bramble.api.system.AndroidExecutor; import org.briarproject.bramble.api.system.AndroidExecutor;
@@ -75,12 +75,13 @@ public class BriarService extends Service {
private BroadcastReceiver receiver = null; private BroadcastReceiver receiver = null;
@Inject @Inject
protected DatabaseConfig databaseConfig; AccountManager accountManager;
// Fields that are accessed from background threads must be volatile // Fields that are accessed from background threads must be volatile
@Inject @Inject
protected volatile LifecycleManager lifecycleManager; volatile LifecycleManager lifecycleManager;
@Inject @Inject
protected volatile AndroidExecutor androidExecutor; volatile AndroidExecutor androidExecutor;
private volatile boolean started = false; private volatile boolean started = false;
@Override @Override
@@ -96,7 +97,7 @@ public class BriarService extends Service {
stopSelf(); stopSelf();
return; return;
} }
if (databaseConfig.getEncryptionKey() == null) { if (!accountManager.hasDatabaseKey()) {
LOG.info("No database key"); LOG.info("No database key");
stopSelf(); stopSelf();
return; return;

View File

@@ -61,7 +61,7 @@ public abstract class BriarActivity extends BaseActivity {
@Override @Override
public void onStart() { public void onStart() {
super.onStart(); super.onStart();
if (!briarController.hasEncryptionKey() && !isFinishing()) { if (!briarController.accountSignedIn() && !isFinishing()) {
Intent i = new Intent(this, PasswordActivity.class); Intent i = new Intent(this, PasswordActivity.class);
startActivityForResult(i, REQUEST_PASSWORD); startActivityForResult(i, REQUEST_PASSWORD);
} else if (SDK_INT >= 23) { } else if (SDK_INT >= 23) {
@@ -138,7 +138,7 @@ public abstract class BriarActivity extends BaseActivity {
} }
protected void signOut(boolean removeFromRecentApps) { protected void signOut(boolean removeFromRecentApps) {
if (briarController.hasEncryptionKey()) { if (briarController.accountSignedIn()) {
// Don't use UiResultHandler because we want the result even if // Don't use UiResultHandler because we want the result even if
// this activity has been destroyed // this activity has been destroyed
briarController.signOut(result -> runOnUiThread( briarController.signOut(result -> runOnUiThread(

View File

@@ -6,7 +6,7 @@ public interface BriarController extends ActivityLifecycleController {
void startAndBindService(); void startAndBindService();
boolean hasEncryptionKey(); boolean accountSignedIn();
/** /**
* Returns true via the handler when the app has dozed * Returns true via the handler when the app has dozed

View File

@@ -5,7 +5,7 @@ import android.content.Intent;
import android.os.IBinder; import android.os.IBinder;
import android.support.annotation.CallSuper; import android.support.annotation.CallSuper;
import org.briarproject.bramble.api.db.DatabaseConfig; import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.db.DatabaseExecutor; import org.briarproject.bramble.api.db.DatabaseExecutor;
import org.briarproject.bramble.api.db.DbException; import org.briarproject.bramble.api.db.DbException;
import org.briarproject.bramble.api.settings.Settings; import org.briarproject.bramble.api.settings.Settings;
@@ -33,8 +33,7 @@ public class BriarControllerImpl implements BriarController {
public static final String DOZE_ASK_AGAIN = "dozeAskAgain"; public static final String DOZE_ASK_AGAIN = "dozeAskAgain";
private final BriarServiceConnection serviceConnection; private final BriarServiceConnection serviceConnection;
private final DatabaseConfig databaseConfig; private final AccountManager accountManager;
@DatabaseExecutor
private final Executor databaseExecutor; private final Executor databaseExecutor;
private final SettingsManager settingsManager; private final SettingsManager settingsManager;
private final DozeWatchdog dozeWatchdog; private final DozeWatchdog dozeWatchdog;
@@ -44,12 +43,12 @@ public class BriarControllerImpl implements BriarController {
@Inject @Inject
BriarControllerImpl(BriarServiceConnection serviceConnection, BriarControllerImpl(BriarServiceConnection serviceConnection,
DatabaseConfig databaseConfig, AccountManager accountManager,
@DatabaseExecutor Executor databaseExecutor, @DatabaseExecutor Executor databaseExecutor,
SettingsManager settingsManager, DozeWatchdog dozeWatchdog, SettingsManager settingsManager, DozeWatchdog dozeWatchdog,
Activity activity) { Activity activity) {
this.serviceConnection = serviceConnection; this.serviceConnection = serviceConnection;
this.databaseConfig = databaseConfig; this.accountManager = accountManager;
this.databaseExecutor = databaseExecutor; this.databaseExecutor = databaseExecutor;
this.settingsManager = settingsManager; this.settingsManager = settingsManager;
this.dozeWatchdog = dozeWatchdog; this.dozeWatchdog = dozeWatchdog;
@@ -59,7 +58,7 @@ public class BriarControllerImpl implements BriarController {
@Override @Override
@CallSuper @CallSuper
public void onActivityCreate(Activity activity) { public void onActivityCreate(Activity activity) {
if (databaseConfig.getEncryptionKey() != null) startAndBindService(); if (accountManager.hasDatabaseKey()) startAndBindService();
} }
@Override @Override
@@ -84,8 +83,8 @@ public class BriarControllerImpl implements BriarController {
} }
@Override @Override
public boolean hasEncryptionKey() { public boolean accountSignedIn() {
return databaseConfig.getEncryptionKey() != null; return accountManager.hasDatabaseKey();
} }
@Override @Override

View File

@@ -4,6 +4,7 @@ import android.content.Context;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.support.v7.preference.PreferenceManager; import android.support.v7.preference.PreferenceManager;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.db.DatabaseConfig; import org.briarproject.bramble.api.db.DatabaseConfig;
import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
import org.briarproject.bramble.util.AndroidUtils; import org.briarproject.bramble.util.AndroidUtils;
@@ -34,12 +35,14 @@ public class ConfigControllerImpl implements ConfigController {
private final SharedPreferences briarPrefs; private final SharedPreferences briarPrefs;
private final File dbKeyFile, dbKeyBackupFile; private final File dbKeyFile, dbKeyBackupFile;
private final AccountManager accountManager;
protected final DatabaseConfig databaseConfig; protected final DatabaseConfig databaseConfig;
@Inject @Inject
public ConfigControllerImpl(SharedPreferences briarPrefs, public ConfigControllerImpl(SharedPreferences briarPrefs,
DatabaseConfig databaseConfig) { AccountManager accountManager, DatabaseConfig databaseConfig) {
this.briarPrefs = briarPrefs; this.briarPrefs = briarPrefs;
this.accountManager = accountManager;
this.databaseConfig = databaseConfig; this.databaseConfig = databaseConfig;
File keyDir = databaseConfig.getDatabaseKeyDirectory(); File keyDir = databaseConfig.getDatabaseKeyDirectory();
dbKeyFile = new File(keyDir, DB_KEY_FILENAME); dbKeyFile = new File(keyDir, DB_KEY_FILENAME);
@@ -166,6 +169,6 @@ public class ConfigControllerImpl implements ConfigController {
@Override @Override
public boolean accountSignedIn() { public boolean accountSignedIn() {
return databaseConfig.getEncryptionKey() != null; return accountManager.hasDatabaseKey();
} }
} }

View File

@@ -85,7 +85,7 @@ public class PasswordActivity extends BaseActivity {
public void onStart() { public void onStart() {
super.onStart(); super.onStart();
// If the user has already signed in, clean up this instance // If the user has already signed in, clean up this instance
if (briarController.hasEncryptionKey()) { if (briarController.accountSignedIn()) {
setResult(RESULT_OK); setResult(RESULT_OK);
finish(); finish();
} }

View File

@@ -2,6 +2,7 @@ package org.briarproject.briar.android.login;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.crypto.CryptoComponent; import org.briarproject.bramble.api.crypto.CryptoComponent;
import org.briarproject.bramble.api.crypto.CryptoExecutor; import org.briarproject.bramble.api.crypto.CryptoExecutor;
import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator; import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator;
@@ -33,10 +34,10 @@ public class PasswordControllerImpl extends ConfigControllerImpl
@Inject @Inject
PasswordControllerImpl(SharedPreferences briarPrefs, PasswordControllerImpl(SharedPreferences briarPrefs,
DatabaseConfig databaseConfig, AccountManager accountManager, DatabaseConfig databaseConfig,
@CryptoExecutor Executor cryptoExecutor, CryptoComponent crypto, @CryptoExecutor Executor cryptoExecutor, CryptoComponent crypto,
PasswordStrengthEstimator strengthEstimator) { PasswordStrengthEstimator strengthEstimator) {
super(briarPrefs, databaseConfig); super(briarPrefs, accountManager, databaseConfig);
this.cryptoExecutor = cryptoExecutor; this.cryptoExecutor = cryptoExecutor;
this.crypto = crypto; this.crypto = crypto;
this.strengthEstimator = strengthEstimator; this.strengthEstimator = strengthEstimator;

View File

@@ -3,6 +3,7 @@ package org.briarproject.briar.android.login;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.support.annotation.Nullable; import android.support.annotation.Nullable;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.crypto.CryptoComponent; import org.briarproject.bramble.api.crypto.CryptoComponent;
import org.briarproject.bramble.api.crypto.CryptoExecutor; import org.briarproject.bramble.api.crypto.CryptoExecutor;
import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator; import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator;
@@ -33,12 +34,12 @@ public class SetupControllerImpl extends PasswordControllerImpl
@Inject @Inject
SetupControllerImpl(SharedPreferences briarPrefs, SetupControllerImpl(SharedPreferences briarPrefs,
DatabaseConfig databaseConfig, AccountManager accountManager, DatabaseConfig databaseConfig,
@CryptoExecutor Executor cryptoExecutor, CryptoComponent crypto, @CryptoExecutor Executor cryptoExecutor, CryptoComponent crypto,
PasswordStrengthEstimator strengthEstimator, PasswordStrengthEstimator strengthEstimator,
IdentityManager identityManager) { IdentityManager identityManager) {
super(briarPrefs, databaseConfig, cryptoExecutor, crypto, super(briarPrefs, accountManager, databaseConfig, cryptoExecutor,
strengthEstimator); crypto, strengthEstimator);
this.identityManager = identityManager; this.identityManager = identityManager;
} }

View File

@@ -3,6 +3,7 @@ package org.briarproject.briar.android.controller;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor; import android.content.SharedPreferences.Editor;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.db.DatabaseConfig; import org.briarproject.bramble.api.db.DatabaseConfig;
import org.briarproject.bramble.test.BrambleMockTestCase; import org.briarproject.bramble.test.BrambleMockTestCase;
import org.jmock.Expectations; import org.jmock.Expectations;
@@ -26,6 +27,8 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
private final SharedPreferences prefs = private final SharedPreferences prefs =
context.mock(SharedPreferences.class); context.mock(SharedPreferences.class);
private final AccountManager accountManager =
context.mock(AccountManager.class);
private final DatabaseConfig databaseConfig = private final DatabaseConfig databaseConfig =
context.mock(DatabaseConfig.class); context.mock(DatabaseConfig.class);
private final Editor editor = context.mock(Editor.class); private final Editor editor = context.mock(Editor.class);
@@ -56,7 +59,7 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
assertFalse(keyFile.exists()); assertFalse(keyFile.exists());
assertFalse(keyBackupFile.exists()); assertFalse(keyBackupFile.exists());
ConfigControllerImpl c = new ConfigControllerImpl(prefs, ConfigControllerImpl c = new ConfigControllerImpl(prefs, accountManager,
databaseConfig); databaseConfig);
assertEquals(encryptedKeyHex, c.getEncryptedDatabaseKey()); assertEquals(encryptedKeyHex, c.getEncryptedDatabaseKey());
@@ -85,7 +88,7 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
assertFalse(keyBackupFile.exists()); assertFalse(keyBackupFile.exists());
assertEquals(encryptedKeyHex, loadDatabaseKey(keyFile)); assertEquals(encryptedKeyHex, loadDatabaseKey(keyFile));
ConfigControllerImpl c = new ConfigControllerImpl(prefs, ConfigControllerImpl c = new ConfigControllerImpl(prefs, accountManager,
databaseConfig); databaseConfig);
assertEquals(encryptedKeyHex, c.getEncryptedDatabaseKey()); assertEquals(encryptedKeyHex, c.getEncryptedDatabaseKey());
@@ -113,7 +116,7 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
assertTrue(keyBackupFile.exists()); assertTrue(keyBackupFile.exists());
assertEquals(encryptedKeyHex, loadDatabaseKey(keyBackupFile)); assertEquals(encryptedKeyHex, loadDatabaseKey(keyBackupFile));
ConfigControllerImpl c = new ConfigControllerImpl(prefs, ConfigControllerImpl c = new ConfigControllerImpl(prefs, accountManager,
databaseConfig); databaseConfig);
assertEquals(encryptedKeyHex, c.getEncryptedDatabaseKey()); assertEquals(encryptedKeyHex, c.getEncryptedDatabaseKey());
@@ -135,7 +138,7 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
assertFalse(keyFile.exists()); assertFalse(keyFile.exists());
assertFalse(keyBackupFile.exists()); assertFalse(keyBackupFile.exists());
ConfigControllerImpl c = new ConfigControllerImpl(prefs, ConfigControllerImpl c = new ConfigControllerImpl(prefs, accountManager,
databaseConfig); databaseConfig);
assertNull(c.getEncryptedDatabaseKey()); assertNull(c.getEncryptedDatabaseKey());
@@ -160,7 +163,7 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
assertFalse(keyBackupFile.exists()); assertFalse(keyBackupFile.exists());
assertEquals(oldEncryptedKeyHex, loadDatabaseKey(keyFile)); assertEquals(oldEncryptedKeyHex, loadDatabaseKey(keyFile));
ConfigController c = new ConfigControllerImpl(prefs, ConfigController c = new ConfigControllerImpl(prefs, accountManager,
databaseConfig); databaseConfig);
assertTrue(c.storeEncryptedDatabaseKey(encryptedKeyHex)); assertTrue(c.storeEncryptedDatabaseKey(encryptedKeyHex));
@@ -187,7 +190,7 @@ public class ConfigControllerImplTest extends BrambleMockTestCase {
assertTrue(keyBackupFile.exists()); assertTrue(keyBackupFile.exists());
assertEquals(oldEncryptedKeyHex, loadDatabaseKey(keyBackupFile)); assertEquals(oldEncryptedKeyHex, loadDatabaseKey(keyBackupFile));
ConfigController c = new ConfigControllerImpl(prefs, ConfigController c = new ConfigControllerImpl(prefs, accountManager,
databaseConfig); databaseConfig);
assertTrue(c.storeEncryptedDatabaseKey(encryptedKeyHex)); assertTrue(c.storeEncryptedDatabaseKey(encryptedKeyHex));

View File

@@ -45,7 +45,7 @@ public class TestForumActivity extends ForumActivity {
protected BriarController provideBriarController( protected BriarController provideBriarController(
BriarControllerImpl briarController) { BriarControllerImpl briarController) {
BriarController c = Mockito.mock(BriarController.class); BriarController c = Mockito.mock(BriarController.class);
Mockito.when(c.hasEncryptionKey()).thenReturn(true); Mockito.when(c.accountSignedIn()).thenReturn(true);
return c; return c;
} }

View File

@@ -2,6 +2,7 @@ package org.briarproject.briar.android.login;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.crypto.CryptoComponent; import org.briarproject.bramble.api.crypto.CryptoComponent;
import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator; import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator;
import org.briarproject.bramble.api.db.DatabaseConfig; import org.briarproject.bramble.api.db.DatabaseConfig;
@@ -30,6 +31,8 @@ public class PasswordControllerImplTest extends BrambleMockTestCase {
private final SharedPreferences briarPrefs = private final SharedPreferences briarPrefs =
context.mock(SharedPreferences.class); context.mock(SharedPreferences.class);
private final AccountManager accountManager =
context.mock(AccountManager.class);
private final DatabaseConfig databaseConfig = private final DatabaseConfig databaseConfig =
context.mock(DatabaseConfig.class); context.mock(DatabaseConfig.class);
private final CryptoComponent crypto = context.mock(CryptoComponent.class); private final CryptoComponent crypto = context.mock(CryptoComponent.class);
@@ -70,7 +73,8 @@ public class PasswordControllerImplTest extends BrambleMockTestCase {
storeDatabaseKey(keyBackupFile, toHexString(oldEncryptedKey)); storeDatabaseKey(keyBackupFile, toHexString(oldEncryptedKey));
PasswordControllerImpl p = new PasswordControllerImpl(briarPrefs, PasswordControllerImpl p = new PasswordControllerImpl(briarPrefs,
databaseConfig, cryptoExecutor, crypto, estimator); accountManager, databaseConfig, cryptoExecutor, crypto,
estimator);
AtomicBoolean capturedResult = new AtomicBoolean(false); AtomicBoolean capturedResult = new AtomicBoolean(false);
p.changePassword(oldPassword, newPassword, capturedResult::set); p.changePassword(oldPassword, newPassword, capturedResult::set);
@@ -104,7 +108,8 @@ public class PasswordControllerImplTest extends BrambleMockTestCase {
storeDatabaseKey(keyBackupFile, toHexString(oldEncryptedKey)); storeDatabaseKey(keyBackupFile, toHexString(oldEncryptedKey));
PasswordControllerImpl p = new PasswordControllerImpl(briarPrefs, PasswordControllerImpl p = new PasswordControllerImpl(briarPrefs,
databaseConfig, cryptoExecutor, crypto, estimator); accountManager, databaseConfig, cryptoExecutor, crypto,
estimator);
AtomicBoolean capturedResult = new AtomicBoolean(true); AtomicBoolean capturedResult = new AtomicBoolean(true);
p.changePassword(oldPassword, newPassword, capturedResult::set); p.changePassword(oldPassword, newPassword, capturedResult::set);

View File

@@ -3,6 +3,7 @@ package org.briarproject.briar.android.login;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.pm.ApplicationInfo; import android.content.pm.ApplicationInfo;
import org.briarproject.bramble.api.account.AccountManager;
import org.briarproject.bramble.api.crypto.CryptoComponent; import org.briarproject.bramble.api.crypto.CryptoComponent;
import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator; import org.briarproject.bramble.api.crypto.PasswordStrengthEstimator;
import org.briarproject.bramble.api.crypto.SecretKey; import org.briarproject.bramble.api.crypto.SecretKey;
@@ -37,6 +38,8 @@ public class SetupControllerImplTest extends BrambleMockTestCase {
private final SharedPreferences briarPrefs = private final SharedPreferences briarPrefs =
context.mock(SharedPreferences.class); context.mock(SharedPreferences.class);
private final AccountManager accountManager =
context.mock(AccountManager.class);
private final DatabaseConfig databaseConfig = private final DatabaseConfig databaseConfig =
context.mock(DatabaseConfig.class); context.mock(DatabaseConfig.class);
private final CryptoComponent crypto = context.mock(CryptoComponent.class); private final CryptoComponent crypto = context.mock(CryptoComponent.class);
@@ -101,8 +104,8 @@ public class SetupControllerImplTest extends BrambleMockTestCase {
assertFalse(keyBackupFile.exists()); assertFalse(keyBackupFile.exists());
SetupControllerImpl s = new SetupControllerImpl(briarPrefs, SetupControllerImpl s = new SetupControllerImpl(briarPrefs,
databaseConfig, cryptoExecutor, crypto, estimator, accountManager, databaseConfig, cryptoExecutor, crypto,
identityManager); estimator, identityManager);
s.setSetupActivity(setupActivity); s.setSetupActivity(setupActivity);
AtomicBoolean called = new AtomicBoolean(false); AtomicBoolean called = new AtomicBoolean(false);

View File

@@ -1,5 +1,6 @@
package org.briarproject.briar.test; package org.briarproject.briar.test;
import org.briarproject.bramble.account.AccountModule;
import org.briarproject.bramble.api.client.ClientHelper; import org.briarproject.bramble.api.client.ClientHelper;
import org.briarproject.bramble.api.contact.ContactManager; import org.briarproject.bramble.api.contact.ContactManager;
import org.briarproject.bramble.api.db.DatabaseComponent; import org.briarproject.bramble.api.db.DatabaseComponent;
@@ -54,6 +55,7 @@ import dagger.Component;
TestDatabaseModule.class, TestDatabaseModule.class,
TestPluginConfigModule.class, TestPluginConfigModule.class,
TestSecureRandomModule.class, TestSecureRandomModule.class,
AccountModule.class,
BlogModule.class, BlogModule.class,
BriarClientModule.class, BriarClientModule.class,
ClientModule.class, ClientModule.class,