You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dp...@apache.org on 2018/09/25 21:56:19 UTC
[ignite-teamcity-bot] branch di-refactoring updated: Additional
test for observer startup; ctor injection supported
This is an automated email from the ASF dual-hosted git repository.
dpavlov pushed a commit to branch di-refactoring
in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git
The following commit(s) were added to refs/heads/di-refactoring by this push:
new a466ed9 Additional test for observer startup; ctor injection supported
a466ed9 is described below
commit a466ed9270252c1f0c14c2fcf4ece2db7d482ef6
Author: Dmitriy Pavlov <dp...@apache.org>
AuthorDate: Wed Sep 26 00:56:16 2018 +0300
Additional test for observer startup; ctor injection supported
---
.../org/apache/ignite/ci/observer/BuildObserver.java | 7 +++++--
.../java/org/apache/ignite/ci/di/DiContextTest.java | 20 ++++++++++++++++++--
2 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/BuildObserver.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/BuildObserver.java
index ced9593..77fee6f 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/BuildObserver.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/BuildObserver.java
@@ -33,14 +33,17 @@ public class BuildObserver {
private final Timer timer;
/** Task, which should be done periodically. */
- @Inject ObserverTask observerTask;
+ ObserverTask observerTask;
/**
*/
- public BuildObserver() {
+ @Inject
+ public BuildObserver( ObserverTask observerTask) {
timer = new Timer();
timer.schedule(observerTask, 0, period);
+
+ this.observerTask = observerTask;
}
/**
diff --git a/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/di/DiContextTest.java b/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/di/DiContextTest.java
index 569d429..1888ea0 100644
--- a/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/di/DiContextTest.java
+++ b/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/di/DiContextTest.java
@@ -19,7 +19,10 @@ package org.apache.ignite.ci.di;
import com.google.common.base.Preconditions;
import com.google.inject.Guice;
import com.google.inject.Injector;
+import org.apache.ignite.ci.ITcHelper;
import org.apache.ignite.ci.ITcServerProvider;
+import org.apache.ignite.ci.TcHelper;
+import org.apache.ignite.ci.observer.BuildObserver;
import org.apache.ignite.ci.observer.ObserverTask;
import org.apache.ignite.ci.web.TcUpdatePool;
import org.junit.Test;
@@ -58,9 +61,12 @@ public class DiContextTest {
pool.stop();
}
- private void validateInstanceCachedFor(Injector injector, Class<?> type) {
- Preconditions.checkState(injector.getInstance(type) == injector.getInstance(type),
+ private <T> T validateInstanceCachedFor(Injector injector, Class<T> type) {
+ final T firstInstance = injector.getInstance(type);
+ Preconditions.checkState(firstInstance == injector.getInstance(type),
"Instance not cached for type " + type);
+
+ return firstInstance;
}
@Test
@@ -101,4 +107,14 @@ public class DiContextTest {
@MonitoredTask(name = TASK_NME)
public void doSmth() {}
}
+
+ @Test
+ public void checkSingletonTcHelper() {
+ IgniteTcBotModule igniteTcBotModule = new IgniteTcBotModule();
+ Injector injector = Guice.createInjector(igniteTcBotModule);
+
+ validateInstanceCachedFor(injector, ITcHelper.class);
+
+ validateInstanceCachedFor(injector, BuildObserver.class).stop();
+ }
}