Skip to content

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
module Bench
module Matchers
class RunsIn #:nodoc:
def initialize(receiver=nil, &block)
@receiver = receiver
# Placeholder
end
def matches?(event_proc)
raise_block_syntax_error if block_given?
before = Time.now
event_proc.call
after = Time.now
return (after - before) < @receiver
end
end
def run_in(receiver=nil, &block)
Matchers::RunsIn.new(receiver, &block)
end
end
end
describe "Bench" do
it "runs in under 2.5 seconds" do
lambda { sleep(1) }.should run_in(2.5.seconds)
end
it "fails to run in under 2.5 seconds" do
lambda { sleep(2.6) }.should_not run_in(2.5.seconds)
end
end
Spec::Runner.configure do |config|
config.include(Bench::Matchers)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.