Sha256: d5ca195c2939b340c740ceed086575666d57f740b8847dd3ee84af49c69c8eb1

Contents?: true

Size: 553 Bytes

Versions: 3

Compression:

Stored size: 553 Bytes

Contents

RSpec.shared_context 'relations' do
  let(:users) { rom.relation(:users) }
  let(:tasks) { rom.relation(:tasks) }
  let(:tags) { rom.relation(:tags) }

  before do
    setup.relation(:users) do
      def all
        select(:id, :name).order(:name, :id)
      end

      def find(criteria)
        where(criteria)
      end
    end

    setup.relation(:tasks) do
      def find(criteria)
        where(criteria)
      end

      def for_users(users)
        where(user_id: users.map { |u| u[:id] })
      end
    end

    setup.relation(:tags)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rom-repository-0.1.0 spec/shared/relations.rb
rom-repository-0.0.2 spec/shared/relations.rb
rom-repository-0.0.1 spec/shared/relations.rb