mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-15 04:18:53 +01:00
Merge branch 'use-real-executors-in-integration-tests' into 'master'
Use BrambleCoreModule in integration tests See merge request briar/briar!1115
This commit is contained in:
20
.idea/runConfigurations/All_in_briar_headless.xml
generated
20
.idea/runConfigurations/All_in_briar_headless.xml
generated
@@ -1,20 +0,0 @@
|
|||||||
<component name="ProjectRunConfigurationManager">
|
|
||||||
<configuration default="false" name="All in briar-headless" type="AndroidJUnit" factoryName="Android JUnit" nameIsGenerated="true">
|
|
||||||
<module name="briar-headless" />
|
|
||||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
|
||||||
<option name="ALTERNATIVE_JRE_PATH" />
|
|
||||||
<option name="PACKAGE_NAME" value="org.briarproject.briar.headless" />
|
|
||||||
<option name="MAIN_CLASS_NAME" value="" />
|
|
||||||
<option name="METHOD_NAME" value="" />
|
|
||||||
<option name="TEST_OBJECT" value="package" />
|
|
||||||
<option name="VM_PARAMETERS" value="" />
|
|
||||||
<option name="PARAMETERS" value="" />
|
|
||||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/briar-headless" />
|
|
||||||
<option name="PASS_PARENT_ENVS" value="true" />
|
|
||||||
<option name="TEST_SEARCH_SCOPE">
|
|
||||||
<value defaultName="singleModule" />
|
|
||||||
</option>
|
|
||||||
<patterns />
|
|
||||||
<method />
|
|
||||||
</configuration>
|
|
||||||
</component>
|
|
||||||
18
.idea/runConfigurations/All_tests.xml
generated
18
.idea/runConfigurations/All_tests.xml
generated
@@ -1,30 +1,20 @@
|
|||||||
<component name="ProjectRunConfigurationManager">
|
<component name="ProjectRunConfigurationManager">
|
||||||
<configuration default="false" name="All tests" type="AndroidJUnit" factoryName="Android JUnit">
|
<configuration default="false" name="All tests" type="AndroidJUnit" factoryName="Android JUnit">
|
||||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
|
||||||
<module name="briar-android" />
|
<module name="briar-android" />
|
||||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
|
||||||
<option name="ALTERNATIVE_JRE_PATH" />
|
|
||||||
<option name="PACKAGE_NAME" value="" />
|
<option name="PACKAGE_NAME" value="" />
|
||||||
<option name="MAIN_CLASS_NAME" value="" />
|
<option name="MAIN_CLASS_NAME" value="" />
|
||||||
<option name="METHOD_NAME" value="" />
|
<option name="METHOD_NAME" value="" />
|
||||||
<option name="TEST_OBJECT" value="package" />
|
<option name="TEST_OBJECT" value="package" />
|
||||||
<option name="VM_PARAMETERS" value="-ea" />
|
|
||||||
<option name="PARAMETERS" value="" />
|
<option name="PARAMETERS" value="" />
|
||||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/briar-android" />
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/briar-android" />
|
||||||
<option name="ENV_VARIABLES" />
|
<method v="2">
|
||||||
<option name="PASS_PARENT_ENVS" value="true" />
|
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
|
||||||
<option name="TEST_SEARCH_SCOPE">
|
|
||||||
<value defaultName="singleModule" />
|
|
||||||
</option>
|
|
||||||
<envs />
|
|
||||||
<patterns />
|
|
||||||
<method>
|
|
||||||
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-api" run_configuration_type="AndroidJUnit" />
|
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-api" run_configuration_type="AndroidJUnit" />
|
||||||
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-core" run_configuration_type="AndroidJUnit" />
|
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-core" run_configuration_type="AndroidJUnit" />
|
||||||
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-android" run_configuration_type="AndroidJUnit" />
|
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-android" run_configuration_type="AndroidJUnit" />
|
||||||
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-java" run_configuration_type="AndroidJUnit" />
|
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in bramble-java" run_configuration_type="AndroidJUnit" />
|
||||||
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in briar-core" run_configuration_type="AndroidJUnit" />
|
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in briar-core" run_configuration_type="AndroidJUnit" />
|
||||||
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All in briar-headless" run_configuration_type="AndroidJUnit" />
|
<option name="RunConfigurationTask" enabled="true" run_configuration_name="All tests in briar-headless" run_configuration_type="AndroidJUnit" />
|
||||||
</method>
|
</method>
|
||||||
</configuration>
|
</configuration>
|
||||||
</component>
|
</component>
|
||||||
15
.idea/runConfigurations/All_tests_in_briar_headless.xml
generated
Normal file
15
.idea/runConfigurations/All_tests_in_briar_headless.xml
generated
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<component name="ProjectRunConfigurationManager">
|
||||||
|
<configuration default="false" name="All tests in briar-headless" type="AndroidJUnit" factoryName="Android JUnit">
|
||||||
|
<module name="briar-headless" />
|
||||||
|
<option name="PACKAGE_NAME" value="org.briarproject.briar.headless" />
|
||||||
|
<option name="MAIN_CLASS_NAME" value="" />
|
||||||
|
<option name="METHOD_NAME" value="" />
|
||||||
|
<option name="TEST_OBJECT" value="package" />
|
||||||
|
<option name="VM_PARAMETERS" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/briar-headless" />
|
||||||
|
<method v="2">
|
||||||
|
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
</component>
|
||||||
@@ -2,10 +2,13 @@ package org.briarproject.bramble;
|
|||||||
|
|
||||||
import org.briarproject.bramble.battery.AndroidBatteryModule;
|
import org.briarproject.bramble.battery.AndroidBatteryModule;
|
||||||
import org.briarproject.bramble.network.AndroidNetworkModule;
|
import org.briarproject.bramble.network.AndroidNetworkModule;
|
||||||
|
import org.briarproject.bramble.reporting.ReportingModule;
|
||||||
|
|
||||||
public interface BrambleAndroidEagerSingletons {
|
public interface BrambleAndroidEagerSingletons {
|
||||||
|
|
||||||
void inject(AndroidBatteryModule.EagerSingletons init);
|
void inject(AndroidBatteryModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(AndroidNetworkModule.EagerSingletons init);
|
void inject(AndroidNetworkModule.EagerSingletons init);
|
||||||
|
|
||||||
|
void inject(ReportingModule.EagerSingletons init);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package org.briarproject.bramble;
|
|||||||
import org.briarproject.bramble.battery.AndroidBatteryModule;
|
import org.briarproject.bramble.battery.AndroidBatteryModule;
|
||||||
import org.briarproject.bramble.network.AndroidNetworkModule;
|
import org.briarproject.bramble.network.AndroidNetworkModule;
|
||||||
import org.briarproject.bramble.plugin.tor.CircumventionModule;
|
import org.briarproject.bramble.plugin.tor.CircumventionModule;
|
||||||
|
import org.briarproject.bramble.reporting.ReportingModule;
|
||||||
|
import org.briarproject.bramble.socks.SocksModule;
|
||||||
import org.briarproject.bramble.system.AndroidSystemModule;
|
import org.briarproject.bramble.system.AndroidSystemModule;
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
@@ -11,12 +13,15 @@ import dagger.Module;
|
|||||||
AndroidBatteryModule.class,
|
AndroidBatteryModule.class,
|
||||||
AndroidNetworkModule.class,
|
AndroidNetworkModule.class,
|
||||||
AndroidSystemModule.class,
|
AndroidSystemModule.class,
|
||||||
CircumventionModule.class
|
CircumventionModule.class,
|
||||||
|
ReportingModule.class,
|
||||||
|
SocksModule.class
|
||||||
})
|
})
|
||||||
public class BrambleAndroidModule {
|
public class BrambleAndroidModule {
|
||||||
|
|
||||||
public static void initEagerSingletons(BrambleAndroidEagerSingletons c) {
|
public static void initEagerSingletons(BrambleAndroidEagerSingletons c) {
|
||||||
c.inject(new AndroidBatteryModule.EagerSingletons());
|
c.inject(new AndroidBatteryModule.EagerSingletons());
|
||||||
c.inject(new AndroidNetworkModule.EagerSingletons());
|
c.inject(new AndroidNetworkModule.EagerSingletons());
|
||||||
|
c.inject(new ReportingModule.EagerSingletons());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ import org.briarproject.bramble.identity.IdentityModule;
|
|||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
||||||
import org.briarproject.bramble.plugin.PluginModule;
|
import org.briarproject.bramble.plugin.PluginModule;
|
||||||
import org.briarproject.bramble.properties.PropertiesModule;
|
import org.briarproject.bramble.properties.PropertiesModule;
|
||||||
import org.briarproject.bramble.reporting.ReportingModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
import org.briarproject.bramble.sync.validation.ValidationModule;
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
import org.briarproject.bramble.system.SystemModule;
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
import org.briarproject.bramble.transport.TransportModule;
|
||||||
@@ -29,8 +28,6 @@ public interface BrambleCoreEagerSingletons {
|
|||||||
|
|
||||||
void inject(PropertiesModule.EagerSingletons init);
|
void inject(PropertiesModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(ReportingModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(SystemModule.EagerSingletons init);
|
void inject(SystemModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(TransportModule.EagerSingletons init);
|
void inject(TransportModule.EagerSingletons init);
|
||||||
@@ -38,4 +35,18 @@ public interface BrambleCoreEagerSingletons {
|
|||||||
void inject(ValidationModule.EagerSingletons init);
|
void inject(ValidationModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(VersioningModule.EagerSingletons init);
|
void inject(VersioningModule.EagerSingletons init);
|
||||||
|
|
||||||
|
default void injectBrambleCoreEagerSingletons() {
|
||||||
|
inject(new ContactModule.EagerSingletons());
|
||||||
|
inject(new CryptoExecutorModule.EagerSingletons());
|
||||||
|
inject(new DatabaseExecutorModule.EagerSingletons());
|
||||||
|
inject(new IdentityModule.EagerSingletons());
|
||||||
|
inject(new LifecycleModule.EagerSingletons());
|
||||||
|
inject(new PluginModule.EagerSingletons());
|
||||||
|
inject(new PropertiesModule.EagerSingletons());
|
||||||
|
inject(new SystemModule.EagerSingletons());
|
||||||
|
inject(new TransportModule.EagerSingletons());
|
||||||
|
inject(new ValidationModule.EagerSingletons());
|
||||||
|
inject(new VersioningModule.EagerSingletons());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,9 +16,7 @@ import org.briarproject.bramble.properties.PropertiesModule;
|
|||||||
import org.briarproject.bramble.record.RecordModule;
|
import org.briarproject.bramble.record.RecordModule;
|
||||||
import org.briarproject.bramble.reliability.ReliabilityModule;
|
import org.briarproject.bramble.reliability.ReliabilityModule;
|
||||||
import org.briarproject.bramble.rendezvous.RendezvousModule;
|
import org.briarproject.bramble.rendezvous.RendezvousModule;
|
||||||
import org.briarproject.bramble.reporting.ReportingModule;
|
|
||||||
import org.briarproject.bramble.settings.SettingsModule;
|
import org.briarproject.bramble.settings.SettingsModule;
|
||||||
import org.briarproject.bramble.socks.SocksModule;
|
|
||||||
import org.briarproject.bramble.sync.SyncModule;
|
import org.briarproject.bramble.sync.SyncModule;
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
import org.briarproject.bramble.sync.validation.ValidationModule;
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
import org.briarproject.bramble.system.SystemModule;
|
||||||
@@ -44,9 +42,7 @@ import dagger.Module;
|
|||||||
RecordModule.class,
|
RecordModule.class,
|
||||||
ReliabilityModule.class,
|
ReliabilityModule.class,
|
||||||
RendezvousModule.class,
|
RendezvousModule.class,
|
||||||
ReportingModule.class,
|
|
||||||
SettingsModule.class,
|
SettingsModule.class,
|
||||||
SocksModule.class,
|
|
||||||
SyncModule.class,
|
SyncModule.class,
|
||||||
SystemModule.class,
|
SystemModule.class,
|
||||||
TransportModule.class,
|
TransportModule.class,
|
||||||
@@ -56,17 +52,6 @@ import dagger.Module;
|
|||||||
public class BrambleCoreModule {
|
public class BrambleCoreModule {
|
||||||
|
|
||||||
public static void initEagerSingletons(BrambleCoreEagerSingletons c) {
|
public static void initEagerSingletons(BrambleCoreEagerSingletons c) {
|
||||||
c.inject(new ContactModule.EagerSingletons());
|
c.injectBrambleCoreEagerSingletons();
|
||||||
c.inject(new CryptoExecutorModule.EagerSingletons());
|
|
||||||
c.inject(new DatabaseExecutorModule.EagerSingletons());
|
|
||||||
c.inject(new IdentityModule.EagerSingletons());
|
|
||||||
c.inject(new LifecycleModule.EagerSingletons());
|
|
||||||
c.inject(new PluginModule.EagerSingletons());
|
|
||||||
c.inject(new PropertiesModule.EagerSingletons());
|
|
||||||
c.inject(new ReportingModule.EagerSingletons());
|
|
||||||
c.inject(new SystemModule.EagerSingletons());
|
|
||||||
c.inject(new TransportModule.EagerSingletons());
|
|
||||||
c.inject(new ValidationModule.EagerSingletons());
|
|
||||||
c.inject(new VersioningModule.EagerSingletons());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ public class SyncIntegrationTest extends BrambleTestCase {
|
|||||||
|
|
||||||
SyncIntegrationTestComponent component =
|
SyncIntegrationTestComponent component =
|
||||||
DaggerSyncIntegrationTestComponent.builder().build();
|
DaggerSyncIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBrambleCoreEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
contactId = getContactId();
|
contactId = getContactId();
|
||||||
|
|||||||
@@ -1,11 +1,8 @@
|
|||||||
package org.briarproject.bramble.sync;
|
package org.briarproject.bramble.sync;
|
||||||
|
|
||||||
import org.briarproject.bramble.crypto.CryptoModule;
|
import org.briarproject.bramble.BrambleCoreEagerSingletons;
|
||||||
import org.briarproject.bramble.record.RecordModule;
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
import org.briarproject.bramble.test.BrambleCoreIntegrationTestModule;
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestSecureRandomModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
import javax.inject.Singleton;
|
||||||
|
|
||||||
@@ -13,15 +10,10 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
TestSecureRandomModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
CryptoModule.class,
|
BrambleCoreModule.class
|
||||||
RecordModule.class,
|
|
||||||
SyncModule.class,
|
|
||||||
SystemModule.class,
|
|
||||||
ValidationModule.class,
|
|
||||||
TransportModule.class
|
|
||||||
})
|
})
|
||||||
interface SyncIntegrationTestComponent {
|
interface SyncIntegrationTestComponent extends BrambleCoreEagerSingletons {
|
||||||
|
|
||||||
void inject(SyncIntegrationTest testCase);
|
void inject(SyncIntegrationTest testCase);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
package org.briarproject.bramble.test;
|
||||||
|
|
||||||
|
import org.briarproject.bramble.battery.DefaultBatteryManagerModule;
|
||||||
|
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
||||||
|
|
||||||
|
import dagger.Module;
|
||||||
|
|
||||||
|
@Module(includes = {
|
||||||
|
DefaultBatteryManagerModule.class,
|
||||||
|
DefaultEventExecutorModule.class,
|
||||||
|
TestDatabaseConfigModule.class,
|
||||||
|
TestPluginConfigModule.class,
|
||||||
|
TestSecureRandomModule.class
|
||||||
|
})
|
||||||
|
public class BrambleCoreIntegrationTestModule {
|
||||||
|
}
|
||||||
@@ -1,26 +1,22 @@
|
|||||||
package org.briarproject.bramble.test;
|
package org.briarproject.bramble.test;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.db.DatabaseConfig;
|
import org.briarproject.bramble.api.db.DatabaseConfig;
|
||||||
import org.briarproject.bramble.api.db.DatabaseExecutor;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.concurrent.Executor;
|
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
import dagger.Provides;
|
import dagger.Provides;
|
||||||
|
|
||||||
@Module
|
@Module
|
||||||
public class TestDatabaseModule {
|
public class TestDatabaseConfigModule {
|
||||||
|
|
||||||
private final DatabaseConfig config;
|
private final DatabaseConfig config;
|
||||||
|
|
||||||
public TestDatabaseModule() {
|
public TestDatabaseConfigModule() {
|
||||||
this(new File("."));
|
this(new File("."));
|
||||||
}
|
}
|
||||||
|
|
||||||
public TestDatabaseModule(File dir) {
|
public TestDatabaseConfigModule(File dir) {
|
||||||
config = new TestDatabaseConfig(dir);
|
config = new TestDatabaseConfig(dir);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -28,11 +24,4 @@ public class TestDatabaseModule {
|
|||||||
DatabaseConfig provideDatabaseConfig() {
|
DatabaseConfig provideDatabaseConfig() {
|
||||||
return config;
|
return config;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Provides
|
|
||||||
@Singleton
|
|
||||||
@DatabaseExecutor
|
|
||||||
Executor provideDatabaseExecutor() {
|
|
||||||
return new ImmediateExecutor();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -1,94 +0,0 @@
|
|||||||
package org.briarproject.bramble.test;
|
|
||||||
|
|
||||||
import org.briarproject.bramble.api.crypto.SecretKey;
|
|
||||||
import org.briarproject.bramble.api.lifecycle.IoExecutor;
|
|
||||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
|
||||||
import org.briarproject.bramble.api.lifecycle.Service;
|
|
||||||
import org.briarproject.bramble.api.lifecycle.ShutdownManager;
|
|
||||||
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
|
||||||
|
|
||||||
import java.util.concurrent.Executor;
|
|
||||||
import java.util.concurrent.ExecutorService;
|
|
||||||
import java.util.concurrent.Executors;
|
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
|
||||||
|
|
||||||
import dagger.Module;
|
|
||||||
import dagger.Provides;
|
|
||||||
|
|
||||||
import static org.briarproject.bramble.api.lifecycle.LifecycleManager.LifecycleState.RUNNING;
|
|
||||||
|
|
||||||
@Module
|
|
||||||
public class TestLifecycleModule {
|
|
||||||
|
|
||||||
@Provides
|
|
||||||
LifecycleManager provideLifecycleManager() {
|
|
||||||
@NotNullByDefault
|
|
||||||
LifecycleManager lifecycleManager = new LifecycleManager() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void registerService(Service s) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void registerOpenDatabaseHook(OpenDatabaseHook hook) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void registerForShutdown(ExecutorService e) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public StartResult startServices(SecretKey dbKey) {
|
|
||||||
return StartResult.SUCCESS;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void stopServices() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void waitForDatabase() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void waitForStartup() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void waitForShutdown() {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public LifecycleState getLifecycleState() {
|
|
||||||
return RUNNING;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
return lifecycleManager;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Provides
|
|
||||||
ShutdownManager provideShutdownManager() {
|
|
||||||
@NotNullByDefault
|
|
||||||
ShutdownManager shutdownManager = new ShutdownManager() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int addShutdownHook(Runnable hook) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean removeShutdownHook(int handle) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
return shutdownManager;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Provides
|
|
||||||
@IoExecutor
|
|
||||||
@Singleton
|
|
||||||
Executor provideIoExecutor() {
|
|
||||||
return Executors.newCachedThreadPool();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -2,6 +2,7 @@ package org.briarproject.bramble;
|
|||||||
|
|
||||||
import org.briarproject.bramble.network.JavaNetworkModule;
|
import org.briarproject.bramble.network.JavaNetworkModule;
|
||||||
import org.briarproject.bramble.plugin.tor.CircumventionModule;
|
import org.briarproject.bramble.plugin.tor.CircumventionModule;
|
||||||
|
import org.briarproject.bramble.socks.SocksModule;
|
||||||
import org.briarproject.bramble.system.JavaSystemModule;
|
import org.briarproject.bramble.system.JavaSystemModule;
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
@@ -9,7 +10,8 @@ import dagger.Module;
|
|||||||
@Module(includes = {
|
@Module(includes = {
|
||||||
JavaNetworkModule.class,
|
JavaNetworkModule.class,
|
||||||
JavaSystemModule.class,
|
JavaSystemModule.class,
|
||||||
CircumventionModule.class
|
CircumventionModule.class,
|
||||||
|
SocksModule.class
|
||||||
})
|
})
|
||||||
public class BrambleJavaModule {
|
public class BrambleJavaModule {
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package org.briarproject.bramble.plugin.tor;
|
|||||||
|
|
||||||
import org.briarproject.bramble.api.battery.BatteryManager;
|
import org.briarproject.bramble.api.battery.BatteryManager;
|
||||||
import org.briarproject.bramble.api.event.EventBus;
|
import org.briarproject.bramble.api.event.EventBus;
|
||||||
|
import org.briarproject.bramble.api.lifecycle.IoExecutor;
|
||||||
import org.briarproject.bramble.api.network.NetworkManager;
|
import org.briarproject.bramble.api.network.NetworkManager;
|
||||||
import org.briarproject.bramble.api.plugin.BackoffFactory;
|
import org.briarproject.bramble.api.plugin.BackoffFactory;
|
||||||
import org.briarproject.bramble.api.plugin.duplex.DuplexPlugin;
|
import org.briarproject.bramble.api.plugin.duplex.DuplexPlugin;
|
||||||
@@ -22,7 +23,6 @@ import org.junit.runners.Parameterized.Parameters;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
import java.util.concurrent.Executors;
|
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@@ -30,6 +30,7 @@ import javax.net.SocketFactory;
|
|||||||
|
|
||||||
import static java.util.Collections.singletonList;
|
import static java.util.Collections.singletonList;
|
||||||
import static java.util.concurrent.TimeUnit.SECONDS;
|
import static java.util.concurrent.TimeUnit.SECONDS;
|
||||||
|
import static java.util.logging.Logger.getLogger;
|
||||||
import static org.briarproject.bramble.test.TestUtils.deleteTestDirectory;
|
import static org.briarproject.bramble.test.TestUtils.deleteTestDirectory;
|
||||||
import static org.briarproject.bramble.test.TestUtils.getTestDirectory;
|
import static org.briarproject.bramble.test.TestUtils.getTestDirectory;
|
||||||
import static org.briarproject.bramble.test.TestUtils.isOptionalTestEnabled;
|
import static org.briarproject.bramble.test.TestUtils.isOptionalTestEnabled;
|
||||||
@@ -44,14 +45,17 @@ public class BridgeTest extends BrambleTestCase {
|
|||||||
public static Iterable<String> data() {
|
public static Iterable<String> data() {
|
||||||
BrambleJavaIntegrationTestComponent component =
|
BrambleJavaIntegrationTestComponent component =
|
||||||
DaggerBrambleJavaIntegrationTestComponent.builder().build();
|
DaggerBrambleJavaIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBrambleCoreEagerSingletons();
|
||||||
return component.getCircumventionProvider().getBridges(false);
|
return component.getCircumventionProvider().getBridges(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private final static long TIMEOUT = SECONDS.toMillis(30);
|
private final static long TIMEOUT = SECONDS.toMillis(30);
|
||||||
|
|
||||||
private final static Logger LOG =
|
private final static Logger LOG = getLogger(BridgeTest.class.getName());
|
||||||
Logger.getLogger(BridgeTest.class.getName());
|
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
@IoExecutor
|
||||||
|
Executor ioExecutor;
|
||||||
@Inject
|
@Inject
|
||||||
NetworkManager networkManager;
|
NetworkManager networkManager;
|
||||||
@Inject
|
@Inject
|
||||||
@@ -86,9 +90,9 @@ public class BridgeTest extends BrambleTestCase {
|
|||||||
|
|
||||||
BrambleJavaIntegrationTestComponent component =
|
BrambleJavaIntegrationTestComponent component =
|
||||||
DaggerBrambleJavaIntegrationTestComponent.builder().build();
|
DaggerBrambleJavaIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBrambleCoreEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
Executor ioExecutor = Executors.newCachedThreadPool();
|
|
||||||
LocationUtils locationUtils = () -> "US";
|
LocationUtils locationUtils = () -> "US";
|
||||||
SocketFactory torSocketFactory = SocketFactory.getDefault();
|
SocketFactory torSocketFactory = SocketFactory.getDefault();
|
||||||
|
|
||||||
@@ -146,5 +150,4 @@ public class BridgeTest extends BrambleTestCase {
|
|||||||
plugin.stop();
|
plugin.stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,10 @@
|
|||||||
package org.briarproject.bramble.test;
|
package org.briarproject.bramble.test;
|
||||||
|
|
||||||
|
import org.briarproject.bramble.BrambleCoreEagerSingletons;
|
||||||
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
import org.briarproject.bramble.BrambleJavaModule;
|
import org.briarproject.bramble.BrambleJavaModule;
|
||||||
import org.briarproject.bramble.battery.DefaultBatteryManagerModule;
|
|
||||||
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
|
||||||
import org.briarproject.bramble.event.EventModule;
|
|
||||||
import org.briarproject.bramble.plugin.PluginModule;
|
|
||||||
import org.briarproject.bramble.plugin.tor.BridgeTest;
|
import org.briarproject.bramble.plugin.tor.BridgeTest;
|
||||||
import org.briarproject.bramble.plugin.tor.CircumventionProvider;
|
import org.briarproject.bramble.plugin.tor.CircumventionProvider;
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
import javax.inject.Singleton;
|
||||||
|
|
||||||
@@ -15,15 +12,12 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
BrambleJavaModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
TestLifecycleModule.class,
|
BrambleCoreModule.class,
|
||||||
DefaultBatteryManagerModule.class,
|
BrambleJavaModule.class
|
||||||
DefaultEventExecutorModule.class,
|
|
||||||
EventModule.class,
|
|
||||||
PluginModule.class, // needed for BackoffFactory
|
|
||||||
SystemModule.class,
|
|
||||||
})
|
})
|
||||||
public interface BrambleJavaIntegrationTestComponent {
|
public interface BrambleJavaIntegrationTestComponent
|
||||||
|
extends BrambleCoreEagerSingletons {
|
||||||
|
|
||||||
void inject(BridgeTest init);
|
void inject(BridgeTest init);
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package org.briarproject.briar.blog;
|
|||||||
|
|
||||||
import org.briarproject.bramble.api.identity.LocalAuthor;
|
import org.briarproject.bramble.api.identity.LocalAuthor;
|
||||||
import org.briarproject.bramble.api.sync.MessageId;
|
import org.briarproject.bramble.api.sync.MessageId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.blog.Blog;
|
import org.briarproject.briar.api.blog.Blog;
|
||||||
import org.briarproject.briar.api.blog.BlogCommentHeader;
|
import org.briarproject.briar.api.blog.BlogCommentHeader;
|
||||||
import org.briarproject.briar.api.blog.BlogManager;
|
import org.briarproject.briar.api.blog.BlogManager;
|
||||||
@@ -65,19 +65,23 @@ public class BlogManagerIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -3,22 +3,13 @@ package org.briarproject.briar.feed;
|
|||||||
import org.briarproject.bramble.api.identity.Identity;
|
import org.briarproject.bramble.api.identity.Identity;
|
||||||
import org.briarproject.bramble.api.identity.IdentityManager;
|
import org.briarproject.bramble.api.identity.IdentityManager;
|
||||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.test.TestUtils;
|
import org.briarproject.bramble.test.TestUtils;
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.blog.Blog;
|
import org.briarproject.briar.api.blog.Blog;
|
||||||
import org.briarproject.briar.api.blog.BlogManager;
|
import org.briarproject.briar.api.blog.BlogManager;
|
||||||
import org.briarproject.briar.api.blog.BlogPostHeader;
|
import org.briarproject.briar.api.blog.BlogPostHeader;
|
||||||
import org.briarproject.briar.api.feed.Feed;
|
import org.briarproject.briar.api.feed.Feed;
|
||||||
import org.briarproject.briar.api.feed.FeedManager;
|
import org.briarproject.briar.api.feed.FeedManager;
|
||||||
import org.briarproject.briar.blog.BlogModule;
|
|
||||||
import org.briarproject.briar.test.BriarTestCase;
|
import org.briarproject.briar.test.BriarTestCase;
|
||||||
import org.junit.After;
|
import org.junit.After;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
@@ -45,10 +36,10 @@ public class FeedManagerIntegrationTest extends BriarTestCase {
|
|||||||
assertTrue(testDir.mkdirs());
|
assertTrue(testDir.mkdirs());
|
||||||
FeedManagerIntegrationTestComponent component =
|
FeedManagerIntegrationTestComponent component =
|
||||||
DaggerFeedManagerIntegrationTestComponent.builder()
|
DaggerFeedManagerIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(testFile))
|
.testDatabaseConfigModule(
|
||||||
.build();
|
new TestDatabaseConfigModule(testFile)).build();
|
||||||
|
component.injectFeedManagerEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
injectEagerSingletons(component);
|
|
||||||
|
|
||||||
IdentityManager identityManager = component.getIdentityManager();
|
IdentityManager identityManager = component.getIdentityManager();
|
||||||
Identity identity = identityManager.createIdentity("feedTest");
|
Identity identity = identityManager.createIdentity("feedTest");
|
||||||
@@ -118,19 +109,4 @@ public class FeedManagerIntegrationTest extends BriarTestCase {
|
|||||||
lifecycleManager.waitForShutdown();
|
lifecycleManager.waitForShutdown();
|
||||||
TestUtils.deleteTestDirectory(testDir);
|
TestUtils.deleteTestDirectory(testDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void injectEagerSingletons(
|
|
||||||
FeedManagerIntegrationTestComponent component) {
|
|
||||||
component.inject(new BlogModule.EagerSingletons());
|
|
||||||
component.inject(new ContactModule.EagerSingletons());
|
|
||||||
component.inject(new CryptoExecutorModule.EagerSingletons());
|
|
||||||
component.inject(new FeedModule.EagerSingletons());
|
|
||||||
component.inject(new IdentityModule.EagerSingletons());
|
|
||||||
component.inject(new LifecycleModule.EagerSingletons());
|
|
||||||
component.inject(new SystemModule.EagerSingletons());
|
|
||||||
component.inject(new TransportModule.EagerSingletons());
|
|
||||||
component.inject(new ValidationModule.EagerSingletons());
|
|
||||||
component.inject(new VersioningModule.EagerSingletons());
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,26 +1,11 @@
|
|||||||
package org.briarproject.briar.feed;
|
package org.briarproject.briar.feed;
|
||||||
|
|
||||||
|
import org.briarproject.bramble.BrambleCoreEagerSingletons;
|
||||||
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
import org.briarproject.bramble.api.identity.IdentityManager;
|
import org.briarproject.bramble.api.identity.IdentityManager;
|
||||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
||||||
import org.briarproject.bramble.client.ClientModule;
|
import org.briarproject.bramble.test.BrambleCoreIntegrationTestModule;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoModule;
|
|
||||||
import org.briarproject.bramble.data.DataModule;
|
|
||||||
import org.briarproject.bramble.db.DatabaseModule;
|
|
||||||
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
|
||||||
import org.briarproject.bramble.event.EventModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.sync.SyncModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.test.TestPluginConfigModule;
|
|
||||||
import org.briarproject.bramble.test.TestSecureRandomModule;
|
|
||||||
import org.briarproject.bramble.test.TestSocksModule;
|
import org.briarproject.bramble.test.TestSocksModule;
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.blog.BlogManager;
|
import org.briarproject.briar.api.blog.BlogManager;
|
||||||
import org.briarproject.briar.api.feed.FeedManager;
|
import org.briarproject.briar.api.feed.FeedManager;
|
||||||
import org.briarproject.briar.blog.BlogModule;
|
import org.briarproject.briar.blog.BlogModule;
|
||||||
@@ -33,53 +18,28 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
TestDatabaseModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
TestPluginConfigModule.class,
|
BrambleCoreModule.class,
|
||||||
TestSecureRandomModule.class,
|
|
||||||
TestSocksModule.class,
|
|
||||||
TestDnsModule.class,
|
|
||||||
BriarClientModule.class,
|
|
||||||
ClientModule.class,
|
|
||||||
ContactModule.class,
|
|
||||||
CryptoModule.class,
|
|
||||||
CryptoExecutorModule.class,
|
|
||||||
BlogModule.class,
|
BlogModule.class,
|
||||||
|
BriarClientModule.class,
|
||||||
FeedModule.class,
|
FeedModule.class,
|
||||||
DataModule.class,
|
TestDnsModule.class,
|
||||||
DatabaseModule.class,
|
TestSocksModule.class,
|
||||||
DefaultEventExecutorModule.class,
|
|
||||||
EventModule.class,
|
|
||||||
IdentityModule.class,
|
|
||||||
LifecycleModule.class,
|
|
||||||
SyncModule.class,
|
|
||||||
SystemModule.class,
|
|
||||||
TransportModule.class,
|
|
||||||
ValidationModule.class,
|
|
||||||
VersioningModule.class
|
|
||||||
})
|
})
|
||||||
interface FeedManagerIntegrationTestComponent {
|
interface FeedManagerIntegrationTestComponent
|
||||||
|
extends BrambleCoreEagerSingletons {
|
||||||
|
|
||||||
void inject(FeedManagerIntegrationTest testCase);
|
void inject(FeedManagerIntegrationTest testCase);
|
||||||
|
|
||||||
void inject(BlogModule.EagerSingletons init);
|
void inject(BlogModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(ContactModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(CryptoExecutorModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(FeedModule.EagerSingletons init);
|
void inject(FeedModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(IdentityModule.EagerSingletons init);
|
default void injectFeedManagerEagerSingletons() {
|
||||||
|
injectBrambleCoreEagerSingletons();
|
||||||
void inject(LifecycleModule.EagerSingletons init);
|
inject(new BlogModule.EagerSingletons());
|
||||||
|
inject(new FeedModule.EagerSingletons());
|
||||||
void inject(SystemModule.EagerSingletons init);
|
}
|
||||||
|
|
||||||
void inject(TransportModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(ValidationModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(VersioningModule.EagerSingletons init);
|
|
||||||
|
|
||||||
IdentityManager getIdentityManager();
|
IdentityManager getIdentityManager();
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package org.briarproject.briar.forum;
|
package org.briarproject.briar.forum;
|
||||||
|
|
||||||
import org.briarproject.bramble.api.sync.GroupId;
|
import org.briarproject.bramble.api.sync.GroupId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.forum.Forum;
|
import org.briarproject.briar.api.forum.Forum;
|
||||||
import org.briarproject.briar.api.forum.ForumManager;
|
import org.briarproject.briar.api.forum.ForumManager;
|
||||||
import org.briarproject.briar.api.forum.ForumPost;
|
import org.briarproject.briar.api.forum.ForumPost;
|
||||||
@@ -56,19 +56,23 @@ public class ForumManagerTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
private ForumPost createForumPost(GroupId groupId,
|
private ForumPost createForumPost(GroupId groupId,
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ public class IntroductionCryptoIntegrationTest extends BrambleTestCase {
|
|||||||
public IntroductionCryptoIntegrationTest() {
|
public IntroductionCryptoIntegrationTest() {
|
||||||
IntroductionIntegrationTestComponent component =
|
IntroductionIntegrationTestComponent component =
|
||||||
DaggerIntroductionIntegrationTestComponent.builder().build();
|
DaggerIntroductionIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
crypto = new IntroductionCryptoImpl(cryptoComponent, clientHelper);
|
crypto = new IntroductionCryptoImpl(cryptoComponent, clientHelper);
|
||||||
|
|
||||||
@@ -148,5 +149,4 @@ public class IntroductionCryptoIntegrationTest extends BrambleTestCase {
|
|||||||
byte[] bobMac = crypto.activateMac(bobMacKey);
|
byte[] bobMac = crypto.activateMac(bobMacKey);
|
||||||
crypto.verifyActivateMac(bobMac, bobMacKey);
|
crypto.verifyActivateMac(bobMac, bobMacKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import org.briarproject.bramble.api.properties.TransportPropertyManager;
|
|||||||
import org.briarproject.bramble.api.sync.Group;
|
import org.briarproject.bramble.api.sync.Group;
|
||||||
import org.briarproject.bramble.api.sync.Message;
|
import org.briarproject.bramble.api.sync.Message;
|
||||||
import org.briarproject.bramble.api.sync.MessageId;
|
import org.briarproject.bramble.api.sync.MessageId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.client.ProtocolStateException;
|
import org.briarproject.briar.api.client.ProtocolStateException;
|
||||||
import org.briarproject.briar.api.client.SessionId;
|
import org.briarproject.briar.api.client.SessionId;
|
||||||
import org.briarproject.briar.api.conversation.ConversationMessageHeader;
|
import org.briarproject.briar.api.conversation.ConversationMessageHeader;
|
||||||
@@ -106,19 +106,23 @@ public class IntroductionIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
IntroductionIntegrationTestComponent component =
|
IntroductionIntegrationTestComponent component =
|
||||||
DaggerIntroductionIntegrationTestComponent.builder().build();
|
DaggerIntroductionIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerIntroductionIntegrationTestComponent.builder()
|
c0 = DaggerIntroductionIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerIntroductionIntegrationTestComponent.builder()
|
c1 = DaggerIntroductionIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerIntroductionIntegrationTestComponent.builder()
|
c2 = DaggerIntroductionIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -1,25 +1,7 @@
|
|||||||
package org.briarproject.briar.introduction;
|
package org.briarproject.briar.introduction;
|
||||||
|
|
||||||
import org.briarproject.bramble.client.ClientModule;
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
import org.briarproject.bramble.test.BrambleCoreIntegrationTestModule;
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoModule;
|
|
||||||
import org.briarproject.bramble.data.DataModule;
|
|
||||||
import org.briarproject.bramble.db.DatabaseModule;
|
|
||||||
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
|
||||||
import org.briarproject.bramble.event.EventModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.properties.PropertiesModule;
|
|
||||||
import org.briarproject.bramble.record.RecordModule;
|
|
||||||
import org.briarproject.bramble.sync.SyncModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.test.TestPluginConfigModule;
|
|
||||||
import org.briarproject.bramble.test.TestSecureRandomModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.blog.BlogModule;
|
import org.briarproject.briar.blog.BlogModule;
|
||||||
import org.briarproject.briar.client.BriarClientModule;
|
import org.briarproject.briar.client.BriarClientModule;
|
||||||
import org.briarproject.briar.forum.ForumModule;
|
import org.briarproject.briar.forum.ForumModule;
|
||||||
@@ -35,34 +17,16 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
TestDatabaseModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
TestPluginConfigModule.class,
|
BrambleCoreModule.class,
|
||||||
TestSecureRandomModule.class,
|
|
||||||
BlogModule.class,
|
BlogModule.class,
|
||||||
BriarClientModule.class,
|
BriarClientModule.class,
|
||||||
ClientModule.class,
|
|
||||||
ContactModule.class,
|
|
||||||
CryptoModule.class,
|
|
||||||
CryptoExecutorModule.class,
|
|
||||||
DataModule.class,
|
|
||||||
DatabaseModule.class,
|
|
||||||
DefaultEventExecutorModule.class,
|
|
||||||
EventModule.class,
|
|
||||||
ForumModule.class,
|
ForumModule.class,
|
||||||
GroupInvitationModule.class,
|
GroupInvitationModule.class,
|
||||||
IdentityModule.class,
|
|
||||||
IntroductionModule.class,
|
IntroductionModule.class,
|
||||||
LifecycleModule.class,
|
|
||||||
MessagingModule.class,
|
MessagingModule.class,
|
||||||
PrivateGroupModule.class,
|
PrivateGroupModule.class,
|
||||||
PropertiesModule.class,
|
SharingModule.class
|
||||||
RecordModule.class,
|
|
||||||
SharingModule.class,
|
|
||||||
SyncModule.class,
|
|
||||||
SystemModule.class,
|
|
||||||
TransportModule.class,
|
|
||||||
ValidationModule.class,
|
|
||||||
VersioningModule.class
|
|
||||||
})
|
})
|
||||||
interface IntroductionIntegrationTestComponent
|
interface IntroductionIntegrationTestComponent
|
||||||
extends BriarIntegrationTestComponent {
|
extends BriarIntegrationTestComponent {
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ public class MessageEncoderParserIntegrationTest extends BrambleTestCase {
|
|||||||
public MessageEncoderParserIntegrationTest() {
|
public MessageEncoderParserIntegrationTest() {
|
||||||
IntroductionIntegrationTestComponent component =
|
IntroductionIntegrationTestComponent component =
|
||||||
DaggerIntroductionIntegrationTestComponent.builder().build();
|
DaggerIntroductionIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
messageEncoder = new MessageEncoderImpl(clientHelper, messageFactory);
|
messageEncoder = new MessageEncoderImpl(clientHelper, messageFactory);
|
||||||
@@ -245,5 +246,4 @@ public class MessageEncoderParserIntegrationTest extends BrambleTestCase {
|
|||||||
assertEquals(previousMsgId, am.getPreviousMessageId());
|
assertEquals(previousMsgId, am.getPreviousMessageId());
|
||||||
assertEquals(sessionId, am.getSessionId());
|
assertEquals(sessionId, am.getSessionId());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -83,6 +83,7 @@ public class SessionEncoderParserIntegrationTest extends BrambleTestCase {
|
|||||||
public SessionEncoderParserIntegrationTest() {
|
public SessionEncoderParserIntegrationTest() {
|
||||||
IntroductionIntegrationTestComponent component =
|
IntroductionIntegrationTestComponent component =
|
||||||
DaggerIntroductionIntegrationTestComponent.builder().build();
|
DaggerIntroductionIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
sessionEncoder = new SessionEncoderImpl(clientHelper);
|
sessionEncoder = new SessionEncoderImpl(clientHelper);
|
||||||
@@ -338,5 +339,4 @@ public class SessionEncoderParserIntegrationTest extends BrambleTestCase {
|
|||||||
assertEquals(i1.lastLocalMessageId, i2.lastLocalMessageId);
|
assertEquals(i1.lastLocalMessageId, i2.lastLocalMessageId);
|
||||||
assertEquals(i1.lastRemoteMessageId, i2.lastRemoteMessageId);
|
assertEquals(i1.lastRemoteMessageId, i2.lastRemoteMessageId);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,18 +6,10 @@ import org.briarproject.bramble.api.identity.AuthorFactory;
|
|||||||
import org.briarproject.bramble.api.identity.LocalAuthor;
|
import org.briarproject.bramble.api.identity.LocalAuthor;
|
||||||
import org.briarproject.bramble.api.sync.GroupId;
|
import org.briarproject.bramble.api.sync.GroupId;
|
||||||
import org.briarproject.bramble.api.sync.MessageId;
|
import org.briarproject.bramble.api.sync.MessageId;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.forum.ForumPost;
|
import org.briarproject.briar.api.forum.ForumPost;
|
||||||
import org.briarproject.briar.api.forum.ForumPostFactory;
|
import org.briarproject.briar.api.forum.ForumPostFactory;
|
||||||
import org.briarproject.briar.api.messaging.PrivateMessage;
|
import org.briarproject.briar.api.messaging.PrivateMessage;
|
||||||
import org.briarproject.briar.api.messaging.PrivateMessageFactory;
|
import org.briarproject.briar.api.messaging.PrivateMessageFactory;
|
||||||
import org.briarproject.briar.forum.ForumModule;
|
|
||||||
import org.briarproject.briar.test.BriarTestCase;
|
import org.briarproject.briar.test.BriarTestCase;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
@@ -47,8 +39,8 @@ public class MessageSizeIntegrationTest extends BriarTestCase {
|
|||||||
public MessageSizeIntegrationTest() {
|
public MessageSizeIntegrationTest() {
|
||||||
MessageSizeIntegrationTestComponent component =
|
MessageSizeIntegrationTestComponent component =
|
||||||
DaggerMessageSizeIntegrationTestComponent.builder().build();
|
DaggerMessageSizeIntegrationTestComponent.builder().build();
|
||||||
|
component.injectMessageSizeEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
injectEagerSingletons(component);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -85,17 +77,4 @@ public class MessageSizeIntegrationTest extends BriarTestCase {
|
|||||||
+ MAX_FORUM_POST_TEXT_LENGTH);
|
+ MAX_FORUM_POST_TEXT_LENGTH);
|
||||||
assertTrue(length <= MAX_RECORD_PAYLOAD_BYTES);
|
assertTrue(length <= MAX_RECORD_PAYLOAD_BYTES);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void injectEagerSingletons(
|
|
||||||
MessageSizeIntegrationTestComponent component) {
|
|
||||||
component.inject(new ContactModule.EagerSingletons());
|
|
||||||
component.inject(new CryptoExecutorModule.EagerSingletons());
|
|
||||||
component.inject(new ForumModule.EagerSingletons());
|
|
||||||
component.inject(new IdentityModule.EagerSingletons());
|
|
||||||
component.inject(new MessagingModule.EagerSingletons());
|
|
||||||
component.inject(new SystemModule.EagerSingletons());
|
|
||||||
component.inject(new TransportModule.EagerSingletons());
|
|
||||||
component.inject(new ValidationModule.EagerSingletons());
|
|
||||||
component.inject(new VersioningModule.EagerSingletons());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,23 +1,8 @@
|
|||||||
package org.briarproject.briar.messaging;
|
package org.briarproject.briar.messaging;
|
||||||
|
|
||||||
import org.briarproject.bramble.client.ClientModule;
|
import org.briarproject.bramble.BrambleCoreEagerSingletons;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
import org.briarproject.bramble.test.BrambleCoreIntegrationTestModule;
|
||||||
import org.briarproject.bramble.crypto.CryptoModule;
|
|
||||||
import org.briarproject.bramble.data.DataModule;
|
|
||||||
import org.briarproject.bramble.db.DatabaseModule;
|
|
||||||
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
|
||||||
import org.briarproject.bramble.event.EventModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.sync.SyncModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.test.TestLifecycleModule;
|
|
||||||
import org.briarproject.bramble.test.TestPluginConfigModule;
|
|
||||||
import org.briarproject.bramble.test.TestSecureRandomModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.client.BriarClientModule;
|
import org.briarproject.briar.client.BriarClientModule;
|
||||||
import org.briarproject.briar.forum.ForumModule;
|
import org.briarproject.briar.forum.ForumModule;
|
||||||
|
|
||||||
@@ -27,47 +12,24 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
TestDatabaseModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
TestLifecycleModule.class,
|
BrambleCoreModule.class,
|
||||||
TestPluginConfigModule.class,
|
|
||||||
TestSecureRandomModule.class,
|
|
||||||
BriarClientModule.class,
|
BriarClientModule.class,
|
||||||
ClientModule.class,
|
|
||||||
ContactModule.class,
|
|
||||||
CryptoModule.class,
|
|
||||||
CryptoExecutorModule.class,
|
|
||||||
DataModule.class,
|
|
||||||
DatabaseModule.class,
|
|
||||||
DefaultEventExecutorModule.class,
|
|
||||||
EventModule.class,
|
|
||||||
ForumModule.class,
|
ForumModule.class,
|
||||||
IdentityModule.class,
|
MessagingModule.class
|
||||||
MessagingModule.class,
|
|
||||||
SyncModule.class,
|
|
||||||
SystemModule.class,
|
|
||||||
TransportModule.class,
|
|
||||||
ValidationModule.class,
|
|
||||||
VersioningModule.class
|
|
||||||
})
|
})
|
||||||
interface MessageSizeIntegrationTestComponent {
|
interface MessageSizeIntegrationTestComponent
|
||||||
|
extends BrambleCoreEagerSingletons {
|
||||||
|
|
||||||
void inject(MessageSizeIntegrationTest testCase);
|
void inject(MessageSizeIntegrationTest testCase);
|
||||||
|
|
||||||
void inject(ContactModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(CryptoExecutorModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(ForumModule.EagerSingletons init);
|
void inject(ForumModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(IdentityModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(MessagingModule.EagerSingletons init);
|
void inject(MessagingModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(SystemModule.EagerSingletons init);
|
default void injectMessageSizeEagerSingletons() {
|
||||||
|
injectBrambleCoreEagerSingletons();
|
||||||
void inject(TransportModule.EagerSingletons init);
|
inject(new ForumModule.EagerSingletons());
|
||||||
|
inject(new MessagingModule.EagerSingletons());
|
||||||
void inject(ValidationModule.EagerSingletons init);
|
}
|
||||||
|
|
||||||
void inject(VersioningModule.EagerSingletons init);
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,14 +19,7 @@ import org.briarproject.bramble.api.transport.StreamContext;
|
|||||||
import org.briarproject.bramble.api.transport.StreamReaderFactory;
|
import org.briarproject.bramble.api.transport.StreamReaderFactory;
|
||||||
import org.briarproject.bramble.api.transport.StreamWriter;
|
import org.briarproject.bramble.api.transport.StreamWriter;
|
||||||
import org.briarproject.bramble.api.transport.StreamWriterFactory;
|
import org.briarproject.bramble.api.transport.StreamWriterFactory;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.messaging.MessagingManager;
|
import org.briarproject.briar.api.messaging.MessagingManager;
|
||||||
import org.briarproject.briar.api.messaging.PrivateMessage;
|
import org.briarproject.briar.api.messaging.PrivateMessage;
|
||||||
import org.briarproject.briar.api.messaging.PrivateMessageFactory;
|
import org.briarproject.briar.api.messaging.PrivateMessageFactory;
|
||||||
@@ -71,11 +64,13 @@ public class SimplexMessagingIntegrationTest extends BriarTestCase {
|
|||||||
public void setUp() {
|
public void setUp() {
|
||||||
assertTrue(testDir.mkdirs());
|
assertTrue(testDir.mkdirs());
|
||||||
alice = DaggerSimplexMessagingIntegrationTestComponent.builder()
|
alice = DaggerSimplexMessagingIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(aliceDir)).build();
|
.testDatabaseConfigModule(
|
||||||
injectEagerSingletons(alice);
|
new TestDatabaseConfigModule(aliceDir)).build();
|
||||||
|
alice.injectSimplexMessagingEagerSingletons();
|
||||||
bob = DaggerSimplexMessagingIntegrationTestComponent.builder()
|
bob = DaggerSimplexMessagingIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(bobDir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(bobDir))
|
||||||
injectEagerSingletons(bob);
|
.build();
|
||||||
|
bob.injectSimplexMessagingEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -204,18 +199,6 @@ public class SimplexMessagingIntegrationTest extends BriarTestCase {
|
|||||||
deleteTestDirectory(testDir);
|
deleteTestDirectory(testDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void injectEagerSingletons(
|
|
||||||
SimplexMessagingIntegrationTestComponent component) {
|
|
||||||
component.inject(new ContactModule.EagerSingletons());
|
|
||||||
component.inject(new IdentityModule.EagerSingletons());
|
|
||||||
component.inject(new LifecycleModule.EagerSingletons());
|
|
||||||
component.inject(new MessagingModule.EagerSingletons());
|
|
||||||
component.inject(new SystemModule.EagerSingletons());
|
|
||||||
component.inject(new TransportModule.EagerSingletons());
|
|
||||||
component.inject(new ValidationModule.EagerSingletons());
|
|
||||||
component.inject(new VersioningModule.EagerSingletons());
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotNullByDefault
|
@NotNullByDefault
|
||||||
private static class MessageDeliveryListener implements EventListener {
|
private static class MessageDeliveryListener implements EventListener {
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package org.briarproject.briar.messaging;
|
package org.briarproject.briar.messaging;
|
||||||
|
|
||||||
|
import org.briarproject.bramble.BrambleCoreEagerSingletons;
|
||||||
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
import org.briarproject.bramble.api.contact.ContactManager;
|
import org.briarproject.bramble.api.contact.ContactManager;
|
||||||
import org.briarproject.bramble.api.event.EventBus;
|
import org.briarproject.bramble.api.event.EventBus;
|
||||||
import org.briarproject.bramble.api.identity.IdentityManager;
|
import org.briarproject.bramble.api.identity.IdentityManager;
|
||||||
@@ -8,25 +10,7 @@ import org.briarproject.bramble.api.sync.SyncSessionFactory;
|
|||||||
import org.briarproject.bramble.api.transport.KeyManager;
|
import org.briarproject.bramble.api.transport.KeyManager;
|
||||||
import org.briarproject.bramble.api.transport.StreamReaderFactory;
|
import org.briarproject.bramble.api.transport.StreamReaderFactory;
|
||||||
import org.briarproject.bramble.api.transport.StreamWriterFactory;
|
import org.briarproject.bramble.api.transport.StreamWriterFactory;
|
||||||
import org.briarproject.bramble.client.ClientModule;
|
import org.briarproject.bramble.test.BrambleCoreIntegrationTestModule;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoModule;
|
|
||||||
import org.briarproject.bramble.data.DataModule;
|
|
||||||
import org.briarproject.bramble.db.DatabaseModule;
|
|
||||||
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
|
||||||
import org.briarproject.bramble.event.EventModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.record.RecordModule;
|
|
||||||
import org.briarproject.bramble.sync.SyncModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestCryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.test.TestPluginConfigModule;
|
|
||||||
import org.briarproject.bramble.test.TestSecureRandomModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.messaging.MessagingManager;
|
import org.briarproject.briar.api.messaging.MessagingManager;
|
||||||
import org.briarproject.briar.api.messaging.PrivateMessageFactory;
|
import org.briarproject.briar.api.messaging.PrivateMessageFactory;
|
||||||
import org.briarproject.briar.client.BriarClientModule;
|
import org.briarproject.briar.client.BriarClientModule;
|
||||||
@@ -37,45 +21,20 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
TestCryptoExecutorModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
TestDatabaseModule.class,
|
BrambleCoreModule.class,
|
||||||
TestPluginConfigModule.class,
|
|
||||||
TestSecureRandomModule.class,
|
|
||||||
BriarClientModule.class,
|
BriarClientModule.class,
|
||||||
ClientModule.class,
|
MessagingModule.class
|
||||||
ContactModule.class,
|
|
||||||
CryptoModule.class,
|
|
||||||
DataModule.class,
|
|
||||||
DatabaseModule.class,
|
|
||||||
DefaultEventExecutorModule.class,
|
|
||||||
EventModule.class,
|
|
||||||
IdentityModule.class,
|
|
||||||
LifecycleModule.class,
|
|
||||||
MessagingModule.class,
|
|
||||||
RecordModule.class,
|
|
||||||
SyncModule.class,
|
|
||||||
SystemModule.class,
|
|
||||||
TransportModule.class,
|
|
||||||
ValidationModule.class,
|
|
||||||
VersioningModule.class
|
|
||||||
})
|
})
|
||||||
interface SimplexMessagingIntegrationTestComponent {
|
interface SimplexMessagingIntegrationTestComponent
|
||||||
|
extends BrambleCoreEagerSingletons {
|
||||||
void inject(ContactModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(IdentityModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(LifecycleModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(MessagingModule.EagerSingletons init);
|
void inject(MessagingModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(SystemModule.EagerSingletons init);
|
default void injectSimplexMessagingEagerSingletons() {
|
||||||
|
injectBrambleCoreEagerSingletons();
|
||||||
void inject(TransportModule.EagerSingletons init);
|
inject(new MessagingModule.EagerSingletons());
|
||||||
|
}
|
||||||
void inject(ValidationModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(VersioningModule.EagerSingletons init);
|
|
||||||
|
|
||||||
LifecycleManager getLifecycleManager();
|
LifecycleManager getLifecycleManager();
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import org.briarproject.bramble.api.db.DbException;
|
|||||||
import org.briarproject.bramble.api.identity.AuthorId;
|
import org.briarproject.bramble.api.identity.AuthorId;
|
||||||
import org.briarproject.bramble.api.sync.GroupId;
|
import org.briarproject.bramble.api.sync.GroupId;
|
||||||
import org.briarproject.bramble.api.sync.MessageId;
|
import org.briarproject.bramble.api.sync.MessageId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.privategroup.GroupMember;
|
import org.briarproject.briar.api.privategroup.GroupMember;
|
||||||
import org.briarproject.briar.api.privategroup.GroupMessage;
|
import org.briarproject.briar.api.privategroup.GroupMessage;
|
||||||
import org.briarproject.briar.api.privategroup.GroupMessageHeader;
|
import org.briarproject.briar.api.privategroup.GroupMessageHeader;
|
||||||
@@ -70,19 +70,23 @@ public class PrivateGroupIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import org.briarproject.bramble.api.contact.Contact;
|
|||||||
import org.briarproject.bramble.api.data.BdfList;
|
import org.briarproject.bramble.api.data.BdfList;
|
||||||
import org.briarproject.bramble.api.sync.GroupId;
|
import org.briarproject.bramble.api.sync.GroupId;
|
||||||
import org.briarproject.bramble.api.sync.MessageId;
|
import org.briarproject.bramble.api.sync.MessageId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.client.MessageTracker.GroupCount;
|
import org.briarproject.briar.api.client.MessageTracker.GroupCount;
|
||||||
import org.briarproject.briar.api.privategroup.GroupMember;
|
import org.briarproject.briar.api.privategroup.GroupMember;
|
||||||
import org.briarproject.briar.api.privategroup.GroupMessage;
|
import org.briarproject.briar.api.privategroup.GroupMessage;
|
||||||
@@ -59,19 +59,23 @@ public class PrivateGroupManagerIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package org.briarproject.briar.privategroup.invitation;
|
|||||||
|
|
||||||
import org.briarproject.bramble.api.db.DbException;
|
import org.briarproject.bramble.api.db.DbException;
|
||||||
import org.briarproject.bramble.api.sync.Group;
|
import org.briarproject.bramble.api.sync.Group;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.client.ProtocolStateException;
|
import org.briarproject.briar.api.client.ProtocolStateException;
|
||||||
import org.briarproject.briar.api.conversation.ConversationMessageHeader;
|
import org.briarproject.briar.api.conversation.ConversationMessageHeader;
|
||||||
import org.briarproject.briar.api.privategroup.GroupMessage;
|
import org.briarproject.briar.api.privategroup.GroupMessage;
|
||||||
@@ -58,19 +58,23 @@ public class GroupInvitationIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import org.briarproject.bramble.api.event.Event;
|
|||||||
import org.briarproject.bramble.api.event.EventListener;
|
import org.briarproject.bramble.api.event.EventListener;
|
||||||
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
||||||
import org.briarproject.bramble.api.sync.GroupId;
|
import org.briarproject.bramble.api.sync.GroupId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.blog.Blog;
|
import org.briarproject.briar.api.blog.Blog;
|
||||||
import org.briarproject.briar.api.blog.BlogFactory;
|
import org.briarproject.briar.api.blog.BlogFactory;
|
||||||
import org.briarproject.briar.api.blog.BlogInvitationRequest;
|
import org.briarproject.briar.api.blog.BlogInvitationRequest;
|
||||||
@@ -82,19 +82,23 @@ public class BlogSharingIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
|
|||||||
import org.briarproject.bramble.api.sync.Group;
|
import org.briarproject.bramble.api.sync.Group;
|
||||||
import org.briarproject.bramble.api.sync.Message;
|
import org.briarproject.bramble.api.sync.Message;
|
||||||
import org.briarproject.bramble.api.sync.MessageId;
|
import org.briarproject.bramble.api.sync.MessageId;
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
import org.briarproject.bramble.test.TestDatabaseConfigModule;
|
||||||
import org.briarproject.briar.api.conversation.ConversationMessageHeader;
|
import org.briarproject.briar.api.conversation.ConversationMessageHeader;
|
||||||
import org.briarproject.briar.api.conversation.ConversationResponse;
|
import org.briarproject.briar.api.conversation.ConversationResponse;
|
||||||
import org.briarproject.briar.api.forum.Forum;
|
import org.briarproject.briar.api.forum.Forum;
|
||||||
@@ -86,19 +86,23 @@ public class ForumSharingIntegrationTest
|
|||||||
protected void createComponents() {
|
protected void createComponents() {
|
||||||
BriarIntegrationTestComponent component =
|
BriarIntegrationTestComponent component =
|
||||||
DaggerBriarIntegrationTestComponent.builder().build();
|
DaggerBriarIntegrationTestComponent.builder().build();
|
||||||
|
component.injectBriarEagerSingletons();
|
||||||
component.inject(this);
|
component.inject(this);
|
||||||
|
|
||||||
c0 = DaggerBriarIntegrationTestComponent.builder()
|
c0 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t0Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t0Dir))
|
||||||
injectEagerSingletons(c0);
|
.build();
|
||||||
|
c0.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c1 = DaggerBriarIntegrationTestComponent.builder()
|
c1 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t1Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t1Dir))
|
||||||
injectEagerSingletons(c1);
|
.build();
|
||||||
|
c1.injectBriarEagerSingletons();
|
||||||
|
|
||||||
c2 = DaggerBriarIntegrationTestComponent.builder()
|
c2 = DaggerBriarIntegrationTestComponent.builder()
|
||||||
.testDatabaseModule(new TestDatabaseModule(t2Dir)).build();
|
.testDatabaseConfigModule(new TestDatabaseConfigModule(t2Dir))
|
||||||
injectEagerSingletons(c2);
|
.build();
|
||||||
|
c2.injectBriarEagerSingletons();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addForumForSharer() throws DbException {
|
private void addForumForSharer() throws DbException {
|
||||||
|
|||||||
@@ -28,16 +28,7 @@ import org.briarproject.bramble.api.sync.SyncSessionFactory;
|
|||||||
import org.briarproject.bramble.api.sync.event.MessageStateChangedEvent;
|
import org.briarproject.bramble.api.sync.event.MessageStateChangedEvent;
|
||||||
import org.briarproject.bramble.api.system.Clock;
|
import org.briarproject.bramble.api.system.Clock;
|
||||||
import org.briarproject.bramble.api.transport.StreamWriter;
|
import org.briarproject.bramble.api.transport.StreamWriter;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.properties.PropertiesModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestUtils;
|
import org.briarproject.bramble.test.TestUtils;
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.blog.BlogFactory;
|
import org.briarproject.briar.api.blog.BlogFactory;
|
||||||
import org.briarproject.briar.api.blog.BlogPostFactory;
|
import org.briarproject.briar.api.blog.BlogPostFactory;
|
||||||
import org.briarproject.briar.api.client.MessageTracker;
|
import org.briarproject.briar.api.client.MessageTracker;
|
||||||
@@ -46,13 +37,6 @@ import org.briarproject.briar.api.forum.ForumPostFactory;
|
|||||||
import org.briarproject.briar.api.privategroup.GroupMessageFactory;
|
import org.briarproject.briar.api.privategroup.GroupMessageFactory;
|
||||||
import org.briarproject.briar.api.privategroup.PrivateGroupFactory;
|
import org.briarproject.briar.api.privategroup.PrivateGroupFactory;
|
||||||
import org.briarproject.briar.api.privategroup.invitation.GroupInvitationFactory;
|
import org.briarproject.briar.api.privategroup.invitation.GroupInvitationFactory;
|
||||||
import org.briarproject.briar.blog.BlogModule;
|
|
||||||
import org.briarproject.briar.forum.ForumModule;
|
|
||||||
import org.briarproject.briar.introduction.IntroductionModule;
|
|
||||||
import org.briarproject.briar.messaging.MessagingModule;
|
|
||||||
import org.briarproject.briar.privategroup.PrivateGroupModule;
|
|
||||||
import org.briarproject.briar.privategroup.invitation.GroupInvitationModule;
|
|
||||||
import org.briarproject.briar.sharing.SharingModule;
|
|
||||||
import org.junit.After;
|
import org.junit.After;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
|
||||||
@@ -183,26 +167,6 @@ public abstract class BriarIntegrationTest<C extends BriarIntegrationTestCompone
|
|||||||
|
|
||||||
abstract protected void createComponents();
|
abstract protected void createComponents();
|
||||||
|
|
||||||
protected void injectEagerSingletons(
|
|
||||||
BriarIntegrationTestComponent component) {
|
|
||||||
component.inject(new BlogModule.EagerSingletons());
|
|
||||||
component.inject(new ContactModule.EagerSingletons());
|
|
||||||
component.inject(new CryptoExecutorModule.EagerSingletons());
|
|
||||||
component.inject(new ForumModule.EagerSingletons());
|
|
||||||
component.inject(new GroupInvitationModule.EagerSingletons());
|
|
||||||
component.inject(new IdentityModule.EagerSingletons());
|
|
||||||
component.inject(new IntroductionModule.EagerSingletons());
|
|
||||||
component.inject(new LifecycleModule.EagerSingletons());
|
|
||||||
component.inject(new MessagingModule.EagerSingletons());
|
|
||||||
component.inject(new PrivateGroupModule.EagerSingletons());
|
|
||||||
component.inject(new PropertiesModule.EagerSingletons());
|
|
||||||
component.inject(new SharingModule.EagerSingletons());
|
|
||||||
component.inject(new SystemModule.EagerSingletons());
|
|
||||||
component.inject(new TransportModule.EagerSingletons());
|
|
||||||
component.inject(new ValidationModule.EagerSingletons());
|
|
||||||
component.inject(new VersioningModule.EagerSingletons());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void startLifecycles() throws InterruptedException {
|
private void startLifecycles() throws InterruptedException {
|
||||||
// Start the lifecycle manager and wait for it to finish starting
|
// Start the lifecycle manager and wait for it to finish starting
|
||||||
lifecycleManager0 = c0.getLifecycleManager();
|
lifecycleManager0 = c0.getLifecycleManager();
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package org.briarproject.briar.test;
|
package org.briarproject.briar.test;
|
||||||
|
|
||||||
|
import org.briarproject.bramble.BrambleCoreEagerSingletons;
|
||||||
|
import org.briarproject.bramble.BrambleCoreModule;
|
||||||
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;
|
||||||
@@ -9,26 +11,7 @@ import org.briarproject.bramble.api.identity.IdentityManager;
|
|||||||
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
|
||||||
import org.briarproject.bramble.api.properties.TransportPropertyManager;
|
import org.briarproject.bramble.api.properties.TransportPropertyManager;
|
||||||
import org.briarproject.bramble.api.sync.SyncSessionFactory;
|
import org.briarproject.bramble.api.sync.SyncSessionFactory;
|
||||||
import org.briarproject.bramble.client.ClientModule;
|
import org.briarproject.bramble.test.BrambleCoreIntegrationTestModule;
|
||||||
import org.briarproject.bramble.contact.ContactModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoExecutorModule;
|
|
||||||
import org.briarproject.bramble.crypto.CryptoModule;
|
|
||||||
import org.briarproject.bramble.data.DataModule;
|
|
||||||
import org.briarproject.bramble.db.DatabaseModule;
|
|
||||||
import org.briarproject.bramble.event.DefaultEventExecutorModule;
|
|
||||||
import org.briarproject.bramble.event.EventModule;
|
|
||||||
import org.briarproject.bramble.identity.IdentityModule;
|
|
||||||
import org.briarproject.bramble.lifecycle.LifecycleModule;
|
|
||||||
import org.briarproject.bramble.properties.PropertiesModule;
|
|
||||||
import org.briarproject.bramble.record.RecordModule;
|
|
||||||
import org.briarproject.bramble.sync.SyncModule;
|
|
||||||
import org.briarproject.bramble.sync.validation.ValidationModule;
|
|
||||||
import org.briarproject.bramble.system.SystemModule;
|
|
||||||
import org.briarproject.bramble.test.TestDatabaseModule;
|
|
||||||
import org.briarproject.bramble.test.TestPluginConfigModule;
|
|
||||||
import org.briarproject.bramble.test.TestSecureRandomModule;
|
|
||||||
import org.briarproject.bramble.transport.TransportModule;
|
|
||||||
import org.briarproject.bramble.versioning.VersioningModule;
|
|
||||||
import org.briarproject.briar.api.blog.BlogFactory;
|
import org.briarproject.briar.api.blog.BlogFactory;
|
||||||
import org.briarproject.briar.api.blog.BlogManager;
|
import org.briarproject.briar.api.blog.BlogManager;
|
||||||
import org.briarproject.briar.api.blog.BlogSharingManager;
|
import org.briarproject.briar.api.blog.BlogSharingManager;
|
||||||
@@ -53,70 +36,46 @@ import dagger.Component;
|
|||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
@Component(modules = {
|
@Component(modules = {
|
||||||
TestDatabaseModule.class,
|
BrambleCoreIntegrationTestModule.class,
|
||||||
TestPluginConfigModule.class,
|
BrambleCoreModule.class,
|
||||||
TestSecureRandomModule.class,
|
|
||||||
BlogModule.class,
|
BlogModule.class,
|
||||||
BriarClientModule.class,
|
BriarClientModule.class,
|
||||||
ClientModule.class,
|
|
||||||
ContactModule.class,
|
|
||||||
CryptoModule.class,
|
|
||||||
CryptoExecutorModule.class,
|
|
||||||
DataModule.class,
|
|
||||||
DatabaseModule.class,
|
|
||||||
DefaultEventExecutorModule.class,
|
|
||||||
EventModule.class,
|
|
||||||
ForumModule.class,
|
ForumModule.class,
|
||||||
GroupInvitationModule.class,
|
GroupInvitationModule.class,
|
||||||
IdentityModule.class,
|
|
||||||
IntroductionModule.class,
|
IntroductionModule.class,
|
||||||
LifecycleModule.class,
|
|
||||||
MessagingModule.class,
|
MessagingModule.class,
|
||||||
PrivateGroupModule.class,
|
PrivateGroupModule.class,
|
||||||
PropertiesModule.class,
|
SharingModule.class
|
||||||
RecordModule.class,
|
|
||||||
SharingModule.class,
|
|
||||||
SyncModule.class,
|
|
||||||
SystemModule.class,
|
|
||||||
TransportModule.class,
|
|
||||||
ValidationModule.class,
|
|
||||||
VersioningModule.class
|
|
||||||
})
|
})
|
||||||
public interface BriarIntegrationTestComponent {
|
public interface BriarIntegrationTestComponent
|
||||||
|
extends BrambleCoreEagerSingletons {
|
||||||
|
|
||||||
void inject(BriarIntegrationTest<BriarIntegrationTestComponent> init);
|
void inject(BriarIntegrationTest<BriarIntegrationTestComponent> init);
|
||||||
|
|
||||||
void inject(BlogModule.EagerSingletons init);
|
void inject(BlogModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(ContactModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(CryptoExecutorModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(ForumModule.EagerSingletons init);
|
void inject(ForumModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(GroupInvitationModule.EagerSingletons init);
|
void inject(GroupInvitationModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(IdentityModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(IntroductionModule.EagerSingletons init);
|
void inject(IntroductionModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(LifecycleModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(MessagingModule.EagerSingletons init);
|
void inject(MessagingModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(PrivateGroupModule.EagerSingletons init);
|
void inject(PrivateGroupModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(PropertiesModule.EagerSingletons init);
|
|
||||||
|
|
||||||
void inject(SharingModule.EagerSingletons init);
|
void inject(SharingModule.EagerSingletons init);
|
||||||
|
|
||||||
void inject(SystemModule.EagerSingletons init);
|
default void injectBriarEagerSingletons() {
|
||||||
|
injectBrambleCoreEagerSingletons();
|
||||||
void inject(TransportModule.EagerSingletons init);
|
inject(new BlogModule.EagerSingletons());
|
||||||
|
inject(new ForumModule.EagerSingletons());
|
||||||
void inject(ValidationModule.EagerSingletons init);
|
inject(new GroupInvitationModule.EagerSingletons());
|
||||||
|
inject(new IntroductionModule.EagerSingletons());
|
||||||
void inject(VersioningModule.EagerSingletons init);
|
inject(new MessagingModule.EagerSingletons());
|
||||||
|
inject(new PrivateGroupModule.EagerSingletons());
|
||||||
|
inject(new SharingModule.EagerSingletons());
|
||||||
|
}
|
||||||
|
|
||||||
LifecycleManager getLifecycleManager();
|
LifecycleManager getLifecycleManager();
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import javax.inject.Singleton
|
|||||||
)
|
)
|
||||||
@Singleton
|
@Singleton
|
||||||
internal interface BriarHeadlessApp : BrambleCoreEagerSingletons, BriarCoreEagerSingletons {
|
internal interface BriarHeadlessApp : BrambleCoreEagerSingletons, BriarCoreEagerSingletons {
|
||||||
|
|
||||||
fun getRouter(): Router
|
fun getRouter(): Router
|
||||||
|
|
||||||
fun getSecureRandom(): SecureRandom
|
fun getSecureRandom(): SecureRandom
|
||||||
|
|||||||
@@ -4,8 +4,6 @@ import com.fasterxml.jackson.databind.ObjectMapper
|
|||||||
import dagger.Module
|
import dagger.Module
|
||||||
import dagger.Provides
|
import dagger.Provides
|
||||||
import org.briarproject.bramble.api.battery.BatteryManager
|
import org.briarproject.bramble.api.battery.BatteryManager
|
||||||
import org.briarproject.bramble.api.crypto.CryptoComponent
|
|
||||||
import org.briarproject.bramble.api.crypto.PublicKey
|
|
||||||
import org.briarproject.bramble.api.db.DatabaseConfig
|
import org.briarproject.bramble.api.db.DatabaseConfig
|
||||||
import org.briarproject.bramble.api.event.EventBus
|
import org.briarproject.bramble.api.event.EventBus
|
||||||
import org.briarproject.bramble.api.lifecycle.IoExecutor
|
import org.briarproject.bramble.api.lifecycle.IoExecutor
|
||||||
@@ -14,9 +12,6 @@ import org.briarproject.bramble.api.plugin.BackoffFactory
|
|||||||
import org.briarproject.bramble.api.plugin.PluginConfig
|
import org.briarproject.bramble.api.plugin.PluginConfig
|
||||||
import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory
|
import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory
|
||||||
import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory
|
import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory
|
||||||
import org.briarproject.bramble.api.reporting.DevConfig
|
|
||||||
import org.briarproject.bramble.api.reporting.ReportingConstants.DEV_ONION_ADDRESS
|
|
||||||
import org.briarproject.bramble.api.reporting.ReportingConstants.DEV_PUBLIC_KEY_HEX
|
|
||||||
import org.briarproject.bramble.api.system.Clock
|
import org.briarproject.bramble.api.system.Clock
|
||||||
import org.briarproject.bramble.api.system.LocationUtils
|
import org.briarproject.bramble.api.system.LocationUtils
|
||||||
import org.briarproject.bramble.api.system.ResourceProvider
|
import org.briarproject.bramble.api.system.ResourceProvider
|
||||||
@@ -26,17 +21,16 @@ import org.briarproject.bramble.network.JavaNetworkModule
|
|||||||
import org.briarproject.bramble.plugin.tor.CircumventionModule
|
import org.briarproject.bramble.plugin.tor.CircumventionModule
|
||||||
import org.briarproject.bramble.plugin.tor.CircumventionProvider
|
import org.briarproject.bramble.plugin.tor.CircumventionProvider
|
||||||
import org.briarproject.bramble.plugin.tor.UnixTorPluginFactory
|
import org.briarproject.bramble.plugin.tor.UnixTorPluginFactory
|
||||||
|
import org.briarproject.bramble.socks.SocksModule
|
||||||
import org.briarproject.bramble.system.JavaSystemModule
|
import org.briarproject.bramble.system.JavaSystemModule
|
||||||
import org.briarproject.bramble.util.OsUtils.isLinux
|
import org.briarproject.bramble.util.OsUtils.isLinux
|
||||||
import org.briarproject.bramble.util.OsUtils.isMac
|
import org.briarproject.bramble.util.OsUtils.isMac
|
||||||
import org.briarproject.bramble.util.StringUtils.fromHexString
|
|
||||||
import org.briarproject.briar.headless.blogs.HeadlessBlogModule
|
import org.briarproject.briar.headless.blogs.HeadlessBlogModule
|
||||||
import org.briarproject.briar.headless.contact.HeadlessContactModule
|
import org.briarproject.briar.headless.contact.HeadlessContactModule
|
||||||
import org.briarproject.briar.headless.event.HeadlessEventModule
|
import org.briarproject.briar.headless.event.HeadlessEventModule
|
||||||
import org.briarproject.briar.headless.forums.HeadlessForumModule
|
import org.briarproject.briar.headless.forums.HeadlessForumModule
|
||||||
import org.briarproject.briar.headless.messaging.HeadlessMessagingModule
|
import org.briarproject.briar.headless.messaging.HeadlessMessagingModule
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.security.GeneralSecurityException
|
|
||||||
import java.util.Collections.emptyList
|
import java.util.Collections.emptyList
|
||||||
import java.util.concurrent.Executor
|
import java.util.concurrent.Executor
|
||||||
import javax.inject.Singleton
|
import javax.inject.Singleton
|
||||||
@@ -49,6 +43,7 @@ import javax.net.SocketFactory
|
|||||||
CircumventionModule::class,
|
CircumventionModule::class,
|
||||||
DefaultBatteryManagerModule::class,
|
DefaultBatteryManagerModule::class,
|
||||||
DefaultEventExecutorModule::class,
|
DefaultEventExecutorModule::class,
|
||||||
|
SocksModule::class,
|
||||||
HeadlessBlogModule::class,
|
HeadlessBlogModule::class,
|
||||||
HeadlessContactModule::class,
|
HeadlessContactModule::class,
|
||||||
HeadlessEventModule::class,
|
HeadlessEventModule::class,
|
||||||
@@ -95,23 +90,6 @@ internal class HeadlessModule(private val appDir: File) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Provides
|
|
||||||
@Singleton
|
|
||||||
internal fun provideDevConfig(crypto: CryptoComponent): DevConfig {
|
|
||||||
return object : DevConfig {
|
|
||||||
override fun getDevPublicKey(): PublicKey {
|
|
||||||
try {
|
|
||||||
return crypto.messageKeyParser.parsePublicKey(fromHexString(DEV_PUBLIC_KEY_HEX))
|
|
||||||
} catch (e: GeneralSecurityException) {
|
|
||||||
throw RuntimeException(e)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun getDevOnionAddress(): String = DEV_ONION_ADDRESS
|
|
||||||
override fun getReportDir(): File = File(appDir, "reportDir")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
@Singleton
|
@Singleton
|
||||||
internal fun provideObjectMapper() = ObjectMapper()
|
internal fun provideObjectMapper() = ObjectMapper()
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ import javax.inject.Singleton
|
|||||||
)
|
)
|
||||||
@Singleton
|
@Singleton
|
||||||
internal interface BriarHeadlessTestApp : BrambleCoreEagerSingletons, BriarCoreEagerSingletons {
|
internal interface BriarHeadlessTestApp : BrambleCoreEagerSingletons, BriarCoreEagerSingletons {
|
||||||
|
|
||||||
fun getRouter(): Router
|
fun getRouter(): Router
|
||||||
|
|
||||||
fun getCryptoComponent(): CryptoComponent
|
fun getCryptoComponent(): CryptoComponent
|
||||||
|
|||||||
@@ -3,14 +3,13 @@ package org.briarproject.briar.headless
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper
|
import com.fasterxml.jackson.databind.ObjectMapper
|
||||||
import dagger.Module
|
import dagger.Module
|
||||||
import dagger.Provides
|
import dagger.Provides
|
||||||
import org.briarproject.bramble.api.crypto.PublicKey
|
|
||||||
import org.briarproject.bramble.api.db.DatabaseConfig
|
import org.briarproject.bramble.api.db.DatabaseConfig
|
||||||
import org.briarproject.bramble.api.plugin.PluginConfig
|
import org.briarproject.bramble.api.plugin.PluginConfig
|
||||||
import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory
|
import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory
|
||||||
import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory
|
import org.briarproject.bramble.api.plugin.simplex.SimplexPluginFactory
|
||||||
import org.briarproject.bramble.api.reporting.DevConfig
|
|
||||||
import org.briarproject.bramble.network.JavaNetworkModule
|
import org.briarproject.bramble.network.JavaNetworkModule
|
||||||
import org.briarproject.bramble.plugin.tor.CircumventionModule
|
import org.briarproject.bramble.plugin.tor.CircumventionModule
|
||||||
|
import org.briarproject.bramble.socks.SocksModule
|
||||||
import org.briarproject.bramble.system.JavaSystemModule
|
import org.briarproject.bramble.system.JavaSystemModule
|
||||||
import org.briarproject.briar.headless.blogs.HeadlessBlogModule
|
import org.briarproject.briar.headless.blogs.HeadlessBlogModule
|
||||||
import org.briarproject.briar.headless.contact.HeadlessContactModule
|
import org.briarproject.briar.headless.contact.HeadlessContactModule
|
||||||
@@ -26,6 +25,7 @@ import javax.inject.Singleton
|
|||||||
JavaNetworkModule::class,
|
JavaNetworkModule::class,
|
||||||
JavaSystemModule::class,
|
JavaSystemModule::class,
|
||||||
CircumventionModule::class,
|
CircumventionModule::class,
|
||||||
|
SocksModule::class,
|
||||||
HeadlessBlogModule::class,
|
HeadlessBlogModule::class,
|
||||||
HeadlessContactModule::class,
|
HeadlessContactModule::class,
|
||||||
HeadlessEventModule::class,
|
HeadlessEventModule::class,
|
||||||
@@ -57,14 +57,6 @@ internal class HeadlessTestModule(private val appDir: File) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Provides
|
|
||||||
@Singleton
|
|
||||||
internal fun provideDevConfig(): DevConfig = object : DevConfig {
|
|
||||||
override fun getDevPublicKey(): PublicKey = throw NotImplementedError()
|
|
||||||
override fun getDevOnionAddress(): String = throw NotImplementedError()
|
|
||||||
override fun getReportDir(): File = throw NotImplementedError()
|
|
||||||
}
|
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
@Singleton
|
@Singleton
|
||||||
internal fun provideObjectMapper() = ObjectMapper()
|
internal fun provideObjectMapper() = ObjectMapper()
|
||||||
|
|||||||
Reference in New Issue
Block a user