class RSpec::EM::AsyncSteps

def included(klass)

def included(klass)
  klass.__send__(:include, Scheduler)
end

def method_added(method_name)

def method_added(method_name)
  async_method_name = "async_#{method_name}"
  return if instance_methods(false).map { |m| m.to_s }.include?(async_method_name) or
            method_name.to_s =~ /^async_/
  
  module_eval <<-RUBY
    alias :#{async_method_name} :#{method_name}
    def #{method_name}(*args)
      __enqueue__([#{async_method_name.inspect}] + args)
    end
  RUBY
end