/** * @see LocationService#getLocationsHavingAnyTag(List<QLocationTag;>) */ @Test public void getLocationsHavingAnyTag_shouldReturnEmptyListWhenGivenAnEmptyTagList() { LocationService ls = Context.getLocationService(); Assert.assertEquals(0, ls.getLocationsHavingAnyTag(new ArrayList<>()).size()); }
/** * @see LocationService#getLocationsHavingAnyTag(List<QLocationTag;>) */ @Test public void getLocationsHavingAnyTag_shouldReturnEmptyListWhenNoLocationHasTheGivenTags() { LocationService ls = Context.getLocationService(); Assert.assertEquals(0, ls.getLocationsHavingAnyTag(Collections.singletonList(ls.getLocationTagByName("Retired"))) .size()); }
/** * Get locations that have any of specified set of tags among its child tags. * * @see LocationService#getLocationsHavingAnyTag(List<LocationTag;>) */ @Test public void getLocationsHavingAnyTag_shouldGetLocationsHavingAnyTag() { LocationService ls = Context.getLocationService(); List<LocationTag> list1 = new ArrayList<>(); list1.add(ls.getLocationTag(1)); list1.add(ls.getLocationTag(2)); List<LocationTag> list2 = new ArrayList<>(); list2.add(ls.getLocationTag(3)); list2.add(ls.getLocationTag(4)); List<LocationTag> list3 = new ArrayList<>(); list3.add(ls.getLocationTag(1)); list3.add(ls.getLocationTag(2)); list3.add(ls.getLocationTag(3)); assertEquals(1, ls.getLocationsHavingAnyTag(list1).size()); assertEquals(4, ls.getLocationsHavingAnyTag(list2).size()); assertEquals(3, ls.getLocationsHavingAnyTag(list3).size()); }
public static List<Location> getLocationsByTags(String attributeName, Map<String, String> parameters){ List<Location> locations = null; String locationTags = parameters.get(attributeName); if ( locationTags != null) { List<LocationTag> tags = new ArrayList<LocationTag>(); String[] temp = locationTags.split(","); for (String s : temp) { if (s != null && !s.isEmpty()) { LocationTag tag = getLocationTag(s); if (tag == null) { throw new RuntimeException("Cannot find tag: " + tag); } tags.add(tag); } } locations = new ArrayList<Location>(); locations.addAll(Context.getLocationService().getLocationsHavingAnyTag(tags)); } return locations; } /**
locations.addAll(Context.getLocationService().getLocationsHavingAnyTag(tags));