@Test public void shouldReturnTheSameStringIfTheInputStringContainsJustOneCharRecursive() { String result = reverseString.reverseRecursive("a"); assertEquals("a", result); }
public String reverseRecursive(String input) { validateInput(input); return reverseRecursiveInner(input, input.length() - 1, new StringBuilder()); }
ReverseString { public String reverseRecursive(String input) { validateInput(input); return reverseRecursiveInner(input, input.length() - 1, new StringBuilder()); } }
ReverseString { public String reverseRecursive(String input) { validateInput(input); return reverseRecursiveInner(input, input.length() - 1, new StringBuilder()); }  }
ReverseString { public String reverseRecursive(String input) { validateInput(input); return reverseRecursiveInner(input, input.length() - 1, new StringBuilder()); }  String reverseIterative(String input); String reverseRecursive(String input); }
ReverseString { public String reverseRecursive(String input) { validateInput(input); return reverseRecursiveInner(input, input.length() - 1, new StringBuilder()); }  String reverseIterative(String input); String reverseRecursive(String input);  }