Sha256: 83c236acf721cb6492f556d064dd9a8546bb32cfd34db08b0e041bc6e5774734
Contents?: true
Size: 1.16 KB
Versions: 3
Compression:
Stored size: 1.16 KB
Contents
RSpec.shared_context('repo') do let(:repo) { repo_class.new(rom) } let(:repo_class) do Class.new(ROM::Repository) do relations :users, :tasks, :tags def find_users(criteria) users.find(criteria) end def all_users users.all end def tasks_for_users(users) tasks.for_users(users) end def task_with_user tasks.find(id: 2).combine_parents(one: users) end def task_with_owner tasks.find(id: 2).combine_parents(one: { owner: users }) end def users_with_tasks users.combine_children(many: { all_tasks: tasks.for_users }) end def users_with_tasks_and_tags users.combine_children(many: { all_tasks: tasks_with_tags(tasks.for_users) }) end def tasks_with_tags(tasks = self.tasks) tasks.combine_children(many: tags) end def users_with_task users.combine_children(one: tasks) end def users_with_task_by_title(title) users.combine_children(one: tasks.find(title: title)) end def tag_with_wrapped_task tags.wrap_parent(task: tasks) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rom-repository-0.2.0 | spec/shared/repo.rb |
rom-repository-0.2.0.rc1 | spec/shared/repo.rb |
rom-repository-0.2.0.beta1 | spec/shared/repo.rb |