|
@@ -18,7 +18,27 @@
|
|
|
|
|
|
package org.apache.ambari.server.controller.internal;
|
|
|
|
|
|
-import com.google.inject.Injector;
|
|
|
+import static org.easymock.EasyMock.anyObject;
|
|
|
+import static org.easymock.EasyMock.createMock;
|
|
|
+import static org.easymock.EasyMock.createNiceMock;
|
|
|
+import static org.easymock.EasyMock.eq;
|
|
|
+import static org.easymock.EasyMock.expect;
|
|
|
+import static org.easymock.EasyMock.replay;
|
|
|
+import static org.easymock.EasyMock.verify;
|
|
|
+import static org.junit.Assert.assertEquals;
|
|
|
+import static org.junit.Assert.assertTrue;
|
|
|
+
|
|
|
+import java.lang.reflect.Field;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Collections;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.HashSet;
|
|
|
+import java.util.LinkedHashMap;
|
|
|
+import java.util.LinkedHashSet;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
+
|
|
|
import org.apache.ambari.server.controller.AmbariManagementController;
|
|
|
import org.apache.ambari.server.controller.MaintenanceStateHelper;
|
|
|
import org.apache.ambari.server.controller.RequestStatusResponse;
|
|
@@ -40,32 +60,12 @@ import org.apache.ambari.server.state.ServiceComponent;
|
|
|
import org.apache.ambari.server.state.ServiceComponentHost;
|
|
|
import org.apache.ambari.server.state.StackId;
|
|
|
import org.apache.ambari.server.state.State;
|
|
|
+import org.apache.ambari.server.state.UpgradeState;
|
|
|
import org.easymock.EasyMock;
|
|
|
import org.junit.Assert;
|
|
|
import org.junit.Test;
|
|
|
|
|
|
-import java.lang.reflect.Field;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Collection;
|
|
|
-import java.util.Collections;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.HashSet;
|
|
|
-import java.util.LinkedHashMap;
|
|
|
-import java.util.LinkedHashSet;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Set;
|
|
|
-
|
|
|
-import static org.easymock.EasyMock.anyObject;
|
|
|
-import static org.easymock.EasyMock.createMock;
|
|
|
-import static org.easymock.EasyMock.createNiceMock;
|
|
|
-import static org.easymock.EasyMock.eq;
|
|
|
-import static org.easymock.EasyMock.expect;
|
|
|
-import static org.easymock.EasyMock.replay;
|
|
|
-import static org.easymock.EasyMock.verify;
|
|
|
-import static org.junit.Assert.assertEquals;
|
|
|
-import static org.junit.Assert.assertSame;
|
|
|
-import static org.junit.Assert.assertTrue;
|
|
|
+import com.google.inject.Injector;
|
|
|
|
|
|
/**
|
|
|
* HostComponentResourceProvider tests.
|
|
@@ -94,7 +94,7 @@ public class HostComponentResourceProviderTest {
|
|
|
anyObject(Map.class),
|
|
|
eq(managementController))).
|
|
|
andReturn(hostComponentResourceProvider).anyTimes();
|
|
|
-
|
|
|
+
|
|
|
|
|
|
// replay
|
|
|
replay(managementController, response, resourceProviderFactory);
|
|
@@ -135,7 +135,7 @@ public class HostComponentResourceProviderTest {
|
|
|
AmbariManagementController managementController = createMock(AmbariManagementController.class);
|
|
|
ResourceProviderFactory resourceProviderFactory = createNiceMock(ResourceProviderFactory.class);
|
|
|
ResourceProvider hostComponentResourceProvider = createNiceMock(HostComponentResourceProvider.class);
|
|
|
-
|
|
|
+
|
|
|
AbstractControllerResourceProvider.init(resourceProviderFactory);
|
|
|
|
|
|
Set<ServiceComponentHostResponse> allResponse = new HashSet<ServiceComponentHostResponse>();
|
|
@@ -147,6 +147,7 @@ public class HostComponentResourceProviderTest {
|
|
|
allResponse.add(new ServiceComponentHostResponse(
|
|
|
"Cluster100", "Service100", "Component101", "Host100", State.INSTALLED.toString(), stackId.getStackId(), State.STARTED.toString(),
|
|
|
stackId2.getStackId(), null));
|
|
|
+
|
|
|
allResponse.add(new ServiceComponentHostResponse(
|
|
|
"Cluster100", "Service100", "Component102", "Host100", State.INSTALLED.toString(), stackId.getStackId(), State.STARTED.toString(),
|
|
|
stackId2.getStackId(), null));
|
|
@@ -161,13 +162,16 @@ public class HostComponentResourceProviderTest {
|
|
|
HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STATE_PROPERTY_ID, State.STARTED.toString());
|
|
|
expectedNameValues.put(
|
|
|
HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STACK_ID_PROPERTY_ID, stackId2.getStackId());
|
|
|
+ expectedNameValues.put(
|
|
|
+ HostComponentResourceProvider.HOST_COMPONENT_UPGRADE_STATE, UpgradeState.NONE.name());
|
|
|
+
|
|
|
|
|
|
// set expectations
|
|
|
expect(resourceProviderFactory.getHostComponentResourceProvider(anyObject(Set.class),
|
|
|
anyObject(Map.class),
|
|
|
eq(managementController))).
|
|
|
andReturn(hostComponentResourceProvider).anyTimes();
|
|
|
-
|
|
|
+
|
|
|
Set<String> propertyIds = new HashSet<String>();
|
|
|
|
|
|
propertyIds.add(HostComponentResourceProvider.HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID);
|
|
@@ -180,9 +184,9 @@ public class HostComponentResourceProviderTest {
|
|
|
Predicate predicate = new PredicateBuilder().property(
|
|
|
HostComponentResourceProvider.HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID).equals("Cluster100").toPredicate();
|
|
|
Request request = PropertyHelper.getReadRequest(propertyIds);
|
|
|
-
|
|
|
+
|
|
|
Set<Resource> hostsComponentResources = new HashSet<Resource>();
|
|
|
-
|
|
|
+
|
|
|
Resource hostsComponentResource1 = new ResourceImpl(Resource.Type.HostComponent);
|
|
|
hostsComponentResource1.setProperty(HostComponentResourceProvider.HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID, "Cluster100");
|
|
|
hostsComponentResource1.setProperty(HostComponentResourceProvider.HOST_COMPONENT_HOST_NAME_PROPERTY_ID, "Host100");
|
|
@@ -192,6 +196,8 @@ public class HostComponentResourceProviderTest {
|
|
|
hostsComponentResource1.setProperty(HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STATE_PROPERTY_ID, State.STARTED.name());
|
|
|
hostsComponentResource1.setProperty(HostComponentResourceProvider.HOST_COMPONENT_STACK_ID_PROPERTY_ID, stackId.getStackId());
|
|
|
hostsComponentResource1.setProperty(HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STACK_ID_PROPERTY_ID, stackId2.getStackId());
|
|
|
+ hostsComponentResource1.setProperty(HostComponentResourceProvider.HOST_COMPONENT_UPGRADE_STATE, UpgradeState.NONE.name());
|
|
|
+
|
|
|
Resource hostsComponentResource2 = new ResourceImpl(Resource.Type.HostComponent);
|
|
|
hostsComponentResource2.setProperty(HostComponentResourceProvider.HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID, "Cluster100");
|
|
|
hostsComponentResource2.setProperty(HostComponentResourceProvider.HOST_COMPONENT_HOST_NAME_PROPERTY_ID, "Host100");
|
|
@@ -201,6 +207,8 @@ public class HostComponentResourceProviderTest {
|
|
|
hostsComponentResource2.setProperty(HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STATE_PROPERTY_ID, State.STARTED.name());
|
|
|
hostsComponentResource2.setProperty(HostComponentResourceProvider.HOST_COMPONENT_STACK_ID_PROPERTY_ID, stackId.getStackId());
|
|
|
hostsComponentResource2.setProperty(HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STACK_ID_PROPERTY_ID, stackId2.getStackId());
|
|
|
+ hostsComponentResource2.setProperty(HostComponentResourceProvider.HOST_COMPONENT_UPGRADE_STATE, UpgradeState.NONE.name());
|
|
|
+
|
|
|
Resource hostsComponentResource3 = new ResourceImpl(Resource.Type.HostComponent);
|
|
|
hostsComponentResource3.setProperty(HostComponentResourceProvider.HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID, "Cluster100");
|
|
|
hostsComponentResource3.setProperty(HostComponentResourceProvider.HOST_COMPONENT_HOST_NAME_PROPERTY_ID, "Host100");
|
|
@@ -210,10 +218,12 @@ public class HostComponentResourceProviderTest {
|
|
|
hostsComponentResource3.setProperty(HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STATE_PROPERTY_ID, State.STARTED.name());
|
|
|
hostsComponentResource3.setProperty(HostComponentResourceProvider.HOST_COMPONENT_STACK_ID_PROPERTY_ID, stackId.getStackId());
|
|
|
hostsComponentResource3.setProperty(HostComponentResourceProvider.HOST_COMPONENT_DESIRED_STACK_ID_PROPERTY_ID, stackId2.getStackId());
|
|
|
+ hostsComponentResource3.setProperty(HostComponentResourceProvider.HOST_COMPONENT_UPGRADE_STATE, UpgradeState.NONE.name());
|
|
|
+
|
|
|
hostsComponentResources.add(hostsComponentResource1);
|
|
|
hostsComponentResources.add(hostsComponentResource2);
|
|
|
hostsComponentResources.add(hostsComponentResource3);
|
|
|
-
|
|
|
+
|
|
|
expect(hostComponentResourceProvider.getResources(eq(request), eq(predicate))).andReturn(hostsComponentResources).anyTimes();
|
|
|
|
|
|
// replay
|