### Question:
Utils { public static String joinScope(final Set<String> scope) { if (scope == null) { return ""; } final Iterator<String> iterator = scope.iterator(); final StringBuilder sb = new StringBuilder(); if (iterator.hasNext()) { sb.append(iterator.next()); } while (iterator.hasNext()) { sb.append(" ").append(iterator.next()); } return sb.toString(); }  static boolean isEmpty(final String s); static boolean isEmpty(final Collection<?> c); static boolean isEmpty(final Map<?, ?> m); static Set<String> splitResponseType(final String responseType); static Set<String> splitScope(final String scope); static String joinScope(final Set<String> scope); static Set<String> stringToSet(String string); static boolean isOpenIdConnectFragmentErrorType(Set<String> requestedResponseTypes); static boolean isOAuth2FragmentErrorType(Set<String> requestedResponseTypes); static boolean isOpenIdConnectClient(ClientRegistration clientRegistration); static UrlLocation getRequiredUrlLocation(OAuth2Request request, ClientRegistration clientRegistration); static UrlLocation getRequiredUrlLocation(Set<String> responseTypes, ClientRegistration clientRegistration); static List<T> asSortedList(Collection<T> collection,
                                                                         Comparator<? super T> comp);  }### Answer:
@Test public void shouldJoinScopeWhenScopeIsNull() { assertEquals(Utils.joinScope(null), ""); }
@Test public void shouldJoinScopeWhenScopeIsEmpty() { assertEquals(Utils.joinScope(Collections.<String>emptySet()), ""); }
@Test public void shouldJoinScope() { Set<String> scope = new LinkedHashSet<String>(); scope.add("a"); scope.add("b"); scope.add("c"); assertEquals(Utils.joinScope(scope), "a b c"); }