@Before public void setUp() throws Exception { clientConfiguration = new DefaultClientConfiguration(); diContainer.put("clientConfiguration", clientConfiguration); diContainer.put("dropUrlGenerator", new DropUrlGenerator("http://localhost:5000")); identityBuilderFactory = new IdentityBuilderFactory((DropUrlGenerator) diContainer.get("dropUrlGenerator")); diContainer.put("identityBuilderFactory", identityBuilderFactory); diContainer.put("account", new Account("a", "b", "c")); diContainer.put("identityRepository", identityRepository); diContainer.put("contactRepository", contactRepository); boxVolumeFactory = new BoxVolumeFactoryStub(); diContainer.put("boxVolumeFactory", boxVolumeFactory); loadManager = new DefaultTransferManager(); diContainer.put("loadManager", loadManager); diContainer.put("dropMessageRepository", dropMessageRepository); diContainer.put("dropConnector", httpDropConnector); diContainer.put("transferManager", new DefaultTransferManager()); diContainer.put("sharingService", sharingService); diContainer.put("reportHandler", crashReportHandler); MessageRendererFactory messageRendererFactory = new MessageRendererFactory(); messageRendererFactory.setFallbackRenderer(new PlaintextMessageRenderer()); diContainer.put("messageRendererFactory", messageRendererFactory); Injector.setConfigurationSource(diContainer::get); Injector.setInstanceSupplier(new RecursiveInjectionInstanceSupplier(diContainer)); identity = identityBuilderFactory.factory().withAlias("TestAlias").build(); clientConfiguration.selectIdentity(identity); }
@After public void tearDown() throws Exception { try { Injector.forgetAll(); } catch (Exception e) { e.printStackTrace(); } }
private ClientConfiguration initDiContainer() throws Exception { if (!Files.exists(DATABASE_FILE) && !Files.exists(DATABASE_FILE.getParent())) { Files.createDirectories(DATABASE_FILE.getParent()); } Persistence<String> persistence = new SQLitePersistence(DATABASE_FILE.toFile().getAbsolutePath()); transferManager = new MonitoredTransferManager(new DefaultTransferManager()); customProperties.put("loadManager", transferManager); customProperties.put("transferManager", transferManager); customProperties.put("persistence", persistence); customProperties.put("dropUrlGenerator", new DropUrlGenerator("https://qdrop.prae.me")); identityRepository = new PersistenceIdentityRepository(persistence); customProperties.put("identityRepository", identityRepository); PersistenceAccountRepository accountRepository = new PersistenceAccountRepository(persistence); customProperties.put("accountRepository", accountRepository); contactRepository = new PersistenceContactRepository(persistence); customProperties.put("contactRepository", contactRepository); dropMessageRepository = new PersistenceDropMessageRepository(persistence); customProperties.put("dropMessageRepository", dropMessageRepository); customProperties.put("dropConnector", dropConnector); customProperties.put("reportHandler", new HockeyApp()); ClientConfiguration clientConfig = getClientConfiguration(persistence, identityRepository, accountRepository); if (!clientConfig.hasDeviceId()) { clientConfig.setDeviceId(generateDeviceId()); } PersistenceContactRepository contactRepository = new PersistenceContactRepository(persistence); customProperties.put("contactRepository", contactRepository); customProperties.put("clientConfiguration", clientConfig); customProperties.put("primaryStage", primaryStage); rendererFactory.setFallbackRenderer(new PlaintextMessageRenderer()); customProperties.put("messageRendererFactory", rendererFactory); Injector.setConfigurationSource(customProperties::get); Injector.setInstanceSupplier(new RecursiveInjectionInstanceSupplier(customProperties)); return clientConfig; }