You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by jo...@apache.org on 2018/08/06 18:46:40 UTC
[ambari] branch branch-feature-AMBARI-14714 updated: [AMBARI-24194]
Fix broken Java UTs in ambari-server code -- Part 6 (#1956)
This is an automated email from the ASF dual-hosted git repository.
jonathanhurley pushed a commit to branch branch-feature-AMBARI-14714
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/branch-feature-AMBARI-14714 by this push:
new a581733 [AMBARI-24194] Fix broken Java UTs in ambari-server code -- Part 6 (#1956)
a581733 is described below
commit a58173304e6634a818f1cfaba67b89eec984bf31
Author: sduan <sd...@hortonworks.com>
AuthorDate: Mon Aug 6 11:46:38 2018 -0700
[AMBARI-24194] Fix broken Java UTs in ambari-server code -- Part 6 (#1956)
---
.../AmbariCustomCommandExecutionHelperTest.java | 119 +++++----------------
1 file changed, 27 insertions(+), 92 deletions(-)
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java
index 00c7c18..b6a83b9 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java
@@ -96,8 +96,6 @@ import org.apache.commons.collections.MapUtils;
import org.easymock.Capture;
import org.easymock.EasyMock;
import org.easymock.EasyMockRule;
-import org.easymock.Mock;
-import org.easymock.MockType;
import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
@@ -118,15 +116,9 @@ public class AmbariCustomCommandExecutionHelperTest {
@Rule
public EasyMockRule mocks = new EasyMockRule(this);
- @Mock(type = MockType.NICE)
- private ActionManager actionManager;
-
- @Mock(type = MockType.NICE)
private HostRoleCommand hostRoleCommand;
-
- @Mock(type = MockType.NICE)
+ private ActionManager actionManager;
private ConfigHelper configHelper;
-
private Injector injector;
private Clusters clusters;
private AmbariManagementController ambariManagementController;
@@ -136,16 +128,15 @@ public class AmbariCustomCommandExecutionHelperTest {
@Before
public void setup() throws Exception {
- EasyMock.reset(actionManager, hostRoleCommand, configHelper);
-
InMemoryDefaultTestModule module = new InMemoryDefaultTestModule(){
@Override
protected void configure() {
getProperties().setProperty(Configuration.AGENT_SERVICE_CHECK_TASK_TIMEOUT.getKey(),
OVERRIDDEN_SERVICE_CHECK_TIMEOUT_VALUE);
super.configure();
- bind(ActionManager.class).toInstance(actionManager);
- bind(ConfigHelper.class).toInstance(configHelper);
+ bind(HostRoleCommand.class).toInstance(EasyMock.createNiceMock(HostRoleCommand.class));
+ bind(ActionManager.class).toInstance(EasyMock.createNiceMock(ActionManager.class));
+ bind(ConfigHelper.class).toInstance(EasyMock.createNiceMock(ConfigHelper.class));
}
};
@@ -153,15 +144,23 @@ public class AmbariCustomCommandExecutionHelperTest {
injector.getInstance(GuiceJpaInitializer.class);
ambariManagementController = injector.getInstance(AmbariManagementController.class);
clusters = injector.getInstance(Clusters.class);
+ hostRoleCommand = injector.getInstance(HostRoleCommand.class);
+ actionManager = injector.getInstance(ActionManager.class);
+ configHelper = injector.getInstance(ConfigHelper.class);
expect(configHelper.getPropertiesWithPropertyType(EasyMock.anyObject(StackId.class),
EasyMock.anyObject(PropertyInfo.PropertyType.class),
EasyMock.anyObject(Cluster.class),
- EasyMock.anyObject(Map.class))).andReturn(Collections.emptyMap());
+ EasyMock.anyObject(Map.class))).andReturn(Collections.emptyMap()).anyTimes();
EasyMock.expect(configHelper.getHostActualConfigs(EasyMock.anyLong())).andReturn(
new AgentConfigsUpdateEvent(null, new TreeMap<>())).anyTimes();
+ Map<String, Set<String>> userGroupsMap = new HashMap<>();
+ userGroupsMap.put("zookeeperUser", new HashSet<>(Arrays.asList("zookeeperGroup")));
+ expect(configHelper.createUserGroupsMap(EasyMock.anyObject(StackId.class),
+ EasyMock.anyObject(Cluster.class), EasyMock.anyObject(Map.class))).andReturn(userGroupsMap).anyTimes();
+
replay(configHelper);
StageUtils.setTopologyManager(injector.getInstance(TopologyManager.class));
@@ -170,8 +169,6 @@ public class AmbariCustomCommandExecutionHelperTest {
SecurityContextHolder.getContext().setAuthentication(TestAuthenticationFactory.createAdministrator());
createClusterFixture("c1", new StackId("HDP-2.0.6"), "2.0.6-1234", "c1");
- EasyMock.reset(configHelper);
-
expect(hostRoleCommand.getTaskId()).andReturn(1L);
expect(hostRoleCommand.getStageId()).andReturn(1L);
expect(hostRoleCommand.getRoleCommand()).andReturn(RoleCommand.CUSTOM_COMMAND);
@@ -181,66 +178,17 @@ public class AmbariCustomCommandExecutionHelperTest {
expect(actionManager.getNextRequestId()).andReturn(1L).anyTimes();
expect(actionManager.getRequestTasks(1L)).andReturn(Collections.singletonList(hostRoleCommand));
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName("HDP");
- stackInfo.setVersion("2.0.6");
- StackId stackId = new StackId(stackInfo);
- Map<String, DesiredConfig> desiredConfigMap = new HashMap<>();
- Map<PropertyInfo, String> userProperties = new HashMap<>();
- Map<PropertyInfo, String> groupProperties = new HashMap<>();
- PropertyInfo userProperty = new PropertyInfo();
- userProperty.setFilename("zookeeper-env.xml");
- userProperty.setName("zookeeper-user");
- userProperty.setValue("zookeeperUser");
- PropertyInfo groupProperty = new PropertyInfo();
- groupProperty.setFilename("zookeeper-env.xml");
- groupProperty.setName("zookeeper-group");
- groupProperty.setValue("zookeeperGroup");
- ValueAttributesInfo valueAttributesInfo = new ValueAttributesInfo();
- valueAttributesInfo.setType("user");
- Set<UserGroupInfo> userGroupEntries = new HashSet<>();
- UserGroupInfo userGroupInfo = new UserGroupInfo();
- userGroupInfo.setType("zookeeper-env");
- userGroupInfo.setName("zookeeper-group");
- userGroupEntries.add(userGroupInfo);
- valueAttributesInfo.setUserGroupEntries(userGroupEntries);
- userProperty.setPropertyValueAttributes(valueAttributesInfo);
- userProperties.put(userProperty, "zookeeperUser");
- groupProperties.put(groupProperty, "zookeeperGroup");
- Map<String, Set<String>> userGroupsMap = new HashMap<>();
- userGroupsMap.put("zookeeperUser", new HashSet<>(Arrays.asList("zookeeperGroup")));
- Cluster cluster = clusters.getCluster("c1");
-
- Map<String, Map<String, String>> configCredentials = new HashMap<>();
- configCredentials.put("fakeService", new HashMap<String, String>());
- configCredentials.get("fakeService").put("fakeName", "fakePassword");
- Service s1 = cluster.getService("HDFS");
- Service s2 = cluster.getService("YARN");
- Service s3 = cluster.getService("GANGLIA");
- Service s4 = cluster.getService("ZOOKEEPER");
- Service s5 = cluster.getService("FLUME");
- expect(configHelper.getCredentialStoreEnabledProperties(stackId, s1)).andReturn(configCredentials).anyTimes();
- expect(configHelper.getCredentialStoreEnabledProperties(stackId, s2)).andReturn(configCredentials).anyTimes();
- expect(configHelper.getCredentialStoreEnabledProperties(stackId, s3)).andReturn(configCredentials).anyTimes();
- expect(configHelper.getCredentialStoreEnabledProperties(stackId, s4)).andReturn(configCredentials).anyTimes();
- expect(configHelper.getCredentialStoreEnabledProperties(stackId, s5)).andReturn(configCredentials).anyTimes();
- EasyMock.replay(configHelper);
- EasyMock.reset(configHelper);
- expect(configHelper.getPropertiesWithPropertyType(
- stackId, PropertyInfo.PropertyType.USER, cluster, desiredConfigMap)).andReturn(userProperties).anyTimes();
- expect(configHelper.getPropertiesWithPropertyType(
- stackId, PropertyInfo.PropertyType.GROUP, cluster, desiredConfigMap)).andReturn(groupProperties).anyTimes();
- expect(configHelper.createUserGroupsMap(stackId, cluster, desiredConfigMap)).andReturn(userGroupsMap).anyTimes();
-
actionManager.sendActions(EasyMock.capture(requestCapture), EasyMock.anyObject(ExecuteActionRequest.class));
EasyMock.expectLastCall();
-
}
@After
public void teardown() throws AmbariException, SQLException {
SecurityContextHolder.getContext().setAuthentication(null);
H2DatabaseCleaner.clearDatabaseAndStopPersistenceService(injector);
+ EasyMock.reset(actionManager);
+ EasyMock.reset(hostRoleCommand);
+ EasyMock.reset(configHelper);
}
@Test
@@ -261,13 +209,8 @@ public class AmbariCustomCommandExecutionHelperTest {
actionRequest.getResourceFilters().add(new RequestResourceFilter("CORE", "YARN", "RESOURCEMANAGER", Collections.singletonList("c1-c6401")));
Cluster cluster = clusters.getCluster("c1");
- Service server = cluster.getService("FLUME");
- Map<String, Map<String, String>> configCredentials = new HashMap<>();
- configCredentials.put("fakeService", new HashMap<String, String>());
- configCredentials.get("fakeService").put("fakeName", "fakePassword");
- expect(configHelper.getCredentialStoreEnabledProperties(EasyMock.anyObject(StackId.class), EasyMock.anyObject(Service.class))).andReturn(configCredentials).once();
- replay(hostRoleCommand, actionManager, configHelper);
+ replay(hostRoleCommand, actionManager);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -315,7 +258,7 @@ public class AmbariCustomCommandExecutionHelperTest {
new RequestOperationLevel(Resource.Type.Service, "c1", "CORE", "GANGLIA", null, null),
new HashMap<>(), false);
- replay(hostRoleCommand, actionManager, configHelper);
+ replay(hostRoleCommand, actionManager);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -353,7 +296,7 @@ public class AmbariCustomCommandExecutionHelperTest {
new RequestOperationLevel(Resource.Type.Service, "c1", "CORE", "GANGLIA", null, null),
new HashMap<>(), false);
- replay(hostRoleCommand, actionManager, configHelper);
+ replay(hostRoleCommand, actionManager);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -389,12 +332,7 @@ public class AmbariCustomCommandExecutionHelperTest {
new RequestOperationLevel(Resource.Type.Host, "c1", "CORE", "GANGLIA", null, null),
new HashMap<>(), false);
- Map<String, Map<String, String>> configCredentials = new HashMap<>();
- configCredentials.put("fakeService", new HashMap<String, String>());
- configCredentials.get("fakeService").put("fakeName", "fakePassword");
- expect(configHelper.getCredentialStoreEnabledProperties(EasyMock.anyObject(StackId.class), EasyMock.anyObject(Service.class))).andReturn(configCredentials).atLeastOnce();
-
- replay(hostRoleCommand, actionManager, configHelper);
+ replay(hostRoleCommand, actionManager);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -531,7 +469,7 @@ public class AmbariCustomCommandExecutionHelperTest {
HashSet<String> localComponents = new HashSet<>();
expect(execCmd.getLocalComponents()).andReturn(localComponents).anyTimes();
- replay(configHelper, stage, execCmdWrapper, execCmd);
+ replay(stage, execCmdWrapper, execCmd);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -583,7 +521,7 @@ public class AmbariCustomCommandExecutionHelperTest {
HashSet<String> localComponents = new HashSet<>();
expect(execCmd.getLocalComponents()).andReturn(localComponents).anyTimes();
- replay(configHelper, stage, execCmdWrapper, execCmd);
+ replay(stage, execCmdWrapper, execCmd);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -627,13 +565,9 @@ public class AmbariCustomCommandExecutionHelperTest {
event.setHash("01");
event.setTimestamp(1L);
event.setHash("12345");
+ EasyMock.reset(configHelper);
expect(configHelper.getHostActualConfigs(EasyMock.anyLong())).andReturn(event).anyTimes();
- Map<String, Map<String, String>> configCredentials = new HashMap<>();
- configCredentials.put("fakeService", new HashMap<String, String>());
- configCredentials.get("fakeService").put("fakeName", "fakePassword");
- expect(configHelper.getCredentialStoreEnabledProperties(EasyMock.anyObject(StackId.class), EasyMock.anyObject(Service.class))).andReturn(configCredentials).atLeastOnce();
-
HashSet<String> localComponents = new HashSet<>();
expect(execCmd.getLocalComponents()).andReturn(localComponents).anyTimes();
replay(configHelper, stage, execCmdWrapper, execCmd);
@@ -681,6 +615,7 @@ public class AmbariCustomCommandExecutionHelperTest {
public void testIsTopologyRefreshRequired() throws Exception {
AmbariCustomCommandExecutionHelper helper = injector.getInstance(AmbariCustomCommandExecutionHelper.class);
+ EasyMock.reset(configHelper);
EasyMock.expect(configHelper.getHostActualConfigs(EasyMock.anyLong())).andReturn(
new AgentConfigsUpdateEvent(null, new TreeMap<>())).anyTimes();
@@ -711,7 +646,7 @@ public class AmbariCustomCommandExecutionHelperTest {
}
}, false);
actionRequest.getResourceFilters().add(new RequestResourceFilter("CORE", "YARN", "RESOURCEMANAGER", Collections.singletonList("c1-c6401")));
- replay(hostRoleCommand, actionManager, configHelper);
+ replay(hostRoleCommand, actionManager);
createServiceComponentHosts("c1", "CORE", "c1");
@@ -963,11 +898,11 @@ public class AmbariCustomCommandExecutionHelperTest {
HashSet<String> localComponents = new HashSet<>();
EasyMock.expect(execCmd.getLocalComponents()).andReturn(localComponents).anyTimes();
- EasyMock.replay(configHelper, stage, execCmdWrapper, execCmd);
+ EasyMock.replay(stage, execCmdWrapper, execCmd);
ambariCustomCommandExecutionHelper.addExecutionCommandsToStage(actionExecutionContext, stage, new HashMap<>(), null);
- EasyMock.verify(configHelper, stage, execCmdWrapper, execCmd);
+ EasyMock.verify(stage, execCmdWrapper, execCmd);
}
private void createClusterFixture(String clusterName, StackId stackId,