http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiOneNodeSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiOneNodeSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiOneNodeSelfTest.java
index d01a207..08173d4 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiOneNodeSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiOneNodeSelfTest.java
@@ -31,7 +31,7 @@ import java.util.*;
 /**
  * Job stealing failover SPI test for one node.
  */
-@GridSpiTest(spi = JobStealingFailoverSpi.class, group = "Failover SPI")
+@GridSpiTest(spiConfiguration = JobStealingFailoverSpiConfiguration.class, 
group = "Failover SPI")
 public class GridJobStealingFailoverSpiOneNodeSelfTest extends 
GridSpiAbstractTest<JobStealingFailoverSpi> {
     /** {@inheritDoc} */
     @Override protected GridSpiTestContext initSpiContext() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiSelfTest.java
index 597c747..add6e50 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiSelfTest.java
@@ -35,7 +35,7 @@ import static 
org.apache.ignite.spi.failover.jobstealing.JobStealingFailoverSpi.
 /**
  * Self test for {@link JobStealingFailoverSpi} SPI.
  */
-@GridSpiTest(spi = JobStealingFailoverSpi.class, group = "Failover SPI")
+@GridSpiTest(spiConfiguration = JobStealingFailoverSpiConfiguration.class, 
group = "Failover SPI")
 public class GridJobStealingFailoverSpiSelfTest extends 
GridSpiAbstractTest<JobStealingFailoverSpi> {
     /** {@inheritDoc} */
     @Override protected GridSpiTestContext initSpiContext() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiStartStopSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiStartStopSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiStartStopSelfTest.java
index d25cc55..8882331 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiStartStopSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/jobstealing/GridJobStealingFailoverSpiStartStopSelfTest.java
@@ -28,7 +28,7 @@ import java.util.*;
 /**
  * Job stealing failover SPI start-stop test.
  */
-@GridSpiTest(spi = JobStealingFailoverSpi.class, group = "Failover SPI")
+@GridSpiTest(spiConfiguration = JobStealingFailoverSpiConfiguration.class, 
group = "Failover SPI")
 public class GridJobStealingFailoverSpiStartStopSelfTest extends 
GridSpiStartStopAbstractTest<FailoverSpi> {
     /** {@inheritDoc} */
     @Override protected GridSpiTestContext initSpiContext() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiSelfTest.java
index b3d56cd..b8213c7 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiSelfTest.java
@@ -27,7 +27,7 @@ import java.util.*;
 /**
  * Never failover SPI test.
  */
-@GridSpiTest(spi = NeverFailoverSpi.class, group = "Failover SPI")
+@GridSpiTest(spiConfiguration = NeverFailoverSpiConfiguration.class, group = 
"Failover SPI")
 public class GridNeverFailoverSpiSelfTest extends 
GridSpiAbstractTest<NeverFailoverSpi> {
     /**
      * @throws Exception If failed.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiStartStopSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiStartStopSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiStartStopSelfTest.java
index 6ec57d4..f56b560 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiStartStopSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/failover/never/GridNeverFailoverSpiStartStopSelfTest.java
@@ -24,7 +24,7 @@ import org.apache.ignite.testframework.junits.spi.*;
 /**
  * Never-failover SPI start-stop test.
  */
-@GridSpiTest(spi = NeverFailoverSpi.class, group = "Failover SPI")
+@GridSpiTest(spiConfiguration = NeverFailoverSpiConfiguration.class, group = 
"Failover SPI")
 public class GridNeverFailoverSpiStartStopSelfTest extends 
GridSpiStartStopAbstractTest<FailoverSpi> {
     // No-op.
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiConfigSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiConfigSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiConfigSelfTest.java
index f54eda1..2537c4d 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiConfigSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiConfigSelfTest.java
@@ -22,13 +22,14 @@ import org.apache.ignite.testframework.junits.spi.*;
 /**
  *
  */
-@GridSpiTest(spi = AdaptiveLoadBalancingSpi.class, group = "LoadBalancing SPI")
+@GridSpiTest(spiConfiguration = AdaptiveLoadBalancingSpiConfiguration.class, 
group = "LoadBalancing SPI")
 public class GridAdaptiveLoadBalancingSpiConfigSelfTest
     extends GridSpiAbstractConfigTest<AdaptiveLoadBalancingSpi> {
     /**
      * @throws Exception If failed.
      */
     public void testNegativeConfig() throws Exception {
-        checkNegativeSpiProperty(new AdaptiveLoadBalancingSpi(), "loadProbe", 
null);
+        checkNegativeSpiProperty(new AdaptiveLoadBalancingSpi(new 
AdaptiveLoadBalancingSpiConfiguration()),
+            "loadProbe", null);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiMultipleNodeSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiMultipleNodeSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiMultipleNodeSelfTest.java
index c19938f..9216dd6 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiMultipleNodeSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiMultipleNodeSelfTest.java
@@ -27,7 +27,7 @@ import java.util.*;
 /**
  * Tests adaptive load balancing SPI.
  */
-@GridSpiTest(spi = AdaptiveLoadBalancingSpi.class, group = "Load Balancing 
SPI")
+@GridSpiTest(spiConfiguration = AdaptiveLoadBalancingSpiConfiguration.class, 
group = "Load Balancing SPI")
 public class GridAdaptiveLoadBalancingSpiMultipleNodeSelfTest extends 
GridSpiAbstractTest<AdaptiveLoadBalancingSpi> {
     /** */
     private static final int RMT_NODE_CNT = 10;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiSelfTest.java
index 711bfa1..bfddeb9 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiSelfTest.java
@@ -29,7 +29,7 @@ import java.util.*;
 /**
  * Tests adaptive load balancing SPI.
  */
-@GridSpiTest(spi = AdaptiveLoadBalancingSpi.class, group = "Load Balancing 
SPI")
+@GridSpiTest(spiConfiguration = AdaptiveLoadBalancingSpiConfiguration.class, 
group = "Load Balancing SPI")
 public class GridAdaptiveLoadBalancingSpiSelfTest extends 
GridSpiAbstractTest<AdaptiveLoadBalancingSpi> {
     /** {@inheritDoc} */
     @Override protected GridSpiTestContext initSpiContext() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiStartStopSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiStartStopSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiStartStopSelfTest.java
index 1ae92fc..0faeb13 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiStartStopSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/adaptive/GridAdaptiveLoadBalancingSpiStartStopSelfTest.java
@@ -24,7 +24,7 @@ import org.apache.ignite.testframework.junits.spi.*;
  * Adaptive load balancing SPI start-stop test.
  */
 @SuppressWarnings({"JUnitTestCaseWithNoTests"})
-@GridSpiTest(spi = AdaptiveLoadBalancingSpi.class, group = "LoadBalancing SPI")
+@GridSpiTest(spiConfiguration = AdaptiveLoadBalancingSpiConfiguration.class, 
group = "LoadBalancing SPI")
 public class GridAdaptiveLoadBalancingSpiStartStopSelfTest extends
     GridSpiStartStopAbstractTest<AdaptiveLoadBalancingSpi> {
     // No configs.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingNotPerTaskMultithreadedSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingNotPerTaskMultithreadedSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingNotPerTaskMultithreadedSelfTest.java
index bbc8196..17549f3 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingNotPerTaskMultithreadedSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingNotPerTaskMultithreadedSelfTest.java
@@ -31,7 +31,7 @@ import java.util.concurrent.atomic.*;
 /**
  * Multithreaded tests for global load balancer.
  */
-@GridSpiTest(spi = RoundRobinLoadBalancingSpi.class, group = "Load Balancing 
SPI")
+@GridSpiTest(spiConfiguration = RoundRobinLoadBalancingSpiConfiguration.class, 
group = "Load Balancing SPI")
 public class GridRoundRobinLoadBalancingNotPerTaskMultithreadedSelfTest
     extends GridSpiAbstractTest<RoundRobinLoadBalancingSpi> {
     /** Thread count. */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiLocalNodeSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiLocalNodeSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiLocalNodeSelfTest.java
index 2545283..46fe174 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiLocalNodeSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiLocalNodeSelfTest.java
@@ -26,7 +26,8 @@ import java.util.*;
 /**
  * Tests Round Robin load balancing for single node.
  */
-@GridSpiTest(spi = RoundRobinLoadBalancingSpi.class, group = "Load Balancing 
SPI", triggerDiscovery = true)
+@GridSpiTest(spiConfiguration = RoundRobinLoadBalancingSpiConfiguration.class,
+    group = "Load Balancing SPI", triggerDiscovery = true)
 public class GridRoundRobinLoadBalancingSpiLocalNodeSelfTest extends
     GridSpiAbstractTest<RoundRobinLoadBalancingSpi> {
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiMultipleNodesSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiMultipleNodesSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiMultipleNodesSelfTest.java
index 5a8bbe9..0d7da63 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiMultipleNodesSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiMultipleNodesSelfTest.java
@@ -32,7 +32,7 @@ import static org.apache.ignite.events.IgniteEventType.*;
 /**
  * Tests round robin load balancing SPI.
  */
-@GridSpiTest(spi = RoundRobinLoadBalancingSpi.class, group = "Load Balancing 
SPI")
+@GridSpiTest(spiConfiguration = RoundRobinLoadBalancingSpiConfiguration.class, 
group = "Load Balancing SPI")
 public class GridRoundRobinLoadBalancingSpiMultipleNodesSelfTest
     extends GridSpiAbstractTest<RoundRobinLoadBalancingSpi> {
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiNotPerTaskSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiNotPerTaskSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiNotPerTaskSelfTest.java
index 5885ce8..940e297 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiNotPerTaskSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiNotPerTaskSelfTest.java
@@ -33,7 +33,7 @@ import static 
org.apache.ignite.spi.loadbalancing.roundrobin.GridRoundRobinTestU
 /**
  * Tests round robin load balancing.
  */
-@GridSpiTest(spi = RoundRobinLoadBalancingSpi.class, group = "Load Balancing 
SPI")
+@GridSpiTest(spiConfiguration = RoundRobinLoadBalancingSpiConfiguration.class, 
group = "Load Balancing SPI")
 public class GridRoundRobinLoadBalancingSpiNotPerTaskSelfTest
     extends GridSpiAbstractTest<RoundRobinLoadBalancingSpi> {
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiStartStopSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiStartStopSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiStartStopSelfTest.java
index 01d3cd2..b8a860f 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiStartStopSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiStartStopSelfTest.java
@@ -24,7 +24,7 @@ import org.apache.ignite.testframework.junits.spi.*;
  * Tests correct start of {@link RoundRobinLoadBalancingSpi}.
  */
 @SuppressWarnings({"JUnitTestCaseWithNoTests"})
-@GridSpiTest(spi = RoundRobinLoadBalancingSpi.class, group = "LoadBalancing 
SPI")
+@GridSpiTest(spiConfiguration = RoundRobinLoadBalancingSpiConfiguration.class, 
group = "LoadBalancing SPI")
 public class GridRoundRobinLoadBalancingSpiStartStopSelfTest
     extends GridSpiStartStopAbstractTest<RoundRobinLoadBalancingSpi> {
     // No configs.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiTopologyChangeSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiTopologyChangeSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiTopologyChangeSelfTest.java
index 2bb14cd..098bfd0 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiTopologyChangeSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/roundrobin/GridRoundRobinLoadBalancingSpiTopologyChangeSelfTest.java
@@ -31,7 +31,7 @@ import static 
org.apache.ignite.spi.loadbalancing.roundrobin.GridRoundRobinTestU
 /**
  * Tests round robin load balancing with topology changes.
  */
-@GridSpiTest(spi = RoundRobinLoadBalancingSpi.class, group = "Load Balancing 
SPI")
+@GridSpiTest(spiConfiguration = RoundRobinLoadBalancingSpiConfiguration.class, 
group = "Load Balancing SPI")
 public class GridRoundRobinLoadBalancingSpiTopologyChangeSelfTest
     extends GridSpiAbstractTest<RoundRobinLoadBalancingSpi> {
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiConfigSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiConfigSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiConfigSelfTest.java
index 00e32f0..eba92da 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiConfigSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiConfigSelfTest.java
@@ -22,13 +22,14 @@ import org.apache.ignite.testframework.junits.spi.*;
 /**
  *
  */
-@GridSpiTest(spi = WeightedRandomLoadBalancingSpi.class, group = "Load 
Balancing SPI")
+@GridSpiTest(spiConfiguration = 
WeightedRandomLoadBalancingSpiConfiguration.class, group = "Load Balancing SPI")
 public class GridWeightedRandomLoadBalancingSpiConfigSelfTest extends
     GridSpiAbstractConfigTest<WeightedRandomLoadBalancingSpi> {
     /**
      * @throws Exception If failed.
      */
     public void testNegativeConfig() throws Exception {
-        checkNegativeSpiProperty(new WeightedRandomLoadBalancingSpi(), 
"nodeWeight", 0);
+        checkNegativeSpiProperty(new WeightedRandomLoadBalancingSpi(new 
WeightedRandomLoadBalancingSpiConfiguration()),
+            "nodeWeight", 0);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiSelfTest.java
index e2adce4..3a8b1b4 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiSelfTest.java
@@ -26,7 +26,7 @@ import java.util.*;
 /**
  * Weighted random load balancing SPI.
  */
-@GridSpiTest(spi = WeightedRandomLoadBalancingSpi.class, group = "Load 
Balancing SPI")
+@GridSpiTest(spiConfiguration = 
WeightedRandomLoadBalancingSpiConfiguration.class, group = "Load Balancing SPI")
 public class GridWeightedRandomLoadBalancingSpiSelfTest extends
     GridSpiAbstractTest<WeightedRandomLoadBalancingSpi> {
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiStartStopSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiStartStopSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiStartStopSelfTest.java
index 204eb26..e155c7b 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiStartStopSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiStartStopSelfTest.java
@@ -24,7 +24,7 @@ import org.apache.ignite.testframework.junits.spi.*;
  * Wighted random load balancing SPI start-stop test.
  */
 @SuppressWarnings({"JUnitTestCaseWithNoTests"})
-@GridSpiTest(spi = WeightedRandomLoadBalancingSpi.class, group = 
"LoadBalancing SPI")
+@GridSpiTest(spiConfiguration = 
WeightedRandomLoadBalancingSpiConfiguration.class, group = "LoadBalancing SPI")
 public class GridWeightedRandomLoadBalancingSpiStartStopSelfTest extends
     GridSpiStartStopAbstractTest<WeightedRandomLoadBalancingSpi> {
     // No configs.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiWeightedSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiWeightedSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiWeightedSelfTest.java
index 4f82590..599d9dd 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiWeightedSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/loadbalancing/weightedrandom/GridWeightedRandomLoadBalancingSpiWeightedSelfTest.java
@@ -30,7 +30,7 @@ import static 
org.apache.ignite.spi.loadbalancing.weightedrandom.WeightedRandomL
 /**
  * {@link WeightedRandomLoadBalancingSpi} self test.
  */
-@GridSpiTest(spi = WeightedRandomLoadBalancingSpi.class, group = "Load 
Balancing SPI")
+@GridSpiTest(spiConfiguration = 
WeightedRandomLoadBalancingSpiConfiguration.class, group = "Load Balancing SPI")
 public class GridWeightedRandomLoadBalancingSpiWeightedSelfTest
     extends GridSpiAbstractTest<WeightedRandomLoadBalancingSpi> {
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpi.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpi.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpi.java
index 920da68..9eb7b32 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpi.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpi.java
@@ -40,6 +40,16 @@ public class GridTestSwapSpaceSpi extends IgniteSpiAdapter 
implements SwapSpaceS
     /** Spaces map. */
     private ConcurrentMap<String, Space> spaces = new ConcurrentHashMap8<>();
 
+    /**
+     * Create SPI from configuration object.
+     *
+     * @param spiCfg SPI configuration.
+     */
+    public GridTestSwapSpaceSpi(GridTestSwapSpaceSpiConfiguration spiCfg) {
+        super(spiCfg);
+    }
+
+
     /** {@inheritDoc} */
     @Override public void spiStart(@Nullable String gridName) throws 
IgniteSpiException {
         // No-op.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpiConfiguration.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpiConfiguration.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpiConfiguration.java
new file mode 100644
index 0000000..b1a984d
--- /dev/null
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/swapspace/inmemory/GridTestSwapSpaceSpiConfiguration.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.spi.swapspace.inmemory;
+
+import org.apache.ignite.spi.*;
+import org.apache.ignite.spi.swapspace.*;
+
+/**
+ * Test swap space SPI configuration.
+ */
+@IgniteSpiMultipleInstancesSupport(true)
+public class GridTestSwapSpaceSpiConfiguration implements 
SwapSpaceSpiConfiguration<GridTestSwapSpaceSpi> {
+    /** {@inheritDoc} */
+    @Override public Class<GridTestSwapSpaceSpi> spiClass() {
+        return GridTestSwapSpaceSpi.class;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
index e54b9ab..48ffb7b 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java
@@ -665,7 +665,7 @@ public abstract class GridAbstractTest extends TestCase {
     protected IgniteConfiguration optimize(IgniteConfiguration cfg) {
         // TODO: GG-4048: propose another way to avoid network overhead in 
tests.
         if (cfg.getLocalHost() == null) {
-            if (cfg.getDiscoverySpi() instanceof TcpDiscoverySpi)
+            if (cfg.getDiscoverySpiConfiguration() instanceof 
TcpDiscoverySpiConfiguration)
                 cfg.setLocalHost("127.0.0.1");
             else
                 cfg.setLocalHost(getTestResources().getLocalHost());
@@ -1062,14 +1062,14 @@ public abstract class GridAbstractTest extends TestCase 
{
         cfg.setPeerClassLoadingEnabled(true);
         cfg.setMetricsLogFrequency(0);
 
-        TcpCommunicationSpi commSpi = new TcpCommunicationSpi();
+        TcpCommunicationSpiConfiguration commSpi = new 
TcpCommunicationSpiConfiguration();
 
         commSpi.setLocalPort(GridTestUtils.getNextCommPort(getClass()));
         commSpi.setTcpNoDelay(true);
 
-        cfg.setCommunicationSpi(commSpi);
+        cfg.setCommunicationSpiConfiguration(commSpi);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new 
TcpDiscoverySpiConfiguration();
 
         if (isDebug()) {
             discoSpi.setMaxMissedHeartbeats(Integer.MAX_VALUE);
@@ -1089,7 +1089,7 @@ public abstract class GridAbstractTest extends TestCase {
         String mcastAddr = GridTestUtils.getNextMulticastGroup(getClass());
 
         if (!F.isEmpty(mcastAddr)) {
-            TcpDiscoveryMulticastIpFinder ipFinder = new 
TcpDiscoveryMulticastIpFinder();
+            TcpDiscoveryMulticastIpFinderConfiguration ipFinder = new 
TcpDiscoveryMulticastIpFinderConfiguration();
 
             ipFinder.setMulticastGroup(mcastAddr);
             
ipFinder.setMulticastPort(GridTestUtils.getNextMulticastPort(getClass()));
@@ -1097,9 +1097,9 @@ public abstract class GridAbstractTest extends TestCase {
             discoSpi.setIpFinder(ipFinder);
         }
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
-        SharedFsCheckpointSpi cpSpi = new SharedFsCheckpointSpi();
+        SharedFsCheckpointSpiConfiguration cpSpi = new 
SharedFsCheckpointSpiConfiguration();
 
         Collection<String> paths = new ArrayList<>();
 
@@ -1107,7 +1107,7 @@ public abstract class GridAbstractTest extends TestCase {
 
         cpSpi.setDirectoryPaths(paths);
 
-        cfg.setCheckpointSpi(cpSpi);
+        cfg.setCheckpointSpiConfiguration(cpSpi);
 
         cfg.setRestEnabled(false);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiAbstractTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiAbstractTest.java
 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiAbstractTest.java
index efaa144..3b29442 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiAbstractTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiAbstractTest.java
@@ -156,7 +156,9 @@ public abstract class GridSpiAbstractTest<T extends 
IgniteSpi> extends GridAbstr
 
         assert spiTest != null;
 
-        T spi = (T)spiTest.spi().newInstance();
+        IgniteSpiConfiguration spiCfg = 
spiTest.spiConfiguration().newInstance();
+
+        T spi = 
(T)spiCfg.spiClass().getConstructor(spiCfg.getClass()).newInstance(spiCfg);
 
         // Set spi into test data.
         getTestData().setSpi(spi);
@@ -310,7 +312,7 @@ public abstract class GridSpiAbstractTest<T extends 
IgniteSpi> extends GridAbstr
         if (discoSpi instanceof TcpDiscoverySpi) {
             TcpDiscoverySpi tcpDisco = (TcpDiscoverySpi)discoSpi;
 
-            tcpDisco.setIpFinder(new TcpDiscoveryVmIpFinder(true));
+            tcpDisco.setIpFinder(new TcpDiscoveryVmIpFinder(new 
TcpDiscoveryVmIpFinderConfiguration(true)));
         }
 
         getTestData().setDiscoverySpi(discoSpi);
@@ -440,12 +442,12 @@ public abstract class GridSpiAbstractTest<T extends 
IgniteSpi> extends GridAbstr
      * @return Class of the SPI implementation.
      */
     @SuppressWarnings({"unchecked"})
-    protected final Class<? extends T> getSpiClass() {
+    protected final Class<? extends T> getSpiClass() throws Exception {
         GridSpiTest spiTest = GridTestUtils.getAnnotation(getClass(), 
GridSpiTest.class);
 
         assert spiTest != null;
 
-        return (Class<? extends T>)spiTest.spi();
+        return (Class<? extends 
T>)spiTest.spiConfiguration().newInstance().spiClass();
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiTest.java
 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiTest.java
index 162855d..31da063 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/spi/GridSpiTest.java
@@ -34,9 +34,9 @@ import java.lang.annotation.*;
 @Target({ElementType.TYPE})
 public @interface GridSpiTest {
     /**
-     * Mandatory implementation class for SPI.
+     * Mandatory configuration class for SPI.
      */
-    public Class<? extends IgniteSpi> spi();
+    public Class<? extends IgniteSpiConfiguration> spiConfiguration();
 
     /**
      * Flag indicating whether SPI should be automatically started.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/core/src/test/java/org/apache/ignite/util/GridTopologyHeapSizeSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/util/GridTopologyHeapSizeSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/util/GridTopologyHeapSizeSelfTest.java
index 069223e..873dc39 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/util/GridTopologyHeapSizeSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/util/GridTopologyHeapSizeSelfTest.java
@@ -37,17 +37,17 @@ import static 
org.apache.ignite.internal.GridNodeAttributes.*;
  */
 public class GridTopologyHeapSizeSelfTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new 
TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new 
TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** {@inheritDoc} */
     @Override protected IgniteConfiguration getConfiguration(String gridName) 
throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new 
TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/edbfd9ad/modules/urideploy/src/main/java/org/apache/ignite/spi/deployment/uri/UriDeploymentSpiConfiguration.java
----------------------------------------------------------------------
diff --git 
a/modules/urideploy/src/main/java/org/apache/ignite/spi/deployment/uri/UriDeploymentSpiConfiguration.java
 
b/modules/urideploy/src/main/java/org/apache/ignite/spi/deployment/uri/UriDeploymentSpiConfiguration.java
index 736976c..c8a91f3 100644
--- 
a/modules/urideploy/src/main/java/org/apache/ignite/spi/deployment/uri/UriDeploymentSpiConfiguration.java
+++ 
b/modules/urideploy/src/main/java/org/apache/ignite/spi/deployment/uri/UriDeploymentSpiConfiguration.java
@@ -18,6 +18,7 @@
 package org.apache.ignite.spi.deployment.uri;
 
 import org.apache.ignite.spi.*;
+import org.apache.ignite.spi.deployment.*;
 import org.apache.ignite.spi.deployment.uri.scanners.*;
 
 import java.util.*;
@@ -28,7 +29,7 @@ import java.util.*;
 @IgniteSpiMultipleInstancesSupport(true)
 @IgniteSpiConsistencyChecked(optional = false)
 @SuppressWarnings({"FieldAccessedSynchronizedAndUnsynchronized"})
-public class UriDeploymentSpiConfiguration implements 
IgniteSpiConfiguration<UriDeploymentSpi> {
+public class UriDeploymentSpiConfiguration implements 
DeploymentSpiConfiguration<UriDeploymentSpi> {
     /** Temporary directory name. */
     private String tmpDirPath;
 

Reply via email to