input: Write a function to generate a list of random numbers within a specified range and of a specified length. The function should use the `random.uniform` function to ensure each number is chosen uniformly from the given range.
  
  def generate_random_numbers(length, min_value, max_value):
      return [random.uniform(min_value, max_value) for _ in range(length)]
  
  assert len(generate_random_numbers(5, 1, 10)) == 5
  assert all(1 <= num <= 10 for num in generate_random_numbers(5, 1, 10))
  assert all(10 <= num <= 20 for num in generate_random_numbers(5, 10, 20))
  assert generate_random_numbers(0, 1, 10) == []
output: import random
  
  def generate_random_numbers(length, min_value, max_value):
      return [random.uniform(min_value, max_value) for _ in range(length)]