Module: Tsuga::Adapter::Memory::Base
- Defined in:
- lib/tsuga/adapter/memory/base.rb
Overview
A memory-backed activerecord pattern implementation. Makes my test fly like crazy.
Defined Under Namespace
Modules: ClassMethods
Classes: Scope
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.included(by) ⇒ Object
10
11
12
13
|
# File 'lib/tsuga/adapter/memory/base.rb', line 10
def self.included(by)
by.send :attr_reader, :id
by.extend ClassMethods
end
|
Instance Method Details
#destroy ⇒ Object
33
34
35
36
37
|
# File 'lib/tsuga/adapter/memory/base.rb', line 33
def destroy
self.class._records.delete(id)
@id = nil
self
end
|
#initialize(*args) ⇒ Object
16
17
18
19
|
# File 'lib/tsuga/adapter/memory/base.rb', line 16
def initialize(*args)
@new_record = false
super(*args)
end
|
#new_record? ⇒ Boolean
22
23
24
|
# File 'lib/tsuga/adapter/memory/base.rb', line 22
def new_record?
@new_record
end
|
#persist! ⇒ Object
26
27
28
29
30
31
|
# File 'lib/tsuga/adapter/memory/base.rb', line 26
def persist!
@id ||= self.class.generate_id
@new_record = false
self.class._records[id] = self.clone
self
end
|