/** * Builds a list of all specified node tags, except for the excluded one. * * @param nodeTagNames the list of the node tag names * @param excludedNodeTagName the name of the node tag that should be excluded from the list * * @return the list of the node tags */ private List<NodeTag> getTestNodeTags(List<String> nodeTagNames, String excludedNodeTagName) { // Build a list of the node tags that would have all specified node tags, except for the excluded one. List<NodeTag> nodeTags = new ArrayList<>(); for (String nodeTagName : nodeTagNames) { if (!nodeTagName.equals(excludedNodeTagName)) { NodeTag nodeTag = new NodeTag(); nodeTag.setTagName(nodeTagName); nodeTag.setTagValue(ATTRIBUTE_VALUE_1); nodeTags.add(nodeTag); } } return nodeTags; } }
/** * This method tests the blank EC2 tags */ @Test public void testCreateEmrClusterBlankTags() throws Exception { // Create the namespace entity. namespaceDaoTestHelper.createNamespaceEntity(NAMESPACE); String configXml = IOUtils.toString(resourceLoader.getResource(EMR_CLUSTER_DEFINITION_XML_FILE_WITH_CLASSPATH).getInputStream()); EmrClusterDefinition emrClusterDefinition = xmlHelper.unmarshallXmlToObject(EmrClusterDefinition.class, configXml); // Add new node tags. First tag does not contain any tag value; but contains node tag name NodeTag nodeTag1 = new NodeTag(); nodeTag1.setTagName("NO_TAG_VALUE"); // Second tag does not contain node tag name; but contains node tag value NodeTag nodeTag2 = new NodeTag(); nodeTag2.setTagValue("NO_TAG_NAME"); // Create the list and add the tags ArrayList<NodeTag> nodeTagList = new ArrayList<>(); nodeTagList.add(nodeTag1); nodeTagList.add(nodeTag2); // Set the tags emrClusterDefinition.setNodeTags(nodeTagList); emrDao.createEmrCluster(EMR_CLUSTER_DEFINITION_NAME, emrClusterDefinition, emrHelper.getAwsParamsDto()); }
@Test public void testCreateEmrClusterDefinitionDuplicateNodeTags() throws Exception { // Try to perform a create with duplicate node tag names. try { EmrClusterDefinition emrClusterDefinitionConfiguration = getTestEmrClusterDefinitionConfiguration(EMR_CLUSTER_DEFINITION_XML_FILE_WITH_CLASSPATH); for (int i = 0; i < 2; i++) { NodeTag nodeTag = new NodeTag(); nodeTag.setTagName(ATTRIBUTE_NAME_1_MIXED_CASE); nodeTag.setTagValue(ATTRIBUTE_VALUE_1); emrClusterDefinitionConfiguration.getNodeTags().add(nodeTag); } emrClusterDefinitionService .createEmrClusterDefinition(createEmrClusterDefinitionCreateRequest(NAMESPACE, EMR_CLUSTER_DEFINITION_NAME, emrClusterDefinitionConfiguration)); fail("Should throw an IllegalArgumentException when duplicate node tag names are specified."); } catch (IllegalArgumentException e) { assertEquals(String.format("Duplicate node tag \"%s\" is found.", ATTRIBUTE_NAME_1_MIXED_CASE), e.getMessage()); } }
@Test public void testUpdateEmrClusterDefinitionDuplicateNodeTags() throws Exception { // Try to perform an update by passing duplicate node tag names. try { EmrClusterDefinition emrClusterDefinitionConfiguration = getTestEmrClusterDefinitionConfiguration(EMR_CLUSTER_DEFINITION_XML_FILE_WITH_CLASSPATH); for (int i = 0; i < 2; i++) { NodeTag nodeTag = new NodeTag(); nodeTag.setTagName(ATTRIBUTE_NAME_1_MIXED_CASE); nodeTag.setTagValue(ATTRIBUTE_VALUE_1); emrClusterDefinitionConfiguration.getNodeTags().add(nodeTag); } emrClusterDefinitionService.updateEmrClusterDefinition(new EmrClusterDefinitionKey(NAMESPACE, EMR_CLUSTER_DEFINITION_NAME), createEmrClusterDefinitionUpdateRequest(emrClusterDefinitionConfiguration)); fail("Should throw an IllegalArgumentException when duplicate node tag names are specified."); } catch (IllegalArgumentException e) { assertEquals(String.format("Duplicate node tag \"%s\" is found.", ATTRIBUTE_NAME_1_MIXED_CASE), e.getMessage()); } }
sourceTagName = this.getTagName(); String copyTagName = ((String) strategy.copy(LocatorUtils.property(locator, "tagName", sourceTagName), sourceTagName, (this.tagName!= null))); copy.setTagName(copyTagName); } else { if (tagNameShouldBeCopiedAndSet == Boolean.FALSE) {
sourceTagName = this.getTagName(); String copyTagName = ((String) strategy.copy(LocatorUtils.property(locator, "tagName", sourceTagName), sourceTagName, (this.tagName!= null))); copy.setTagName(copyTagName); } else { if (tagNameShouldBeCopiedAndSet == Boolean.FALSE) {
sourceTagName = this.getTagName(); String copyTagName = ((String) strategy.copy(LocatorUtils.property(locator, "tagName", sourceTagName), sourceTagName, (this.tagName!= null))); copy.setTagName(copyTagName); } else { if (tagNameShouldBeCopiedAndSet == Boolean.FALSE) {
nodeTag.setTagName(BLANK_TEXT); nodeTag.setTagValue(ATTRIBUTE_VALUE_1); emrClusterDefinitionConfiguration.getNodeTags().add(nodeTag); nodeTag.setTagName(ATTRIBUTE_NAME_1_MIXED_CASE); nodeTag.setTagValue(BLANK_TEXT); emrClusterDefinitionConfiguration.getNodeTags().add(nodeTag);
nodeTag.setTagName(BLANK_TEXT); nodeTag.setTagValue(ATTRIBUTE_VALUE_1); emrClusterDefinitionConfiguration.getNodeTags().add(nodeTag); nodeTag.setTagName(ATTRIBUTE_NAME_1_MIXED_CASE); nodeTag.setTagValue(BLANK_TEXT); emrClusterDefinitionConfiguration.getNodeTags().add(nodeTag);