mirror of
https://github.com/plan-player-analytics/Plan.git
synced 2025-03-02 11:11:21 +01:00
Fixed some test concurrency issues due to Processing
This commit is contained in:
parent
dea1aa3f4f
commit
e3d883b43e
@ -53,7 +53,7 @@ public class Processing implements SubSystem {
|
||||
criticalExecutor = createExecutor(2, "Plan Critical-pool-%d");
|
||||
}
|
||||
|
||||
private ExecutorService createExecutor(int i, String s) {
|
||||
protected ExecutorService createExecutor(int i, String s) {
|
||||
return Executors.newFixedThreadPool(i, new ThreadFactoryBuilder().setNameFormat(s).build());
|
||||
}
|
||||
|
||||
|
@ -24,6 +24,7 @@ import com.djrapitops.plan.db.SQLiteDB;
|
||||
import com.djrapitops.plan.system.database.DBSystem;
|
||||
import com.djrapitops.plan.system.listeners.ListenerSystem;
|
||||
import com.djrapitops.plan.system.locale.Locale;
|
||||
import com.djrapitops.plan.system.processing.Processing;
|
||||
import com.djrapitops.plan.system.settings.config.PlanConfig;
|
||||
import com.djrapitops.plan.system.settings.paths.DatabaseSettings;
|
||||
import com.djrapitops.plan.system.tasks.TaskSystem;
|
||||
@ -35,6 +36,7 @@ import com.djrapitops.pluginbridge.plan.Bridge;
|
||||
import dagger.Module;
|
||||
import dagger.Provides;
|
||||
import org.mockito.Mockito;
|
||||
import utilities.mocks.TestProcessing;
|
||||
|
||||
import javax.inject.Singleton;
|
||||
|
||||
@ -105,4 +107,10 @@ public class PluginSuperClassBindingModule {
|
||||
return Mockito.mock(Bridge.class);
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
Processing provideProcessing(TestProcessing testProcessing) {
|
||||
return testProcessing;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package utilities.mocks;
|
||||
|
||||
import com.djrapitops.plan.system.locale.Locale;
|
||||
import com.djrapitops.plan.system.processing.Processing;
|
||||
import com.djrapitops.plugin.logging.console.PluginLogger;
|
||||
import com.djrapitops.plugin.logging.error.ErrorHandler;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
import dagger.Lazy;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
|
||||
/**
|
||||
* Directly executing version of Processing for Tests to avoid concurrency issues during tests.
|
||||
*
|
||||
* @author Rsl1122
|
||||
*/
|
||||
@Singleton
|
||||
public class TestProcessing extends Processing {
|
||||
|
||||
@Inject
|
||||
public TestProcessing(Lazy<Locale> locale, PluginLogger logger, ErrorHandler errorHandler) {
|
||||
super(locale, logger, errorHandler);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ExecutorService createExecutor(int i, String s) {
|
||||
return MoreExecutors.newDirectExecutorService();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user