As you could probably (hopefully) tell from the bad grammar in the pull request description, I was working on this pretty late and was a bit too drained to think of a proper name. Some initial suggestions:

* `message_must_be_string_or_proc`
* `unusable_message_warning`

Does the warning message need to live in its own method at all? This could just as easily be something like:

```
def self.check_message(msg)
  unless msg.nil? || msg.respond_to?(:to_str) || msg.respond_to?(:call)
    ::Kernel.warn [
      "WARNING: ignoring the provided expectation message argument (",
      msg.inspect,
      ") since it is not a string or a proc."
    ].join
  end
end
```