/** * Gets a list of keys for all existing business object definition tags that are associated with the specified tag. * * @param tagTypeCode the tag type reference code * @param tagCode the tag reference code * * @return the list of business object definition tag keys */ @RequestMapping(value = BUSINESS_OBJECT_DEFINITION_TAGS_URI_PREFIX + "/tagTypes/{tagTypeCode}" + "/tagCodes/{tagCode}", method = RequestMethod.GET) @Secured(SecurityFunctions.FN_BUSINESS_OBJECT_DEFINITION_TAGS_BY_TAG_GET) public BusinessObjectDefinitionTagKeys getBusinessObjectDefinitionTagsByTag(@PathVariable(value = "tagTypeCode") String tagTypeCode, @PathVariable(value = "tagCode") String tagCode) { return businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(tagTypeCode, tagCode)); } }
/** * Gets a list of keys for all existing business object definition tags that are associated with the specified tag. * * @param tagTypeCode the tag type reference code * @param tagCode the tag reference code * * @return the list of business object definition tag keys */ @RequestMapping(value = BUSINESS_OBJECT_DEFINITION_TAGS_URI_PREFIX + "/tagTypes/{tagTypeCode}" + "/tagCodes/{tagCode}", method = RequestMethod.GET) @Secured(SecurityFunctions.FN_BUSINESS_OBJECT_DEFINITION_TAGS_BY_TAG_GET) public BusinessObjectDefinitionTagKeys getBusinessObjectDefinitionTagsByTag(@PathVariable(value = "tagTypeCode") String tagTypeCode, @PathVariable(value = "tagCode") String tagCode) { return businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(tagTypeCode, tagCode)); } }
@Test public void testGetBusinessObjectDefinitionTagsByTag() { TagKey tagKey = new TagKey(TAG_TYPE, TAG_CODE); BusinessObjectDefinitionTagKey businessObjectDefinitionTagKey = new BusinessObjectDefinitionTagKey(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new TagKey(TAG_TYPE, TAG_CODE)); BusinessObjectDefinitionTagKeys businessObjectDefinitionTagKeys = new BusinessObjectDefinitionTagKeys(Arrays.asList(businessObjectDefinitionTagKey)); when(businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(tagKey)).thenReturn(businessObjectDefinitionTagKeys); // Get business object definition tags by tag. BusinessObjectDefinitionTagKeys result = businessObjectDefinitionTagRestController.getBusinessObjectDefinitionTagsByTag(TAG_TYPE, TAG_CODE); // Verify the external calls. verify(businessObjectDefinitionTagService).getBusinessObjectDefinitionTagsByTag(tagKey); verifyNoMoreInteractions(businessObjectDefinitionTagService); // Validate the returned object. assertEquals(businessObjectDefinitionTagKeys, result); } }
@Test public void testGetBusinessObjectDefinitionTagsByTagMissingRequiredParameters() { // Try to get business object definition tags by tag when when tag type is not specified. try { businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(BLANK_TEXT, TAG_CODE)); fail(); } catch (IllegalArgumentException e) { assertEquals("A tag type code must be specified.", e.getMessage()); } // Try to get business object definition tags by tag when tag code is not specified. try { businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE, BLANK_TEXT)); fail(); } catch (IllegalArgumentException e) { assertEquals("A tag code must be specified.", e.getMessage()); } }
@Test public void testGetBusinessObjectDefinitionTagsByTagTagNoExists() { // Try to get business object definition tags for a non-existing tag. try { businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE, TAG_CODE)); fail(); } catch (ObjectNotFoundException e) { assertEquals(String.format("Tag with code \"%s\" doesn't exist for tag type \"%s\".", TAG_CODE, TAG_TYPE), e.getMessage()); } }
@Test public void testGetBusinessObjectDefinitionTagsByTagNoBusinessObjectDefinitionTagsExist() { // Create and persist a tag entity. tagDaoTestHelper.createTagEntity(TAG_TYPE, TAG_CODE, TAG_DISPLAY_NAME, TAG_DESCRIPTION); // Get business object definition tags by tag. BusinessObjectDefinitionTagKeys result = businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE, TAG_CODE)); // Validate the returned object. assertNotNull(result); assertTrue(result.getBusinessObjectDefinitionTagKeys().isEmpty()); }
@Test public void testGetBusinessObjectDefinitionTagsByTagUpperCaseParameters() { // Create business object definition keys. List<BusinessObjectDefinitionKey> businessObjectDefinitionKeys = Arrays.asList(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new BusinessObjectDefinitionKey(BDEF_NAMESPACE_2, BDEF_NAME_2)); // Create a tag key. TagKey tagKey = new TagKey(TAG_TYPE, TAG_CODE); // Create and persist business object definition tag entities. for (BusinessObjectDefinitionKey businessObjectDefinitionKey : businessObjectDefinitionKeys) { businessObjectDefinitionTagDaoTestHelper.createBusinessObjectDefinitionTagEntity(businessObjectDefinitionKey, tagKey); } // Get business object definition tags by tag using upper case parameter values. BusinessObjectDefinitionTagKeys result = businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE.toUpperCase(), TAG_CODE.toUpperCase())); // Validate the returned object. assertNotNull(result); assertEquals(Arrays.asList(new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(0), tagKey), new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(1), tagKey)), result.getBusinessObjectDefinitionTagKeys()); }
@Test public void testGetBusinessObjectDefinitionTagsByTagLowerCaseParameters() { // Create business object definition keys. List<BusinessObjectDefinitionKey> businessObjectDefinitionKeys = Arrays.asList(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new BusinessObjectDefinitionKey(BDEF_NAMESPACE_2, BDEF_NAME_2)); // Create a tag key. TagKey tagKey = new TagKey(TAG_TYPE, TAG_CODE); // Create and persist business object definition tag entities. for (BusinessObjectDefinitionKey businessObjectDefinitionKey : businessObjectDefinitionKeys) { businessObjectDefinitionTagDaoTestHelper.createBusinessObjectDefinitionTagEntity(businessObjectDefinitionKey, tagKey); } // Get business object definition tags by tag using lower case parameter values. BusinessObjectDefinitionTagKeys result = businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE.toLowerCase(), TAG_CODE.toLowerCase())); // Validate the returned object. assertNotNull(result); assertEquals(Arrays.asList(new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(0), tagKey), new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(1), tagKey)), result.getBusinessObjectDefinitionTagKeys()); }
@Test public void testGetBusinessObjectDefinitionTagsByTag() { // Create business object definition keys. List<BusinessObjectDefinitionKey> businessObjectDefinitionKeys = Arrays.asList(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new BusinessObjectDefinitionKey(BDEF_NAMESPACE_2, BDEF_NAME_2)); // Create a tag key. TagKey tagKey = new TagKey(TAG_TYPE, TAG_CODE); // Create and persist business object definition tag entities. for (BusinessObjectDefinitionKey businessObjectDefinitionKey : businessObjectDefinitionKeys) { businessObjectDefinitionTagDaoTestHelper.createBusinessObjectDefinitionTagEntity(businessObjectDefinitionKey, tagKey); } // Get business object definition tags by tag. BusinessObjectDefinitionTagKeys result = businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(tagKey); // Validate the returned object. assertNotNull(result); assertEquals(Arrays.asList(new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(0), tagKey), new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(1), tagKey)), result.getBusinessObjectDefinitionTagKeys()); }
@Test public void testGetBusinessObjectDefinitionTagsByTagTrimParameters() { // Create business object definition keys. List<BusinessObjectDefinitionKey> businessObjectDefinitionKeys = Arrays.asList(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new BusinessObjectDefinitionKey(BDEF_NAMESPACE_2, BDEF_NAME_2)); // Create a tag key. TagKey tagKey = new TagKey(TAG_TYPE, TAG_CODE); // Create and persist business object definition tag entities. for (BusinessObjectDefinitionKey businessObjectDefinitionKey : businessObjectDefinitionKeys) { businessObjectDefinitionTagDaoTestHelper.createBusinessObjectDefinitionTagEntity(businessObjectDefinitionKey, tagKey); } // Get business object definition tags by tag using input parameters with leading and trailing empty spaces. BusinessObjectDefinitionTagKeys result = businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(addWhitespace(TAG_TYPE), addWhitespace(TAG_CODE))); // Validate the returned object. assertNotNull(result); assertEquals(Arrays.asList(new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(0), tagKey), new BusinessObjectDefinitionTagKey(businessObjectDefinitionKeys.get(1), tagKey)), result.getBusinessObjectDefinitionTagKeys()); }
new BusinessObjectDefinitionTagKey(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME_2), new TagKey(TAG_TYPE, TAG_CODE_2)), new BusinessObjectDefinitionTagKey(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new TagKey(TAG_TYPE, TAG_CODE)))), businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE, TAG_CODE))); new BusinessObjectDefinitionTagKey(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME_2), new TagKey(TAG_TYPE, TAG_CODE_2)), new BusinessObjectDefinitionTagKey(new BusinessObjectDefinitionKey(BDEF_NAMESPACE, BDEF_NAME), new TagKey(TAG_TYPE, TAG_CODE)))), businessObjectDefinitionTagService.getBusinessObjectDefinitionTagsByTag(new TagKey(TAG_TYPE, TAG_CODE)));