Class: Flipper::Adapters::OperationLogger
- Inherits:
-
Object
- Object
- Flipper::Adapters::OperationLogger
- Defined in:
- lib/flipper/adapters/operation_logger.rb
Overview
Public: Adapter that wraps another adapter and stores the operations.
Useful in tests to verify calls and such.
Defined Under Namespace
Classes: Delete, Read, SetAdd, SetDelete, SetMember, Write
Instance Attribute Summary collapse
-
#operations ⇒ Object
readonly
Returns the value of attribute operations.
Instance Method Summary collapse
- #delete(key) ⇒ Object
-
#initialize(adapter) ⇒ OperationLogger
constructor
A new instance of OperationLogger.
- #read(key) ⇒ Object
-
#reset ⇒ Object
Public: Clears operation log.
- #set_add(key, value) ⇒ Object
- #set_delete(key, value) ⇒ Object
- #set_members(key) ⇒ Object
- #write(key, value) ⇒ Object
Constructor Details
#initialize(adapter) ⇒ OperationLogger
Returns a new instance of OperationLogger.
16 17 18 19 |
# File 'lib/flipper/adapters/operation_logger.rb', line 16 def initialize(adapter) @operations = [] @adapter = adapter end |
Instance Attribute Details
#operations ⇒ Object (readonly)
Returns the value of attribute operations.
7 8 9 |
# File 'lib/flipper/adapters/operation_logger.rb', line 7 def operations @operations end |
Instance Method Details
#delete(key) ⇒ Object
31 32 33 34 |
# File 'lib/flipper/adapters/operation_logger.rb', line 31 def delete(key) @operations << Delete.new(key.to_s, nil) @adapter.delete key end |
#read(key) ⇒ Object
21 22 23 24 |
# File 'lib/flipper/adapters/operation_logger.rb', line 21 def read(key) @operations << Read.new(key.to_s) @adapter.read key end |
#reset ⇒ Object
Public: Clears operation log
52 53 54 |
# File 'lib/flipper/adapters/operation_logger.rb', line 52 def reset @operations.clear end |
#set_add(key, value) ⇒ Object
36 37 38 39 |
# File 'lib/flipper/adapters/operation_logger.rb', line 36 def set_add(key, value) @operations << SetAdd.new(key.to_s, value) @adapter.set_add key, value end |
#set_delete(key, value) ⇒ Object
41 42 43 44 |
# File 'lib/flipper/adapters/operation_logger.rb', line 41 def set_delete(key, value) @operations << SetDelete.new(key.to_s, value) @adapter.set_delete key, value end |
#set_members(key) ⇒ Object
46 47 48 49 |
# File 'lib/flipper/adapters/operation_logger.rb', line 46 def set_members(key) @operations << SetMembers.new(key.to_s) @adapter.set_members key end |