Sha256: 1c1a49f203bcb696c74f6a60cc9502332fc42faf858ebe5dbe7e2512df23b31e

Contents?: true

Size: 1.39 KB

Versions: 1

Compression:

Stored size: 1.39 KB

Contents

require 'spec_helper'
require 'rom/setup/auto_registration'

RSpec.describe ROM::Setup, '#auto_registration' do
  let(:setup) { ROM::Setup.new }

  context 'with namespace turned on' do
    before do
      setup.auto_registration(SPEC_ROOT.join('fixtures/lib/persistence').to_s)
    end

    describe '#relations' do
      it 'loads files and returns constants' do
        expect(setup.relation_classes).to eql([Persistence::Relations::Users])
      end
    end

    describe '#commands' do
      it 'loads files and returns constants' do
        expect(setup.command_classes).to eql([Persistence::Commands::CreateUser])
      end
    end

    describe '#mappers' do
      it 'loads files and returns constants' do
        expect(setup.mapper_classes).to eql([Persistence::Mappers::UserList])
      end
    end
  end

  context 'with namespace turned off' do
    before do
      setup.auto_registration(SPEC_ROOT.join('fixtures/app'), namespace: false)
    end

    describe '#relations' do
      it 'loads files and returns constants' do
        expect(setup.relation_classes).to eql([Users])
      end
    end

    describe '#commands' do
      it 'loads files and returns constants' do
        expect(setup.command_classes).to eql([CreateUser])
      end
    end

    describe '#mappers' do
      it 'loads files and returns constants' do
        expect(setup.mapper_classes).to eql([UserList])
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rom-2.0.0 spec/unit/rom/auto_registration_spec.rb