Class: Sus::HaveDuration
- Inherits:
-
Object
- Object
- Sus::HaveDuration
- Defined in:
- lib/sus/have_duration.rb
Overview
Represents a predicate that measures the duration of a block execution.
Instance Method Summary collapse
-
#call(assertions, subject) ⇒ Object
Evaluate this predicate against a subject (block).
-
#initialize(predicate) ⇒ HaveDuration
constructor
Initialize a new HaveDuration predicate.
-
#print(output) ⇒ Object
Print a representation of this predicate.
Constructor Details
#initialize(predicate) ⇒ HaveDuration
Initialize a new HaveDuration predicate.
11 12 13 |
# File 'lib/sus/have_duration.rb', line 11 def initialize(predicate) @predicate = predicate end |
Instance Method Details
#call(assertions, subject) ⇒ Object
Evaluate this predicate against a subject (block).
25 26 27 28 29 |
# File 'lib/sus/have_duration.rb', line 25 def call(assertions, subject) assertions.nested(self) do |assertions| Expect.new(assertions, measure(subject)).to(@predicate) end end |
#print(output) ⇒ Object
Print a representation of this predicate.
17 18 19 20 |
# File 'lib/sus/have_duration.rb', line 17 def print(output) output.write("have duration ") @predicate.print(output) end |