/** * Creates a Name from a String that is either a sequence of underscore strings or a sequence of * camel strings. The first letter of the String must be lowercase. * * @throws IllegalArgumentException if any of the strings do not follow the camel format or * contain characters that are not underscores. */ public static Name anyLower(String... pieces) { Name name; try { name = Name.from(pieces); } catch (IllegalArgumentException e) { try { name = Name.lowerCamel(pieces); } catch (IllegalArgumentException ex) { String msg = "["; for (String p : pieces) { msg += String.format("\"%s\", ", p); } msg += "]\n"; throw new IllegalArgumentException( "Name: identifiers are not all either lower-underscore or lower-camel: " + msg); } } return name; }
@Test(expected = IllegalArgumentException.class) public void illegalLowerCamel() { Name.lowerCamel("FactoryDecorator"); }
Name.lowerCamel(sanitizedShortName.split(" ")); List<String> apiSpecificPathEnvVars = ImmutableList.of( namer.inittedConstantName( Name.lowerCamel(sanitizedShortName.split(" ")).join("credentials")), namer.inittedConstantName( Name.lowerCamel(sanitizedShortName.split(" ")).join("keyfile"))); List<String> apiSpecificJsonEnvVars = ImmutableList.of( namer.inittedConstantName( Name.lowerCamel(sanitizedShortName.split(" ")).join("credentials").join("json")), namer.inittedConstantName( Name.lowerCamel(sanitizedShortName.split(" ")).join("keyfile").join("json")));
@Test public void testLowerWordAndNumber() { Name name = Name.lowerCamel("dog", "v2"); assertThat(name.toLowerUnderscore()).isEqualTo("dog_v2"); assertThat(name.toUpperUnderscore()).isEqualTo("DOG_V2"); assertThat(name.toLowerCamel()).isEqualTo("dogV2"); assertThat(name.toUpperCamel()).isEqualTo("DogV2"); }
@Test public void testFromLowerCamel() { Name name = Name.lowerCamel("factoryDecorator", "delegateImpl"); assertThat(name.toLowerUnderscore()).isEqualTo("factory_decorator_delegate_impl"); assertThat(name.toUpperUnderscore()).isEqualTo("FACTORY_DECORATOR_DELEGATE_IMPL"); assertThat(name.toLowerCamel()).isEqualTo("factoryDecoratorDelegateImpl"); assertThat(name.toUpperCamel()).isEqualTo("FactoryDecoratorDelegateImpl"); }