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
Public.
-
#initialize(adapter) ⇒ OperationLogger
constructor
Public.
-
#read(key) ⇒ Object
Public.
-
#reset ⇒ Object
Public: Clears operation log.
-
#set_add(key, value) ⇒ Object
Public.
-
#set_delete(key, value) ⇒ Object
Public.
-
#set_members(key) ⇒ Object
Public.
-
#write(key, value) ⇒ Object
Public.
Constructor Details
#initialize(adapter) ⇒ OperationLogger
Public
17 18 19 20 |
# File 'lib/flipper/adapters/operation_logger.rb', line 17 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
Public
35 36 37 38 |
# File 'lib/flipper/adapters/operation_logger.rb', line 35 def delete(key) @operations << Delete.new(key.to_s, nil) @adapter.delete key end |
#read(key) ⇒ Object
Public
23 24 25 26 |
# File 'lib/flipper/adapters/operation_logger.rb', line 23 def read(key) @operations << Read.new(key.to_s) @adapter.read key end |
#reset ⇒ Object
Public: Clears operation log
59 60 61 |
# File 'lib/flipper/adapters/operation_logger.rb', line 59 def reset @operations.clear end |
#set_add(key, value) ⇒ Object
Public
41 42 43 44 |
# File 'lib/flipper/adapters/operation_logger.rb', line 41 def set_add(key, value) @operations << SetAdd.new(key.to_s, value) @adapter.set_add key, value end |
#set_delete(key, value) ⇒ Object
Public
47 48 49 50 |
# File 'lib/flipper/adapters/operation_logger.rb', line 47 def set_delete(key, value) @operations << SetDelete.new(key.to_s, value) @adapter.set_delete key, value end |
#set_members(key) ⇒ Object
Public
53 54 55 56 |
# File 'lib/flipper/adapters/operation_logger.rb', line 53 def set_members(key) @operations << SetMembers.new(key.to_s) @adapter.set_members key end |