Class: FaultInjection::FaultConditionBase
- Inherits:
-
Object
- Object
- FaultInjection::FaultConditionBase
- Defined in:
- lib/fault_injection/fault_condition.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#error_class ⇒ Object
Returns the value of attribute error_class.
-
#limit_times ⇒ Object
Returns the value of attribute limit_times.
-
#message ⇒ Object
Returns the value of attribute message.
-
#probability ⇒ Object
Returns the value of attribute probability.
Instance Method Summary collapse
-
#initialize ⇒ FaultConditionBase
constructor
A new instance of FaultConditionBase.
- #should_raise_on(*args) ⇒ Object
Constructor Details
#initialize ⇒ FaultConditionBase
Returns a new instance of FaultConditionBase.
9 10 11 12 |
# File 'lib/fault_injection/fault_condition.rb', line 9 def initialize @probability ||= 1 @limit_times ||= -1 end |
Instance Attribute Details
#error_class ⇒ Object
Returns the value of attribute error_class.
4 5 6 |
# File 'lib/fault_injection/fault_condition.rb', line 4 def error_class @error_class end |
#limit_times ⇒ Object
Returns the value of attribute limit_times.
7 8 9 |
# File 'lib/fault_injection/fault_condition.rb', line 7 def limit_times @limit_times end |
#message ⇒ Object
Returns the value of attribute message.
5 6 7 |
# File 'lib/fault_injection/fault_condition.rb', line 5 def @message end |
#probability ⇒ Object
Returns the value of attribute probability.
6 7 8 |
# File 'lib/fault_injection/fault_condition.rb', line 6 def probability @probability end |
Instance Method Details
#should_raise_on(*args) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/fault_injection/fault_condition.rb', line 14 def should_raise_on(*args) return false if @limit_times == 0 b = _should_raise_on(*args) if @probability < 1 b = b && rand(0) < @probability end @limit_times -= 1 if b b end |