You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by js...@apache.org on 2014/11/10 22:32:06 UTC
[07/11] ambari git commit: AMBARI-7175. Add explicit stack service
inheritance
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
deleted file mode 100644
index f05aab5..0000000
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
+++ /dev/null
@@ -1,792 +0,0 @@
-/**
- * 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.ambari.server.api.util;
-
-import com.google.inject.AbstractModule;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-import org.apache.ambari.server.api.services.AmbariMetaInfo;
-import org.apache.ambari.server.metadata.ActionMetadata;
-import org.apache.ambari.server.state.*;
-import org.apache.ambari.server.state.stack.ConfigurationXml;
-import org.junit.Test;
-import org.xml.sax.SAXException;
-
-import javax.xml.bind.JAXBException;
-import javax.xml.namespace.QName;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.xpath.XPathExpressionException;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.*;
-
-import static org.easymock.EasyMock.*;
-import static org.junit.Assert.*;
-
-public class StackExtensionHelperTest {
-
- private final String stackRootStr = "./src/test/resources/stacks/".
- replaceAll("/", File.separator);
-
- private Injector injector = Guice.createInjector(new MockModule());
-
-
- public class MockModule extends AbstractModule {
- @Override
- protected void configure() {
- bind(ActionMetadata.class);
- }
- }
-
- /**
- * Checks than service metainfo is parsed correctly both for ver 1 services
- * and for ver 2 services
- */
- @Test
- public void testPopulateServicesForStack() throws Exception {
- File stackRoot = new File(stackRootStr);
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName("HDP");
- stackInfo.setVersion("2.0.7");
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- helper.populateServicesForStack(stackInfo);
- List<ServiceInfo> services = stackInfo.getServices();
- assertEquals(8, services.size());
- for (ServiceInfo serviceInfo : services) {
- if (serviceInfo.getName().equals("HIVE")) {
- // Check old-style service
- assertEquals("HIVE", serviceInfo.getName());
- assertEquals("Hive", serviceInfo.getDisplayName());
- assertEquals("2.0", serviceInfo.getSchemaVersion());
- assertTrue(serviceInfo.getComment().startsWith("Data warehouse system"));
- assertEquals("0.11.0.2.0.5.0", serviceInfo.getVersion());
- // Check some component definitions
- List<ComponentInfo> components = serviceInfo.getComponents();
- assertEquals("HIVE_METASTORE", components.get(0).getName());
- assertEquals("Hive Metastore", components.get(0).getDisplayName());
- assertEquals("MASTER", components.get(0).getCategory());
- List<PropertyInfo> properties = serviceInfo.getProperties();
- // Check some property
- assertEquals(37, properties.size());
- boolean found = false;
- for (PropertyInfo property : properties) {
- if (property.getName().equals("javax.jdo.option.ConnectionDriverName")) {
- assertEquals("com.mysql.jdbc.Driver", property.getValue());
- assertEquals("hive-site.xml",
- property.getFilename());
- assertEquals(false, property.isDeleted());
- found = true;
- }
- }
- assertTrue("Property not found in a list of properties", found);
- // Check config dependencies
- List<String> configDependencies = serviceInfo.getConfigDependencies();
- assertEquals(2, configDependencies.size());
- assertEquals("hive-site", configDependencies.get(1));
- } else if (serviceInfo.getName().equals("HBASE")) {
- assertEquals("HBASE", serviceInfo.getName());
- assertEquals("HDP/2.0.7/services/HBASE/package",
- serviceInfo.getServicePackageFolder());
- assertEquals("2.0", serviceInfo.getSchemaVersion());
- assertTrue(serviceInfo.getComment().startsWith("Non-relational distr"));
- assertEquals("0.96.0.2.0.6.0", serviceInfo.getVersion());
- // Check some component definitions
- List<ComponentInfo> components = serviceInfo.getComponents();
- assertTrue(components.size() == 3);
- ComponentInfo firstComponent = components.get(0);
- assertEquals("HBASE_MASTER", firstComponent.getName());
- assertEquals("MASTER", firstComponent.getCategory());
- // Check command script for component
- assertEquals("scripts/hbase_master.py",
- firstComponent.getCommandScript().getScript());
- assertEquals(CommandScriptDefinition.Type.PYTHON,
- firstComponent.getCommandScript().getScriptType());
- assertEquals(777,
- firstComponent.getCommandScript().getTimeout());
- // Check custom commands for component
- List<CustomCommandDefinition> customCommands =
- firstComponent.getCustomCommands();
- assertEquals(2, customCommands.size());
- assertEquals("RESTART", customCommands.get(0).getName());
- assertTrue(firstComponent.isCustomCommand("RESTART"));
- assertEquals("scripts/hbase_master_restart.py",
- customCommands.get(0).getCommandScript().getScript());
- assertEquals(CommandScriptDefinition.Type.PYTHON,
- customCommands.get(0).getCommandScript().getScriptType());
- assertEquals(888,
- customCommands.get(0).getCommandScript().getTimeout());
- // Check all parsed os specifics
- Map<String,ServiceOsSpecific> specifics = serviceInfo.getOsSpecifics();
- assertTrue(specifics.size() == 2);
- ServiceOsSpecific anyOs = specifics.get(AmbariMetaInfo.ANY_OS);
- assertEquals(AmbariMetaInfo.ANY_OS, anyOs.getOsFamily());
- assertEquals("wget", anyOs.getPackages().get(0).getName());
-
- // Test default timeout value
- ComponentInfo secondComponent = components.get(1);
- assertEquals("HBASE_REGIONSERVER", secondComponent.getName());
- assertEquals(0,
- secondComponent.getCommandScript().getTimeout());
-
- ServiceOsSpecific c6Os = specifics.get("centos6");
- assertEquals("centos6", c6Os.getOsFamily());
- assertEquals("hbase", c6Os.getPackages().get(0).getName());
- assertEquals("http://something.com/centos6/2.x/updates/1",
- c6Os.getRepo().getBaseUrl());
- assertEquals("Custom-repo-1",
- c6Os.getRepo().getRepoId());
- assertEquals("Custom-repo",
- c6Os.getRepo().getRepoName());
- // Check custom commands for service
- assertTrue(serviceInfo.getCustomCommands().size() == 1);
- CustomCommandDefinition customCommand =
- serviceInfo.getCustomCommands().get(0);
- assertEquals("SERVICE_VALIDATION", customCommand.getName());
- assertEquals("scripts/hbase_validation.py",
- customCommand.getCommandScript().getScript());
- assertEquals(CommandScriptDefinition.Type.PYTHON,
- customCommand.getCommandScript().getScriptType());
- assertEquals(300, customCommand.getCommandScript().getTimeout());
- // Check command script for service
- CommandScriptDefinition serviceScriptDefinition = serviceInfo.getCommandScript();
- assertEquals("scripts/service_check.py", serviceScriptDefinition.getScript());
- assertEquals(CommandScriptDefinition.Type.PYTHON,
- serviceScriptDefinition.getScriptType());
- assertEquals(50, serviceScriptDefinition.getTimeout());
- // Check some property
- List<PropertyInfo> properties = serviceInfo.getProperties();
- List<PropertyInfo> emptyValueProperties = new ArrayList<PropertyInfo>();
- for (PropertyInfo propertyInfo : properties) {
- if (propertyInfo.getValue().isEmpty()) {
- emptyValueProperties.add(propertyInfo);
- }
- }
- assertEquals(28, emptyValueProperties.size());
- assertEquals(68, properties.size());
- boolean foundHBaseClusterDistributed = false;
- boolean foundHBaseRegionServerXmnMax = false;
- boolean foundHBaseRegionServerXmnRatio = false;
- for (PropertyInfo property : properties) {
- if (property.getName().equals("hbase.cluster.distributed")) {
- assertEquals("true",
- property.getValue());
- assertTrue(property.getDescription().startsWith("The mode the"));
- assertEquals("hbase-site.xml",
- property.getFilename());
- foundHBaseClusterDistributed = true;
- } else if (property.getName().equals("hbase_regionserver_xmn_max")) {
- assertEquals("512", property.getValue());
- assertEquals("global.xml",
- property.getFilename());
- foundHBaseRegionServerXmnMax = true;
- } else if (property.getName().equals("hbase_regionserver_xmn_ratio")) {
- assertEquals("global.xml",
- property.getFilename());
- assertEquals("0.2", property.getValue());
- foundHBaseRegionServerXmnRatio = true;
- }
- }
-
- assertTrue("Property hbase.cluster.distributed not found in a list of properties",
- foundHBaseClusterDistributed);
- assertTrue("Property hbase_regionserver_xmn_max not found in a list of properties",
- foundHBaseRegionServerXmnMax);
- assertTrue("Property hbase_regionserver_xmn_ratio not found in a list of properties",
- foundHBaseRegionServerXmnRatio);
-
- List<String> configDependencies = serviceInfo.getConfigDependencies();
- assertEquals(3, configDependencies.size());
- assertEquals("global", configDependencies.get(0));
- assertEquals("hbase-policy", configDependencies.get(1));
- assertEquals("hbase-site", configDependencies.get(2));
- } else if(serviceInfo.getName().equals("ZOOKEEPER")) {
- assertTrue(serviceInfo.isRestartRequiredAfterChange());
- } else {
- if (!serviceInfo.getName().equals("YARN") &&
- !serviceInfo.getName().equals("HDFS") &&
- !serviceInfo.getName().equals("MAPREDUCE2") &&
- !serviceInfo.getName().equals("NAGIOS") &&
- !serviceInfo.getName().equals("SQOOP")) {
- fail("Unknown service");
- }
- }
- }
- }
-
- @Test
- public void testConfigDependenciesInheritance() throws Exception{
- File stackRoot = new File(stackRootStr);
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName("HDP");
- stackInfo.setVersion("2.0.6");
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- helper.populateServicesForStack(stackInfo);
- helper.fillInfo();
- List<ServiceInfo> allServices = helper.getAllApplicableServices(stackInfo);
- for (ServiceInfo serviceInfo : allServices) {
- if (serviceInfo.getName().equals("HDFS")) {
- assertEquals(5, serviceInfo.getConfigDependencies().size());
- assertEquals(4, serviceInfo.getConfigTypes().size());
- assertTrue(serviceInfo.getConfigDependencies().contains("core-site"));
- assertTrue(serviceInfo.getConfigDependencies().contains("global"));
- assertTrue(serviceInfo.getConfigDependencies().contains("hdfs-site"));
- assertTrue(serviceInfo.getConfigDependencies().contains("hdfs-log4j"));
- assertTrue(serviceInfo.getConfigDependencies().contains("hadoop-policy"));
- assertTrue(Boolean.valueOf(serviceInfo.getConfigTypes().get("core-site").get("supports").get("final")));
- assertFalse(Boolean.valueOf(serviceInfo.getConfigTypes().get("global").get("supports").get("final")));
- } else if (serviceInfo.getName().equals("WEBHCAT")) {
- assertEquals(1, serviceInfo.getConfigDependencies().size());
- assertEquals(1, serviceInfo.getConfigTypes().size());
- assertTrue(serviceInfo.getConfigDependencies().contains("webhcat-site"));
- assertTrue(Boolean.valueOf(serviceInfo.getConfigTypes().get("webhcat-site").get("supports").get("final")));
- }
- }
- }
-
- @Test
- public void testClientConfigFilesInheritance() throws Exception{
- File stackRoot = new File(stackRootStr);
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName("HDP");
- stackInfo.setVersion("2.0.6");
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- helper.populateServicesForStack(stackInfo);
- helper.fillInfo();
- List<ServiceInfo> allServices = helper.getAllApplicableServices(stackInfo);
- for (ServiceInfo serviceInfo : allServices) {
- if (serviceInfo.getName().equals("ZOOKEEPER")) {
- List<ComponentInfo> components = serviceInfo.getComponents();
- assertTrue(components.size() == 2);
- ComponentInfo componentInfo = components.get(1);
- List<ClientConfigFileDefinition> clientConfigs = componentInfo.getClientConfigFiles();
- assertEquals(2,clientConfigs.size());
- assertEquals("zookeeper-env",clientConfigs.get(0).getDictionaryName());
- assertEquals("zookeeper-env.sh",clientConfigs.get(0).getFileName());
- assertEquals("env",clientConfigs.get(0).getType());
- assertEquals("zookeeper-log4j",clientConfigs.get(1).getDictionaryName());
- assertEquals("log4j.properties",clientConfigs.get(1).getFileName());
- assertEquals("env",clientConfigs.get(1).getType());
- }
- }
- }
-
- @Test
- public void testMonitoringServicePropertyInheritance() throws Exception{
- File stackRoot = new File(stackRootStr);
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName("HDP");
- stackInfo.setVersion("2.0.7");
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- helper.populateServicesForStack(stackInfo);
- helper.fillInfo();
- List<ServiceInfo> allServices = helper.getAllApplicableServices(stackInfo);
- assertEquals(13, allServices.size());
- for (ServiceInfo serviceInfo : allServices) {
- if (serviceInfo.getName().equals("NAGIOS")) {
- assertTrue(serviceInfo.isMonitoringService());
- } else {
- assertNull(serviceInfo.isMonitoringService());
- }
- }
- }
-
- @Test
- public void getSchemaVersion() throws Exception {
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- File legacyMetaInfoFile = new File("./src/test/resources/stacks/HDP/2.0.7/" +
- "services/HIVE/metainfo.xml".replaceAll("/", File.separator));
- String version = helper.getSchemaVersion(legacyMetaInfoFile);
- assertEquals("2.0", version);
-
- File v2MetaInfoFile = new File("./src/test/resources/stacks/HDP/2.0.7/" +
- "services/HBASE/metainfo.xml".replaceAll("/", File.separator));
- version = helper.getSchemaVersion(v2MetaInfoFile);
- assertEquals("2.0", version);
- }
-
- public StackExtensionHelper getStackExtensionHelper() {
- File stackRoot = new File(stackRootStr);
- return new StackExtensionHelper(injector, stackRoot);
- }
-
- public ServiceInfo getServiceFromStack(StackExtensionHelper helper, String stackName, String stackVersion, String serviceName) throws XPathExpressionException, ParserConfigurationException, SAXException, IOException, JAXBException {
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName(stackName);
- stackInfo.setVersion(stackVersion);
-
- helper.populateServicesForStack(stackInfo);
-
- for(ServiceInfo service:stackInfo.getServices()) {
- if(service.getName().equals(serviceName)) {
- return service;
- }
- }
- return null;
- }
-
- private void addToPropertyMap(Map<String, Map<String, Map<String, String>>> configTypes,String configType,
- String keyword, String attributeName, String value) {
- if(!configTypes.containsKey(configType)) {
- configTypes.put(configType, new HashMap<String, Map<String, String>>());
- }
- Map<String, Map<String, String>> config = configTypes.get(configType);
- if(!config.containsKey(keyword)) {
- config.put(keyword, new HashMap<String, String>());
- }
- Map<String, String> supports = config.get(keyword);
- supports.put(attributeName, value);
- }
-
- /**
- * This test ensures the service status check is added into the action metadata when
- * the stack has no parent and is the only stack in the stack family
- * @throws Exception
- */
- @Test
- public void testGetServiceInfoFromSingleStack() throws Exception {
- File stackRoot = new File("./src/test/resources/single_stack".replace("/", File.separator));
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- helper.fillInfo();
- List<StackInfo> stackInfoList = helper.getAllAvailableStacks();
- assertEquals(1, stackInfoList.size());
-
- List<ServiceInfo> serviceInfoList = helper.getAllApplicableServices(stackInfoList.get(0));
- for(ServiceInfo serviceInfo: serviceInfoList) {
- if ("HDFS".equalsIgnoreCase(serviceInfo.getName())) {
- ActionMetadata actionMetadata = injector.getInstance(ActionMetadata.class);
- String hdfsStatusCheckCmd = actionMetadata.getServiceCheckAction("HDFS");
- assertEquals("HDFS_SERVICE_CHECK", hdfsStatusCheckCmd);
- break;
- }
- }
- }
-
- @Test
- public void testPopulateConfigTypes() throws XPathExpressionException, ParserConfigurationException, SAXException, IOException, JAXBException {
- StackExtensionHelper helper = getStackExtensionHelper();
- ServiceInfo serviceInfo = getServiceFromStack(helper, "HDP", "2.0.7", "HDFS");
-
-
- Map<String, Map<String, Map<String, String>>> expectedConfigTypes = new HashMap<String, Map<String, Map<String, String>>>();
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "true");
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
-
- Map<String, Map<String, Map<String, String>>> configTypes = serviceInfo.getConfigTypes();
- assertEquals(4, configTypes.size());
- assertEquals(expectedConfigTypes, configTypes);
- }
-
- @Test
- public void testAddConfigTypeProperty_configTypesIsNull() {
- // init
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- ServiceInfo serviceInfo = createMock(ServiceInfo.class);
-
- // expectations
- expect(serviceInfo.getConfigTypes()).andReturn(null);
- replay(serviceInfo);
-
- // eval
- helper.addConfigTypeProperty(serviceInfo.getConfigTypes(), "dep", "group", "key", "value");
-
- // verification
- verify(serviceInfo);
- }
-
- @Test
- public void testAddConfigTypeProperty_groupDoesNotExist() {
- // init
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- ServiceInfo serviceInfo = new ServiceInfo();
- Map<String, Map<String, Map<String, String>>> configTypes = new HashMap<String, Map<String, Map<String, String>>>();
- Map<String, Map<String, String>> groupMap = new HashMap<String, Map<String, String>>();
- configTypes.put("dep", groupMap);
- serviceInfo.setConfigTypes(configTypes);
-
- // eval
- helper.addConfigTypeProperty(serviceInfo.getConfigTypes(), "dep", "group", "key", "value");
-
- // assert
- configTypes = serviceInfo.getConfigTypes();
- assertEquals(1, configTypes.size());
- assertTrue(configTypes.containsKey("dep"));
- Map<String, Map<String, String>> configType = configTypes.get("dep");
- assertTrue(configType.containsKey("group"));
- Map<String, String> group = configType.get("group");
- assertEquals(1, group.size());
- assertTrue(group.containsKey("key"));
- assertEquals("value", group.get("key"));
- }
-
- @Test
- public void testAddConfigTypeProperty_typeDoesNotExist() {
- // init
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- ServiceInfo serviceInfo = new ServiceInfo();
- Map<String, Map<String, Map<String, String>>> configTypes = new HashMap<String, Map<String, Map<String, String>>>();
- Map<String, Map<String, String>> groupMap = new HashMap<String, Map<String, String>>();
- configTypes.put("dep", groupMap);
- serviceInfo.setConfigTypes(configTypes);
-
- // eval
- helper.addConfigTypeProperty(serviceInfo.getConfigTypes(), "no_such_dep", "group", "key", "value");
-
- // assert
- configTypes = serviceInfo.getConfigTypes();
- assertEquals(1, configTypes.size());
- assertFalse(configTypes.containsKey("no_such_dep"));
- assertTrue(configTypes.containsKey("dep"));
- Map<String, Map<String, String>> configType = configTypes.get("dep");
- assertEquals(0, configType.size());
- }
-
- @Test
- public void testAddConfigTypeProperty_groupExist() {
- // init
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- ServiceInfo serviceInfo = new ServiceInfo();
- Map<String, Map<String, Map<String, String>>> configTypes = new HashMap<String, Map<String, Map<String, String>>>();
- Map<String, Map<String, String>> groupMap = new HashMap<String, Map<String, String>>();
- Map<String, String> propertiesMap = new HashMap<String, String>();
- groupMap.put("group", propertiesMap);
- configTypes.put("dep", groupMap);
- serviceInfo.setConfigTypes(configTypes);
-
- // eval
- helper.addConfigTypeProperty(serviceInfo.getConfigTypes(), "dep", "group", "key", "value");
-
- // assert
- configTypes = serviceInfo.getConfigTypes();
- assertEquals(1, configTypes.size());
- assertTrue(configTypes.containsKey("dep"));
- Map<String, Map<String, String>> configType = configTypes.get("dep");
- assertTrue(configType.containsKey("group"));
- Map<String, String> group = configType.get("group");
- assertTrue(group.containsKey("key"));
- assertEquals("value", group.get("key"));
- }
-
- @Test
- public void testPopulateServiceProperties_noSupportsFinalFlag() throws Exception {
- StackExtensionHelper helper = getStackExtensionHelper();
- ServiceInfo serviceInfo = getServiceFromStack(helper, "HDP", "2.0.7", "YARN");
-
- File configFile = new File(stackRootStr
- + "HDP/2.0.7/services/YARN/configuration/yarn-site.xml".replaceAll("/", File.separator));
-
- helper.populateServiceProperties(configFile, serviceInfo);
-
- Map<String, Map<String, Map<String, String>>> expectedConfigTypes = new HashMap<String, Map<String, Map<String, String>>>();
- addToPropertyMap(expectedConfigTypes, "yarn-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "yarn-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "true");
- addToPropertyMap(expectedConfigTypes, "yarn-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "true");
-
- assertEquals(expectedConfigTypes, serviceInfo.getConfigTypes());
- }
-
- @Test
- public void testPopulateServiceProperties_supportsFinalTrue() throws Exception {
- StackExtensionHelper helper = getStackExtensionHelper();
- ServiceInfo serviceInfo = getServiceFromStack(helper, "HDP", "2.0.7", "HDFS");
-
- File configFile = new File(stackRootStr
- + "HDP/2.0.7/services/HDFS/configuration/global.xml".replaceAll("/", File.separator));
- helper.populateServiceProperties(configFile, serviceInfo);
-
- Map<String, Map<String, Map<String, String>>> expectedConfigTypes = new HashMap<String, Map<String, Map<String, String>>>();
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "true");
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
-
- assertEquals(expectedConfigTypes, serviceInfo.getConfigTypes());
- }
-
- @Test
- public void testPopulateServiceProperties_supportsFinalFalse() throws Exception {
- StackExtensionHelper helper = getStackExtensionHelper();
- ServiceInfo serviceInfo = getServiceFromStack(helper, "HDP", "2.0.7", "HDFS");
- File configFile = new File(stackRootStr
- + "HDP/2.0.7/services/YARN/configuration/yarn-site.xml".replaceAll("/", File.separator));
- helper.populateServiceProperties(configFile, serviceInfo);
-
- Map<String, Map<String, Map<String, String>>> expectedConfigTypes = new HashMap<String, Map<String, Map<String, String>>>();
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "true");
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "global", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hdfs-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "hadoop-policy", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "core-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "yarn-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.FINAL.getPropertyName(), "false");
- addToPropertyMap(expectedConfigTypes, "yarn-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.ADDING_FORBIDDEN.getPropertyName(), "true");
- addToPropertyMap(expectedConfigTypes, "yarn-site", StackExtensionHelper.Supports.KEYWORD,
- StackExtensionHelper.Supports.DO_NOT_EXTEND.getPropertyName(), "true");
-
- assertEquals(expectedConfigTypes, serviceInfo.getConfigTypes());
- }
-
- @Test
- public void testPopulateServiceProperties_supportsFinalWrongType() throws Exception {
- // init
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = createMockBuilder(StackExtensionHelper.class).addMockedMethod("addConfigTypeProperty")
- .withConstructor(injector, stackRoot).createMock();
- File config = new File("./src/test/resources/bad-stacks/HDP/0.1/services/YARN/configuration/yarn-site.xml"
- .replaceAll("/", File.separator));
- ServiceInfo serviceInfo = createNiceMock(ServiceInfo.class);
- List<PropertyInfo> properties = createNiceMock(List.class);
-
- // expectations
- expect(serviceInfo.getConfigTypes()).andReturn(new HashMap<String, Map<String, Map<String, String>>>()).times(2);
- expect(serviceInfo.getProperties()).andReturn(properties).times(1);
- expect(properties.addAll((Collection) anyObject())).andReturn(true).times(1);
- replay(properties, serviceInfo);
-
- // eval
- helper.populateServiceProperties(config, serviceInfo);
-
- // verification
- verify(properties, serviceInfo);
- }
-
- @Test
- public void testPopulateServiceProperties_configTypesIsNull() throws Exception {
- // init
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- File config = new File(stackRootStr
- + "HDP/2.1.1/services/PIG/configuration/pig-properties.xml".replaceAll("/", File.separator));
- ServiceInfo serviceInfo = createNiceMock(ServiceInfo.class);
- List<PropertyInfo> properties = createMock(List.class);
-
- // expectations
- expect(serviceInfo.getConfigTypes()).andReturn(new HashMap<String, Map<String, Map<String, String>>>()).times(2);
- expect(serviceInfo.getProperties()).andReturn(properties).times(1);
- expect(properties.addAll((Collection) anyObject())).andReturn(true).times(1);
- replay(properties);
- replay(serviceInfo);
-
- // eval
- helper.populateServiceProperties(config, serviceInfo);
-
- // verification
- verify(properties, serviceInfo);
- }
-
- @Test
- public void testUnmarshallConfigurationXml() throws Exception {
- File configFile = new File("./src/test/resources/bad-stacks/HDP/0.1/services/YARN/configuration/capacity-scheduler.xml");
- ConfigurationXml config = StackExtensionHelper.unmarshal(ConfigurationXml.class, configFile);
- Map<QName, String> attributes = config.getAttributes();
- List<PropertyInfo> properties = config.getProperties();
-
- // attributes verification
- assertEquals(2, attributes.size());
- QName supportsFinal = new QName("", "supports_final");
- assertTrue(attributes.containsKey(supportsFinal));
- assertEquals("false", attributes.get(supportsFinal));
- QName supportsDeletable = new QName("", "supports_deletable");
- assertTrue(attributes.containsKey(supportsDeletable));
- assertEquals("false", attributes.get(supportsDeletable));
-
- // properties verification
- assertEquals(3, properties.size());
-
- PropertyInfo propertyInfo;
- propertyInfo = properties.get(0);
- assertEquals("yarn.scheduler.capacity.maximum-applications", propertyInfo.getName());
- assertEquals("Maximum number of applications that can be pending and running.", propertyInfo.getDescription());
- assertEquals("10000", propertyInfo.getValue());
- assertEquals(1, propertyInfo.getAttributesMap().size());
- assertEquals("true", propertyInfo.getAttributesMap().get("final"));
- assertEquals(null, propertyInfo.getFilename());
- assertEquals(false, propertyInfo.isDeleted());
- assertEquals(false, propertyInfo.isRequireInput());
- assertTrue(propertyInfo.getPropertyTypes().isEmpty());
-
- propertyInfo = properties.get(1);
- assertEquals("yarn.scheduler.capacity.maximum-am-resource-percent", propertyInfo.getName());
- assertEquals("Maximum percent of resources in the cluster.", propertyInfo.getDescription());
- assertEquals("0.2", propertyInfo.getValue());
- assertEquals(1, propertyInfo.getAttributesMap().size());
- assertEquals("false", propertyInfo.getAttributesMap().get("final"));
- assertEquals(null, propertyInfo.getFilename());
- assertEquals(true, propertyInfo.isDeleted());
- assertEquals(false, propertyInfo.isRequireInput());
- assertTrue(propertyInfo.getPropertyTypes().isEmpty());
-
- propertyInfo = properties.get(2);
- assertEquals("yarn.scheduler.capacity.root.queues", propertyInfo.getName());
- assertEquals("The queues at the this level (root is the root queue).", propertyInfo.getDescription());
- assertEquals("default", propertyInfo.getValue());
- assertEquals(0, propertyInfo.getAttributesMap().size());
- assertEquals(null, propertyInfo.getFilename());
- assertEquals(false, propertyInfo.isDeleted());
- assertEquals(true, propertyInfo.isRequireInput());
- assertTrue(propertyInfo.getPropertyTypes().isEmpty());
- }
-
- @Test
- public void testMergeServices_BothConfigTypesAreNull() throws Exception {
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- ServiceInfo child = new ServiceInfo();
- ServiceInfo parent = new ServiceInfo();
-
- child.setConfigTypes(null);
- child.setConfigDependencies(null);
-
- parent.setConfigTypes(null);
- parent.setConfigDependencies(null);
-
- ServiceInfo merged = helper.mergeServices(parent, child);
-
- assertNotNull(merged.getConfigDependencies());
- assertEquals(0, merged.getConfigDependencies().size());
- assertNotNull(merged.getConfigTypes());
- assertEquals(0, merged.getConfigTypes().size());
- }
-
- @Test
- public void testServiceInheritance() throws Exception {
- File stackRoot = new File(stackRootStr);
- StackInfo stackInfo = new StackInfo();
- stackInfo.setName("HDP");
- stackInfo.setVersion("2.0.6");
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- helper.populateServicesForStack(stackInfo);
- helper.fillInfo();
- List<ServiceInfo> allServices = helper.getAllApplicableServices(stackInfo);
- for (ServiceInfo serviceInfo : allServices) {
- if (serviceInfo.getName().equals("HDFS")){
- assertEquals("HDFS", serviceInfo.getName());
- assertNotNull(serviceInfo.getMetricsFile());
- }
- }
-
- }
-
-
- @Test
- public void testMergeComponentInfo() throws Exception {
- File stackRoot = new File(stackRootStr);
- StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
- ComponentInfo child = new ComponentInfo();
- ComponentInfo parent = new ComponentInfo();
- DependencyInfo a = new DependencyInfo();
- a.setName("serviceName/A");
- DependencyInfo b = new DependencyInfo();
- b.setName("serviceName/B");
- List<DependencyInfo> parentDependencies = new ArrayList<DependencyInfo>();
- parentDependencies.add(a);
- parentDependencies.add(b);
- parent.setDependencies(parentDependencies);
-
- DependencyInfo c = new DependencyInfo();
- c.setName("serviceName/C");
- List<DependencyInfo> childDependencies = new ArrayList<DependencyInfo>();
- childDependencies.add(c);
- child.setDependencies(childDependencies);
-
- child.setCardinality("1");
- parent.setCardinality("1+");
-
- child.setCategory("CLIENT");
- parent.setCategory("MASTER");
-
- ComponentInfo result = helper.mergeComponents(parent, child);
-
- assertEquals(result.getCardinality(),"1");
- assertEquals(result.getCategory(), "CLIENT");
- assertEquals(result.getDependencies().size(), 3);
- }
-}
-
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
index 5c8b4ad..e068508 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
@@ -299,7 +299,7 @@ public class AmbariManagementControllerImplTest {
expect(serviceInfo.getClientComponent()).andReturn(compInfo);
expect(compInfo.getName()).andReturn("component");
expect(component.getServiceComponentHosts()).andReturn(Collections.<String, ServiceComponentHost>singletonMap("host", null));
- expect(ambariMetaInfo.getServiceInfo("stack", "1.0", "service")).andReturn(serviceInfo);
+ expect(ambariMetaInfo.getService("stack", "1.0", "service")).andReturn(serviceInfo);
replay(injector, cluster, service, component, serviceInfo, compInfo, ambariMetaInfo, stackId);
@@ -339,7 +339,7 @@ public class AmbariManagementControllerImplTest {
ComponentInfo compInfo = createNiceMock(ComponentInfo.class);
expect(serviceInfo.getClientComponent()).andReturn(compInfo);
expect(compInfo.getName()).andReturn("component");
- expect(ambariMetaInfo.getServiceInfo("stack", "1.0", "service")).andReturn(serviceInfo);
+ expect(ambariMetaInfo.getService("stack", "1.0", "service")).andReturn(serviceInfo);
replay(injector, cluster, service, component1, component2, serviceInfo, compInfo, ambariMetaInfo, stackId);
@@ -375,7 +375,7 @@ public class AmbariManagementControllerImplTest {
ServiceInfo serviceInfo = createNiceMock(ServiceInfo.class);
expect(serviceInfo.getClientComponent()).andReturn(null);
- expect(ambariMetaInfo.getServiceInfo("stack", "1.0", "service")).andReturn(serviceInfo);
+ expect(ambariMetaInfo.getService("stack", "1.0", "service")).andReturn(serviceInfo);
replay(injector, cluster, service, component1, component2, serviceInfo, ambariMetaInfo, stackId);
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
index b2c023f..2a0ebc5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
@@ -156,7 +156,7 @@ public class AmbariManagementControllerTest {
private static final String NAGIOS_SERVICE_NAME = "NAGIOS";
private static final int STACK_VERSIONS_CNT = 12;
private static final int REPOS_CNT = 3;
- private static final int STACKS_CNT = 2;
+ private static final int STACKS_CNT = 3;
private static final int STACK_PROPERTIES_CNT = 103;
private static final int STACK_COMPONENTS_CNT = 4;
private static final int OS_CNT = 2;
@@ -1718,12 +1718,6 @@ public class AmbariManagementControllerTest {
for (ExecutionCommandWrapper ecw : stage.getExecutionCommands(host)) {
Assert.assertFalse(
ecw.getExecutionCommand().getHostLevelParams().get("repo_info").isEmpty());
-
- LOG.info("Dumping host action details"
- + ", stageId=" + stage.getStageId()
- + ", actionId=" + stage.getActionId()
- + ", commandDetails="
- + StageUtils.jaxbToString(ecw.getExecutionCommand()));
}
}
}
@@ -1786,20 +1780,6 @@ public class AmbariManagementControllerTest {
stages = actionDB.getAllStages(trackAction.getRequestId());
Assert.assertEquals(2, stages.size());
- for (Stage stage : stages) {
- LOG.info("Stage Details for Start Service"
- + ", stageId="+ stage.getStageId()
- + ", actionId=" + stage.getActionId());
-
- for (String host : stage.getHosts()) {
- LOG.info("Dumping host action details"
- + ", stageId=" + stage.getStageId()
- + ", actionId=" + stage.getActionId()
- + ", commandDetails="
- + StageUtils.jaxbToString(stage.getExecutionCommands(host).get(0)));
- }
- }
-
StringBuilder sb = new StringBuilder();
clusters.debugDump(sb);
LOG.info("Cluster Dump: " + sb.toString());
@@ -1837,9 +1817,6 @@ public class AmbariManagementControllerTest {
// TODO validate stages?
stages = actionDB.getAllStages(trackAction.getRequestId());
- for (Stage stage : stages) {
- LOG.info("Stage Details for Stop Service : " + stage.toString());
- }
Assert.assertEquals(1, stages.size());
}
@@ -7071,7 +7048,7 @@ public class AmbariManagementControllerTest {
@Test
public void testGetStackVersionActiveAttr() throws Exception {
- for (StackInfo stackInfo: ambariMetaInfo.getStackInfos(STACK_NAME)) {
+ for (StackInfo stackInfo: ambariMetaInfo.getStacks(STACK_NAME)) {
if (stackInfo.getVersion().equalsIgnoreCase(STACK_VERSION)) {
stackInfo.setActive(true);
}
@@ -8172,7 +8149,7 @@ public class AmbariManagementControllerTest {
@Test
public void testUpdateStacks() throws Exception {
- StackInfo stackInfo = ambariMetaInfo.getStackInfo(STACK_NAME, STACK_VERSION);
+ StackInfo stackInfo = ambariMetaInfo.getStack(STACK_NAME, STACK_VERSION);
for (RepositoryInfo repositoryInfo: stackInfo.getRepositories()) {
assertFalse(INCORRECT_BASE_URL.equals(repositoryInfo.getBaseUrl()));
@@ -8182,7 +8159,7 @@ public class AmbariManagementControllerTest {
controller.updateStacks();
- stackInfo = ambariMetaInfo.getStackInfo(STACK_NAME, STACK_VERSION);
+ stackInfo = ambariMetaInfo.getStack(STACK_NAME, STACK_VERSION);
for (RepositoryInfo repositoryInfo: stackInfo.getRepositories()) {
assertFalse(INCORRECT_BASE_URL.equals(repositoryInfo.getBaseUrl()));
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintResourceProviderTest.java
index 5438654..9514b21 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintResourceProviderTest.java
@@ -156,8 +156,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
replay(dao, metaInfo, request, managementController);
@@ -222,8 +221,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
replay(dao, metaInfo, request, managementController);
@@ -290,8 +288,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
replay(dao, metaInfo, request, managementController);
@@ -381,7 +378,7 @@ public class BlueprintResourceProviderTest {
BlueprintResourceProvider.BLUEPRINT_NAME_PROPERTY_ID, BLUEPRINT_NAME);
AbstractResourceProviderTest.TestObserver observer = new AbstractResourceProviderTest.TestObserver();
- ((ObservableResourceProvider)provider).addObserver(observer);
+ provider.addObserver(observer);
provider.deleteResources(predicate);
@@ -639,7 +636,6 @@ public class BlueprintResourceProviderTest {
expect(stackServiceResponse.getServiceName()).andReturn("test-service").anyTimes();
expect(stackServiceResponse.getStackName()).andReturn("test-stack-name").anyTimes();
expect(stackServiceResponse.getStackVersion()).andReturn("test-stack-version").anyTimes();
- expect(stackServiceResponse.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet());
expect(managementController.getStackComponents(capture(serviceComponentRequestCapture))).andReturn(setServiceComponents).anyTimes();
expect(stackServiceComponentResponse.getCardinality()).andReturn("2").anyTimes();
@@ -673,8 +669,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
replay(dao, metaInfo, request, managementController, stackServiceResponse,
@@ -751,7 +746,6 @@ public class BlueprintResourceProviderTest {
expect(stackServiceResponse.getServiceName()).andReturn("test-service").anyTimes();
expect(stackServiceResponse.getStackName()).andReturn("test-stack-name").anyTimes();
expect(stackServiceResponse.getStackVersion()).andReturn("test-stack-version").anyTimes();
- expect(stackServiceResponse.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet());
expect(managementController.getStackComponents(capture(serviceComponentRequestCapture))).andReturn(setServiceComponents).anyTimes();
expect(stackServiceComponentResponse.getCardinality()).andReturn("2").anyTimes();
@@ -785,8 +779,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
replay(dao, metaInfo, request, managementController, stackServiceResponse,
@@ -870,8 +863,7 @@ public class BlueprintResourceProviderTest {
Collections.<StackServiceResponse>singleton(stackServiceResponse));
expect(stackServiceResponse.getServiceName()).andReturn("test-service").anyTimes();
expect(stackServiceResponse.getStackName()).andReturn("test-stack-name").anyTimes();
- expect(stackServiceResponse.getStackVersion()).andReturn("test-stack-version").anyTimes();
- expect(stackServiceResponse.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet());
+ expect(stackServiceResponse.getStackVersion()).andReturn("test-stack-version").anyTimes();;
expect(managementController.getStackComponents(capture(serviceComponentRequestCapture))).andReturn(setServiceComponents).anyTimes();
expect(stackServiceComponentResponse.getCardinality()).andReturn("2").anyTimes();
@@ -905,8 +897,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
replay(dao, metaInfo, request, managementController, stackServiceResponse,
@@ -980,7 +971,6 @@ public class BlueprintResourceProviderTest {
expect(stackServiceResponse.getServiceName()).andReturn("test-service").anyTimes();
expect(stackServiceResponse.getStackName()).andReturn("test-stack-name").anyTimes();
expect(stackServiceResponse.getStackVersion()).andReturn("test-stack-version").anyTimes();
- expect(stackServiceResponse.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet());
expect(managementController.getStackComponents(capture(serviceComponentRequestCapture))).andReturn(setServiceComponents).anyTimes();
expect(stackServiceComponentResponse.getCardinality()).andReturn("2").anyTimes();
@@ -1014,8 +1004,7 @@ public class BlueprintResourceProviderTest {
andReturn("test-service").anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component2")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
replay(dao, metaInfo, request, managementController, stackServiceResponse,
stackServiceComponentResponse, stackServiceComponentResponse2);
@@ -1062,6 +1051,7 @@ public class BlueprintResourceProviderTest {
serviceComponents.add(component1);
serviceComponents.add(component2);
+
Set<Map<String, Object>> setProperties = getTestProperties();
((HashSet<Map<String, String>>) ((HashSet<Map<String, Object>>) setProperties.iterator().next().get(
BlueprintResourceProvider.HOST_GROUP_PROPERTY_ID)).iterator().next().get("components")).
@@ -1080,8 +1070,7 @@ public class BlueprintResourceProviderTest {
andReturn(serviceComponents).anyTimes();
expect(metaInfo.getComponentToService("test-stack-name", "test-stack-version", "component1")).
andReturn("test-service").anyTimes();
- expect(metaInfo.getRequiredProperties("test-stack-name", "test-stack-version", "test-service")).andReturn(
- Collections.<String, org.apache.ambari.server.state.PropertyInfo>emptyMap()).anyTimes();
+ expect(metaInfo.getService("test-stack-name", "test-stack-version", "test-service")).andReturn(service).anyTimes();
dao.create(capture(entityCapture));
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProviderTest.java
index d73eea4..0d3b00f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProviderTest.java
@@ -256,9 +256,9 @@ public class ClientConfigResourceProviderTest {
expect(stackId.getStackVersion()).andReturn(stackVersion).anyTimes();
expect(ambariMetaInfo.getComponent(stackName, stackVersion, serviceName, componentName)).andReturn(componentInfo);
- expect(ambariMetaInfo.getServiceInfo(stackName, stackVersion, serviceName)).andReturn(serviceInfo);
+ expect(ambariMetaInfo.getService(stackName, stackVersion, serviceName)).andReturn(serviceInfo);
expect(serviceInfo.getServicePackageFolder()).andReturn(packageFolder);
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.getCommandScript()).andReturn(commandScriptDefinition);
expect(componentInfo.getClientConfigFiles()).andReturn(clientConfigFileDefinitionList);
@@ -271,7 +271,7 @@ public class ClientConfigResourceProviderTest {
HashMap<String, String> rcaParams = new HashMap<String, String>();
rcaParams.put("key","value");
expect(managementController.getRcaParameters()).andReturn(rcaParams).anyTimes();
- expect(ambariMetaInfo.getServiceInfo(stackName, stackVersion, serviceName)).andReturn(serviceInfo);
+ expect(ambariMetaInfo.getService(stackName, stackVersion, serviceName)).andReturn(serviceInfo);
expect(serviceInfo.getOsSpecifics()).andReturn(new HashMap<String, ServiceOsSpecific>()).anyTimes();
Set<String> userSet = new HashSet<String>();
userSet.add("hdfs");
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
index 98bd017..f7149a8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
@@ -96,7 +96,6 @@ public class ClusterResourceProviderTest {
BaseBlueprintProcessor.stackInfo = null;
}
-
@Test
public void testCreateResources() throws Exception{
Resource.Type type = Resource.Type.Cluster;
@@ -2961,7 +2960,6 @@ public class ClusterResourceProviderTest {
expect(mockStackServiceResponseOne.getServiceName()).andReturn("OOZIE").atLeastOnce();
- expect(mockStackServiceResponseOne.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet()).atLeastOnce();
expect(mockManagementController.getStackServices(isA(Set.class))).andReturn(Collections.singleton(mockStackServiceResponseOne));
expect(mockManagementController.getStackComponents(isA(Set.class))).andReturn(Collections.singleton(mockStackComponentResponse));
expect(mockManagementController.getStackConfigurations(isA(Set.class))).andReturn(Collections.<StackConfigurationResponse>emptySet());
@@ -3045,7 +3043,6 @@ public class ClusterResourceProviderTest {
expect(mockStackServiceResponseOne.getServiceName()).andReturn("FALCON").atLeastOnce();
- expect(mockStackServiceResponseOne.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet()).atLeastOnce();
expect(mockManagementController.getStackServices(isA(Set.class))).andReturn(Collections.singleton(mockStackServiceResponseOne));
expect(mockManagementController.getStackComponents(isA(Set.class))).andReturn(Collections.singleton(mockStackComponentResponse));
expect(mockManagementController.getStackConfigurations(isA(Set.class))).andReturn(Collections.<StackConfigurationResponse>emptySet());
@@ -3127,7 +3124,6 @@ public class ClusterResourceProviderTest {
expect(mockStackServiceResponseOne.getServiceName()).andReturn("OOZIE").atLeastOnce();
- expect(mockStackServiceResponseOne.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet()).atLeastOnce();
expect(mockManagementController.getStackServices(isA(Set.class))).andReturn(Collections.singleton(mockStackServiceResponseOne));
expect(mockManagementController.getStackComponents(isA(Set.class))).andReturn(Collections.singleton(mockStackComponentResponse));
expect(mockManagementController.getStackConfigurations(isA(Set.class))).andReturn(Collections.<StackConfigurationResponse>emptySet());
@@ -3203,9 +3199,7 @@ public class ClusterResourceProviderTest {
expect(mockStackComponentResponse.getCardinality()).andReturn("1");
expect(mockStackComponentResponse.getAutoDeploy()).andReturn(new AutoDeployInfo());
-
expect(mockStackServiceResponseOne.getServiceName()).andReturn("FALCON").atLeastOnce();
- expect(mockStackServiceResponseOne.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet()).atLeastOnce();
expect(mockManagementController.getStackServices(isA(Set.class))).andReturn(Collections.singleton(mockStackServiceResponseOne));
expect(mockManagementController.getStackComponents(isA(Set.class))).andReturn(Collections.singleton(mockStackComponentResponse));
@@ -3283,7 +3277,6 @@ public class ClusterResourceProviderTest {
expect(mockStackComponentResponse.getAutoDeploy()).andReturn(new AutoDeployInfo());
expect(mockStackServiceResponseOne.getServiceName()).andReturn("HIVE").atLeastOnce();
- expect(mockStackServiceResponseOne.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet()).atLeastOnce();
expect(mockManagementController.getStackServices(isA(Set.class))).andReturn(Collections.singleton(mockStackServiceResponseOne));
expect(mockManagementController.getStackComponents(isA(Set.class))).andReturn(Collections.singleton(mockStackComponentResponse));
expect(mockManagementController.getStackConfigurations(isA(Set.class))).andReturn(Collections.<StackConfigurationResponse>emptySet());
@@ -3360,7 +3353,6 @@ public class ClusterResourceProviderTest {
expect(mockStackComponentResponse.getAutoDeploy()).andReturn(new AutoDeployInfo());
expect(mockStackServiceResponseOne.getServiceName()).andReturn("HBASE").atLeastOnce();
- expect(mockStackServiceResponseOne.getExcludedConfigTypes()).andReturn(Collections.<String>emptySet()).atLeastOnce();
expect(mockManagementController.getStackServices(isA(Set.class))).andReturn(Collections.singleton(mockStackServiceResponseOne));
expect(mockManagementController.getStackComponents(isA(Set.class))).andReturn(Collections.singleton(mockStackComponentResponse));
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java
index 1455c52..a66add3 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java
@@ -49,6 +49,7 @@ import java.util.Set;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ObjectNotFoundException;
import org.apache.ambari.server.ServiceComponentNotFoundException;
+import org.apache.ambari.server.StackAccessException;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.AmbariManagementControllerImpl;
@@ -187,8 +188,8 @@ public class ComponentResourceProviderTest {
expect(serviceComponent3.convertToResponse()).andReturn(
new ServiceComponentResponse(100L, "Cluster100", "Service100", "Component102", null, "", 1, 1, 0));
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(),
- (String) anyObject(), (String) anyObject(), (String) anyObject()))
+ expect(ambariMetaInfo.getComponent((String) anyObject(),
+ (String) anyObject(), (String) anyObject(), (String) anyObject()))
.andReturn(componentInfo1).times(2).andReturn(componentInfo2);
expect(componentInfo1.getCategory()).andReturn("MASTER").anyTimes();
@@ -254,6 +255,10 @@ public class ComponentResourceProviderTest {
Cluster cluster = createNiceMock(Cluster.class);
AmbariMetaInfo ambariMetaInfo = createNiceMock(AmbariMetaInfo.class);
Service service = createNiceMock(Service.class);
+ ComponentInfo component1Info = createNiceMock(ComponentInfo.class);
+ ComponentInfo component2Info = createNiceMock(ComponentInfo.class);
+ ComponentInfo component3Info = createNiceMock(ComponentInfo.class);
+
ServiceComponent serviceComponent1 = createNiceMock(ServiceComponent.class);
ServiceComponent serviceComponent2 = createNiceMock(ServiceComponent.class);
ServiceComponent serviceComponent3 = createNiceMock(ServiceComponent.class);
@@ -271,20 +276,33 @@ public class ComponentResourceProviderTest {
expect(managementController.getAmbariMetaInfo()).andReturn(ambariMetaInfo).anyTimes();
expect(managementController.getEffectiveMaintenanceState(
capture(new Capture<ServiceComponentHost>()))).andReturn(MaintenanceState.OFF).anyTimes();
-
+
+ expect(stackId.getStackName()).andReturn("stackName").anyTimes();
+ expect(stackId.getStackVersion()).andReturn("1").anyTimes();
expect(clusters.getCluster("Cluster100")).andReturn(cluster).anyTimes();
expect(cluster.getDesiredStackVersion()).andReturn(stackId);
expect(cluster.getService("Service100")).andReturn(service).anyTimes();
+ expect(service.getName()).andReturn("Service100").anyTimes();
expect(service.getServiceComponent("Component101")).andReturn(serviceComponent1).anyTimes();
expect(service.getServiceComponent("Component102")).andReturn(serviceComponent1).anyTimes();
expect(service.getServiceComponent("Component103")).andReturn(serviceComponent2).anyTimes();
+ expect(serviceComponent1.getName()).andReturn("Component101").anyTimes();
+ expect(serviceComponent2.getName()).andReturn("Component102").anyTimes();
+ expect(serviceComponent3.getName()).andReturn("Component103").anyTimes();
expect(cluster.getServices()).andReturn(Collections.singletonMap("Service100", service)).anyTimes();
expect(service.getServiceComponents()).andReturn(serviceComponentMap).anyTimes();
+ expect(ambariMetaInfo.getComponent("stackName", "1", "Service100", "Component101")).andReturn(component1Info).atLeastOnce();
+ expect(ambariMetaInfo.getComponent("stackName", "1", "Service100", "Component102")).andReturn(component2Info).atLeastOnce();
+ expect(ambariMetaInfo.getComponent("stackName", "1", "Service100", "Component103")).andReturn(component3Info).atLeastOnce();
+ expect(component1Info.getCategory()).andReturn(null);
+ expect(component2Info.getCategory()).andReturn(null);
+ expect(component3Info.getCategory()).andReturn(null);
+
expect(serviceComponent1.convertToResponse()).andReturn(
new ServiceComponentResponse(100L, "Cluster100", "Service100", "Component101", null, "", 1, 0, 1));
expect(serviceComponent2.convertToResponse()).andReturn(
@@ -316,16 +334,14 @@ public class ComponentResourceProviderTest {
expect(managementController.createAndPersistStages(capture(clusterCapture), capture(requestPropertiesCapture), capture(requestParametersCapture), capture(changedServicesCapture), capture(changedCompsCapture), capture(changedScHostsCapture), capture(ignoredScHostsCapture), anyBoolean(), anyBoolean()
)).andReturn(requestStatusResponse);
-
-
Map<String, String> mapRequestProps = new HashMap<String, String>();
mapRequestProps.put("context", "Called from a test");
// replay
- replay(managementController, clusters, cluster, ambariMetaInfo, service,
- serviceComponent1, serviceComponent2, serviceComponent3, serviceComponentHost,
- requestStatusResponse, stackId, maintenanceStateHelper);
+ replay(managementController, clusters, cluster, ambariMetaInfo, service, component1Info,
+ component2Info, component3Info, serviceComponent1, serviceComponent2, serviceComponent3,
+ serviceComponentHost, requestStatusResponse, stackId, maintenanceStateHelper);
ResourceProvider provider = new ComponentResourceProvider(
PropertyHelper.getPropertyIds(type),
@@ -340,15 +356,15 @@ public class ComponentResourceProviderTest {
// create the request
Request request = PropertyHelper.getUpdateRequest(properties, mapRequestProps);
- // update the cluster named Cluster102
+ // update the cluster named Cluster100
Predicate predicate = new PredicateBuilder().property(ComponentResourceProvider.COMPONENT_CLUSTER_NAME_PROPERTY_ID).
equals("Cluster100").toPredicate();
provider.updateResources(request, predicate);
// verify
- verify(managementController, clusters, cluster, ambariMetaInfo, service,
- serviceComponent1, serviceComponent2, serviceComponent3, serviceComponentHost,
- requestStatusResponse, stackId, maintenanceStateHelper);
+ verify(managementController, clusters, cluster, ambariMetaInfo, service, component1Info,
+ component2Info, component3Info, serviceComponent1, serviceComponent2, serviceComponent3,
+ serviceComponentHost, requestStatusResponse, stackId, maintenanceStateHelper);
}
public void testSuccessDeleteResources() throws Exception {
@@ -615,6 +631,7 @@ public class ComponentResourceProviderTest {
Cluster cluster = createNiceMock(Cluster.class);
Service service = createNiceMock(Service.class);
+ ComponentInfo componentInfo = createNiceMock(ComponentInfo.class);
ServiceComponent component = createNiceMock(ServiceComponent.class);
ServiceComponentResponse response = createNiceMock(ServiceComponentResponse.class);
@@ -630,25 +647,31 @@ public class ComponentResourceProviderTest {
expect(managementController.getClusters()).andReturn(clusters).anyTimes();
expect(managementController.getAmbariMetaInfo()).andReturn(ambariMetaInfo).anyTimes();
+ expect(stackId.getStackName()).andReturn("stackName").anyTimes();
+ expect(stackId.getStackVersion()).andReturn("1").anyTimes();
+
// getComponents
expect(clusters.getCluster("cluster1")).andReturn(cluster);
expect(cluster.getService("service1")).andReturn(service);
expect(cluster.getDesiredStackVersion()).andReturn(stackId).anyTimes();
+ expect(service.getName()).andReturn("service1").anyTimes();
expect(service.getServiceComponent("component1")).andReturn(component);
+ expect(ambariMetaInfo.getComponent("stackName", "1", "service1", "component1")).andReturn(componentInfo);
+ expect(componentInfo.getCategory()).andReturn(null);
+
expect(component.convertToResponse()).andReturn(response);
// replay mocks
- replay(clusters, cluster, service, component, response, ambariMetaInfo, stackId, managementController);
+ replay(clusters, cluster, service, componentInfo, component, response, ambariMetaInfo, stackId, managementController);
//test
-// AmbariManagementController controller = new AmbariManagementControllerImpl(null, clusters, injector);
Set<ServiceComponentResponse> setResponses = getComponentResourceProvider(managementController).getComponents(setRequests);
// assert and verify
assertEquals(1, setResponses.size());
assertTrue(setResponses.contains(response));
- verify(clusters, cluster, service, component, response, ambariMetaInfo, stackId, managementController);
+ verify(clusters, cluster, service, componentInfo, component, response, ambariMetaInfo, stackId, managementController);
}
/**
@@ -665,6 +688,8 @@ public class ComponentResourceProviderTest {
Cluster cluster = createNiceMock(Cluster.class);
Service service = createNiceMock(Service.class);
+ ComponentInfo component3Info = createNiceMock(ComponentInfo.class);
+ ComponentInfo component4Info = createNiceMock(ComponentInfo.class);
ServiceComponent component1 = createNiceMock(ServiceComponent.class);
ServiceComponent component2 = createNiceMock(ServiceComponent.class);
ServiceComponentResponse response1 = createNiceMock(ServiceComponentResponse.class);
@@ -693,12 +718,22 @@ public class ComponentResourceProviderTest {
expect(managementController.getClusters()).andReturn(clusters).anyTimes();
expect(managementController.getAmbariMetaInfo()).andReturn(ambariMetaInfo).anyTimes();
+ expect(stackId.getStackName()).andReturn("stackName").anyTimes();
+ expect(stackId.getStackVersion()).andReturn("1").anyTimes();
+
// getComponents
- expect(clusters.getCluster("cluster1")).andReturn(cluster).times(5);
+ expect(clusters.getCluster("cluster1")).andReturn(cluster).anyTimes();
expect(cluster.getDesiredStackVersion()).andReturn(stackId).anyTimes();
- expect(cluster.getService("service1")).andReturn(service).times(4);
+ expect(cluster.getService("service1")).andReturn(service).anyTimes();
expect(cluster.getService("service2")).andThrow(new ObjectNotFoundException("service2"));
+ expect(ambariMetaInfo.getComponent("stackName", "1", "service1", "component3")).andReturn(component3Info);
+ expect(ambariMetaInfo.getComponent("stackName", "1", "service1", "component4")).andReturn(component4Info);
+
+ expect(component3Info.getCategory()).andReturn(null);
+ expect(component4Info.getCategory()).andReturn(null);
+
+ expect(service.getName()).andReturn("service1").anyTimes();
expect(service.getServiceComponent("component1")).andThrow(new ServiceComponentNotFoundException("cluster1", "service1", "component1"));
expect(service.getServiceComponent("component2")).andThrow(new ServiceComponentNotFoundException("cluster1", "service1", "component2"));
expect(service.getServiceComponent("component3")).andReturn(component1);
@@ -707,7 +742,8 @@ public class ComponentResourceProviderTest {
expect(component1.convertToResponse()).andReturn(response1);
expect(component2.convertToResponse()).andReturn(response2);
// replay mocks
- replay(clusters, cluster, service, component1, component2, response1, response2, ambariMetaInfo, stackId, managementController);
+ replay(clusters, cluster, service, component3Info, component4Info, component1, component2, response1,
+ response2, ambariMetaInfo, stackId, managementController);
//test
Set<ServiceComponentResponse> setResponses = getComponentResourceProvider(managementController).getComponents(setRequests);
@@ -717,7 +753,8 @@ public class ComponentResourceProviderTest {
assertTrue(setResponses.contains(response1));
assertTrue(setResponses.contains(response2));
- verify(clusters, cluster, service, component1, component2, response1, response2, ambariMetaInfo, stackId, managementController);
+ verify(clusters, cluster, service, component3Info, component4Info, component1, component2, response1,
+ response2, ambariMetaInfo, stackId, managementController);
}
public static ComponentResourceProvider getComponentResourceProvider(AmbariManagementController managementController)
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
index 2879094..cab75ee 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
@@ -282,7 +282,7 @@ public class HostResourceProviderTest {
expect(healthStatus.getHealthReport()).andReturn("HEALTHY").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.getCategory()).andReturn("MASTER").anyTimes();
@@ -391,7 +391,7 @@ public class HostResourceProviderTest {
expect(healthStatus.getHealthReport()).andReturn("HEALTHY").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.getCategory()).andReturn("MASTER").anyTimes();
@@ -499,7 +499,7 @@ public class HostResourceProviderTest {
expect(healthStatus.getHealthReport()).andReturn("HEALTHY").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.getCategory()).andReturn("MASTER").anyTimes();
@@ -684,7 +684,7 @@ public class HostResourceProviderTest {
expect(hostResponse1.getStatus()).andReturn(HealthStatus.ALERT.name()).anyTimes();
expect(healthStatus.getHealthStatus()).andReturn(HostHealthStatus.HealthStatus.HEALTHY).anyTimes();
expect(healthStatus.getHealthReport()).andReturn("HEALTHY").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.getCategory()).andReturn("SLAVE").anyTimes();
expect(resourceProviderFactory.getHostResourceProvider(anyObject(Set.class), anyObject(Map.class),
http://git-wip-us.apache.org/repos/asf/ambari/blob/2fc7adec/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java
index 05f2e01..5003c16 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java
@@ -648,7 +648,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -699,7 +699,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -748,7 +748,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -797,7 +797,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -843,7 +843,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(false);
@@ -890,7 +890,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -938,7 +938,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -986,7 +986,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -1032,7 +1032,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(true);
@@ -1075,7 +1075,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(false);
@@ -1125,7 +1125,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
// replay
@@ -1166,7 +1166,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isClient()).andReturn(true);
@@ -1209,7 +1209,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isClient()).andReturn(true);
@@ -1316,7 +1316,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isClient()).andReturn(false).anyTimes();
@@ -1372,7 +1372,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isMaster()).andReturn(false).anyTimes();
@@ -1436,7 +1436,7 @@ public class ServiceResourceProviderTest {
expect(stackId.getStackVersion()).andReturn("V1").anyTimes();
- expect(ambariMetaInfo.getComponentCategory((String) anyObject(), (String) anyObject(),
+ expect(ambariMetaInfo.getComponent((String) anyObject(), (String) anyObject(),
(String) anyObject(), (String) anyObject())).andReturn(componentInfo).anyTimes();
expect(componentInfo.isClient()).andReturn(false);