Sha256: 17012b7f9816841234d6d0647b16489110eb8248a998b862d2e183b3b14468d8

Contents?: true

Size: 1.25 KB

Versions: 74

Compression:

Stored size: 1.25 KB

Contents

describe AmaLayout::BreadcrumbBuilder do
  let(:view_context) { ActionView::Base.new }
  let(:foo_crumb) { BreadcrumbsOnRails::Breadcrumbs::Element.new('Foo', '/foo') }
  let(:bar_crumb) { BreadcrumbsOnRails::Breadcrumbs::Element.new('Bar', '/foo/bar') }
  let(:crumbs) { [foo_crumb, bar_crumb] }

  describe '#render' do
    let(:builder) { AmaLayout::BreadcrumbBuilder.new(view_context, crumbs) }

    context 'no separator specified' do
      it 'returns the breadcrumb HTML without any separator' do
        expect(builder.render).to eq('<li><a href="/foo">Foo</a></li><li><a href="/foo/bar">Bar</a></li>')
      end
    end

    context 'with a separator of " > "' do
      let(:builder) { AmaLayout::BreadcrumbBuilder.new(view_context, crumbs, separator: ' > ') }

      it 'returns the breadcrumb HTML with the proper separator' do
        expect(builder.render).to eq('<li><a href="/foo">Foo</a></li> > <li><a href="/foo/bar">Bar</a></li>')
      end
    end

    context 'with a disabled element' do
      let(:bar_crumb) { BreadcrumbsOnRails::Breadcrumbs::Element.new('Bar', '/foo/bar', disabled: true) }

      it 'adds the appropriate disabled attributes to the element' do
        expect(builder.render).to match /breadcrumbs__link--disabled/
      end
    end
  end
end

Version data entries

74 entries across 74 versions & 1 rubygems

Version Path
ama_layout-11.5.1 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-11.5.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-11.4.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-11.3.1 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-11.3.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-11.2.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-11.1.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-10.2.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-10.1.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-10.0.1 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.5.3 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.5.2 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.5.1 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.5.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.4.1 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.4.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.3.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.2.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.1.0 spec/ama_layout/breadcrumb_builder_spec.rb
ama_layout-9.0.0 spec/ama_layout/breadcrumb_builder_spec.rb