|
@@ -35,19 +35,18 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
|
|
import org.powermock.modules.junit4.PowerMockRunner;
|
|
|
|
|
|
/**
|
|
|
- * Tests {@link HiveKerberosConfigAction} to ensure that the correct properties
|
|
|
+ * Tests {@link HiveZKQuorumConfigAction} to ensure that the correct properties
|
|
|
* are set.
|
|
|
*/
|
|
|
@RunWith(PowerMockRunner.class)
|
|
|
@PrepareForTest(ZooKeeperQuorumCalculator.class)
|
|
|
-public class HiveKerberosConfigActionTest {
|
|
|
+public class HiveZKQuorumConfigActionTest {
|
|
|
|
|
|
private static final String CLUSTER_NAME = "c1";
|
|
|
- private HiveKerberosConfigAction m_action = null;
|
|
|
+ private HiveZKQuorumConfigAction m_action = null;
|
|
|
|
|
|
private Clusters m_clusters = EasyMock.createStrictMock(Clusters.class);
|
|
|
private Cluster m_cluster = EasyMock.createStrictMock(Cluster.class);
|
|
|
- private Config m_clusterEnvConfig = EasyMock.createStrictMock(Config.class);
|
|
|
private Config m_hiveSiteConfig = EasyMock.createStrictMock(Config.class);
|
|
|
private ExecutionCommand m_executionCommand = EasyMock.createNiceMock(ExecutionCommand.class);
|
|
|
|
|
@@ -58,14 +57,14 @@ public class HiveKerberosConfigActionTest {
|
|
|
*/
|
|
|
@Before
|
|
|
public void before() throws Exception {
|
|
|
- m_action = new HiveKerberosConfigAction();
|
|
|
+ m_action = new HiveZKQuorumConfigAction();
|
|
|
|
|
|
// setup clusters->cluster mock
|
|
|
EasyMock.expect(m_executionCommand.getClusterName()).andReturn(CLUSTER_NAME).atLeastOnce();
|
|
|
EasyMock.expect(m_clusters.getCluster(CLUSTER_NAME)).andReturn(m_cluster).atLeastOnce();
|
|
|
|
|
|
// set the mock objects on the class under test
|
|
|
- Field m_clusterField = HiveKerberosConfigAction.class.getDeclaredField("m_clusters");
|
|
|
+ Field m_clusterField = HiveZKQuorumConfigAction.class.getDeclaredField("m_clusters");
|
|
|
m_clusterField.setAccessible(true);
|
|
|
m_clusterField.set(m_action, m_clusters);
|
|
|
m_action.setExecutionCommand(m_executionCommand);
|
|
@@ -73,75 +72,20 @@ public class HiveKerberosConfigActionTest {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * Tests that nothing is set if Kerberos is not enabled.
|
|
|
+ * Tests that the correct properties are set.
|
|
|
*
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
@Test
|
|
|
- public void testKerberosNotEnabled() throws Exception {
|
|
|
- Map<String, String> clusterEnvProperties = new HashMap<>();
|
|
|
- clusterEnvProperties.put(HiveKerberosConfigAction.CLUSTER_ENV_SECURITY_ENABLED, "false");
|
|
|
-
|
|
|
- EasyMock.expect(m_clusterEnvConfig.getProperties()).andReturn(clusterEnvProperties).atLeastOnce();
|
|
|
- EasyMock.expect(m_cluster.getDesiredConfigByType(HiveKerberosConfigAction.CLUSTER_ENV_CONFIG_TYPE)).andReturn(m_clusterEnvConfig).atLeastOnce();
|
|
|
- EasyMock.replay(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
-
|
|
|
- m_action.execute(null);
|
|
|
-
|
|
|
- EasyMock.verify(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * Tests that nothing is set if Kerberos is not enabled.
|
|
|
- *
|
|
|
- * @throws Exception
|
|
|
- */
|
|
|
- @Test
|
|
|
- public void testKerberosNotEnabledMissingClusterEnv() throws Exception {
|
|
|
- EasyMock.expect(m_cluster.getDesiredConfigByType(HiveKerberosConfigAction.CLUSTER_ENV_CONFIG_TYPE)).andReturn(null).atLeastOnce();
|
|
|
- EasyMock.replay(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
-
|
|
|
- m_action.execute(null);
|
|
|
-
|
|
|
- EasyMock.verify(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * Tests that nothing is set if Kerberos is not enabled.
|
|
|
- *
|
|
|
- * @throws Exception
|
|
|
- */
|
|
|
- @Test
|
|
|
- public void testKerberosNotEnabledMissingSecurityInformation() throws Exception {
|
|
|
- Map<String, String> clusterEnvProperties = new HashMap<>();
|
|
|
-
|
|
|
- EasyMock.expect(m_clusterEnvConfig.getProperties()).andReturn(clusterEnvProperties).atLeastOnce();
|
|
|
- EasyMock.expect(m_cluster.getDesiredConfigByType(HiveKerberosConfigAction.CLUSTER_ENV_CONFIG_TYPE)).andReturn(m_clusterEnvConfig).atLeastOnce();
|
|
|
- EasyMock.replay(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
-
|
|
|
- m_action.execute(null);
|
|
|
-
|
|
|
- EasyMock.verify(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * Tests that the correct properties are set when Kerberos is enabled.
|
|
|
- *
|
|
|
- * @throws Exception
|
|
|
- */
|
|
|
- @Test
|
|
|
- public void testKerberosEnabled() throws Exception {
|
|
|
+ public void testZKQuorumPropertiesSetCorrectly() throws Exception {
|
|
|
final String zookeeperQuorum = "c6401.ambari.apache.org:2181,c6402.ambari.apache.org:2181";
|
|
|
|
|
|
PowerMockito.mockStatic(ZooKeeperQuorumCalculator.class);
|
|
|
PowerMockito.when(ZooKeeperQuorumCalculator.getZooKeeperQuorumString(m_cluster)).thenReturn(
|
|
|
zookeeperQuorum);
|
|
|
|
|
|
- Map<String, String> clusterEnvProperties = new HashMap<>();
|
|
|
Map<String, String> hiveSiteProperties = new HashMap<>();
|
|
|
- clusterEnvProperties.put(HiveKerberosConfigAction.CLUSTER_ENV_SECURITY_ENABLED, "true");
|
|
|
|
|
|
- EasyMock.expect(m_clusterEnvConfig.getProperties()).andReturn(clusterEnvProperties).atLeastOnce();
|
|
|
EasyMock.expect(m_hiveSiteConfig.getProperties()).andReturn(hiveSiteProperties).atLeastOnce();
|
|
|
|
|
|
m_hiveSiteConfig.setProperties(EasyMock.anyObject(Map.class));
|
|
@@ -150,17 +94,16 @@ public class HiveKerberosConfigActionTest {
|
|
|
m_hiveSiteConfig.persist(false);
|
|
|
EasyMock.expectLastCall().once();
|
|
|
|
|
|
- EasyMock.expect(m_cluster.getDesiredConfigByType(HiveKerberosConfigAction.CLUSTER_ENV_CONFIG_TYPE)).andReturn(m_clusterEnvConfig).atLeastOnce();
|
|
|
- EasyMock.expect(m_cluster.getDesiredConfigByType(HiveKerberosConfigAction.HIVE_SITE_CONFIG_TYPE)).andReturn(m_hiveSiteConfig).atLeastOnce();
|
|
|
+ EasyMock.expect(m_cluster.getDesiredConfigByType(HiveZKQuorumConfigAction.HIVE_SITE_CONFIG_TYPE)).andReturn(m_hiveSiteConfig).atLeastOnce();
|
|
|
|
|
|
- EasyMock.replay(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
+ EasyMock.replay(m_executionCommand, m_clusters, m_cluster, m_hiveSiteConfig);
|
|
|
|
|
|
m_action.execute(null);
|
|
|
|
|
|
- EasyMock.verify(m_executionCommand, m_clusters, m_cluster, m_clusterEnvConfig, m_hiveSiteConfig);
|
|
|
+ EasyMock.verify(m_executionCommand, m_clusters, m_cluster, m_hiveSiteConfig);
|
|
|
|
|
|
- Assert.assertEquals(zookeeperQuorum, hiveSiteProperties.get(HiveKerberosConfigAction.HIVE_SITE_ZK_QUORUM));
|
|
|
- Assert.assertEquals(zookeeperQuorum, hiveSiteProperties.get(HiveKerberosConfigAction.HIVE_SITE_ZK_CONNECT_STRING));
|
|
|
+ Assert.assertEquals(zookeeperQuorum, hiveSiteProperties.get(HiveZKQuorumConfigAction.HIVE_SITE_ZK_QUORUM));
|
|
|
+ Assert.assertEquals(zookeeperQuorum, hiveSiteProperties.get(HiveZKQuorumConfigAction.HIVE_SITE_ZK_CONNECT_STRING));
|
|
|
}
|
|
|
|
|
|
}
|