Skip to content

Instantly share code, notes, and snippets.

@gmgent
Created March 18, 2011 20:51
Show Gist options
  • Save gmgent/876814 to your computer and use it in GitHub Desktop.
Save gmgent/876814 to your computer and use it in GitHub Desktop.
# input is "hello", function should return "olleh"
def reverse_string(input)
begin
if input
modified_input = input.to_s
str_size = (modified_input.size - 1)
end_string = []
modified_input.each_char do |this|
end_string[str_size] = this
str_size -= 1
end
end_string.to_s
else
return nil
end
rescue
false
end
end
# test functions
# each function returns true if the test passes, and false if it fails
def test_reverse_string_function
begin
test_string = "hello"
expected_result = "olleh"
return reverse_string(test_string) == expected_result
rescue
false
end
end
def test_reverse_string_function_empty_string
begin
return reverse_string("") == ""
rescue
false
end
end
def test_reverse_string_function_full_sentence
begin
test_string = "this is a full sentence"
expected_result = "ecnetnes lluf a si siht"
return reverse_string(test_string) == expected_result
rescue
false
end
end
def test_reverse_string_function_handles_integer
begin
return reverse_string(789) == "987"
rescue
false
end
end
def test_reverse_string_function_handles_nil
begin
return reverse_string(nil) == nil
rescue
false
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment