Dependency Injection: Vital or Irrelevant?

Class Names are Just Labels

Well, Constants actually.

if we_are_testing?
  Heater = Mocking::Heater
else
  Heater = Hardware::Heater
end

class Warmer
  def initialize
    @heater = Heater.new
    ...
  end
end