I have a single method `mock_request` that I'm overriding for unit test purposes. For each request I want to execute some code:

```
def mock_request(method, url, params={})
  case "#{method} #{url}"
  when 'post /customers'
    # create customer
  when %r{post /customers/(.*)/items}
    id = $1 # update customer
  when %r{post /customers/(.*)}
    id = $1 # update customer
  else
    throw 'Unrecognized request'
  end
end

```

The problem is that this case statement is getting quite long, and the number of lines for each case is slowly increasing. Also, several models are being handled at once.

What I would like to do is have separate files for each model, and somehow include them for use in this `mock_request` method. Something like this:

```
# handlers/customers.rb
module RequestHandlers
  # post /customers
  # post /customers/(.*)
end

# handlers/items.rb
module RequestHandlers
  # post /customers/(.*)/items
end

# mock_request.rb
class MockServer
  def mock_request(method, url, params={})
    handle_request(method, url)
  end
end

```

However I'm not exactly sure how to implement this. What's the best way to approach this in ruby?