class Quby::Answers::Repos::MemoryRepo
Public Instance Methods
find_completed_after(time, answer_ids)
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 12 def find_completed_after(time, answer_ids) records = storage.values.select do |record| answer_ids.include?(record._id) && record.completed_at.present? && record.completed_at > time end records.map { |record| entity(record) } end
Private Instance Methods
all_records(questionnaire_key)
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 21 def all_records(questionnaire_key) storage.values.select { |record| record.questionnaire_key == questionnaire_key } end
build_record()
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 29 def build_record Record.new(_id: SecureRandom.uuid) end
entity(record)
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 42 def entity(record) entity_class.new(**record.to_h).tap(&:enhance_by_dsl) end
find_record(id)
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 25 def find_record(id) storage[id] end
storage()
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 38 def storage @storage ||= {} end
store_record(record)
click to toggle source
# File lib/quby/answers/repos/memory_repo.rb, line 33 def store_record(record) storage[record[:_id]] = record record.created_at = Time.zone.now end