class RandomWords::Generator

def generate_combined_sentence(length = nil)

Returns:
  • (String) - A randomly generated sentence

Parameters:
  • length (Symbol) -- The desired length of the sentence, :short, :medium, :long, or :very_long
def generate_combined_sentence(length = nil)
  length ||= define_length(@sentence_length)
  sentence = generate_sentence
  return sentence.capitalize.compress.terminate if sentence.length > length
  while sentence.length < length
    # Generate a random number of sentences to combine
    new_sentence = generate_sentence(length / 2)
    # Combine the sentences with random conjunctions
    sentence = "#{sentence.strip.no_term}, #{random_conjunction} #{new_sentence}"
  end
  sentence.capitalize.compress.terminate
end