Sha256: 93eff0446b08cec09f60ea2375caf0d6ba64e209295d05738a8cdf64af3693fc

Contents?: true

Size: 1.94 KB

Versions: 36

Compression:

Stored size: 1.94 KB

Contents

require 'spec_helper'

describe WoopleTheme::Dashboard::EssentialsSectionPresenter do
  describe "#render_remaining" do
    describe "more than one essential remaining" do
      let(:data) { stub_presenter([stub]) }

      subject { WoopleTheme::Dashboard::EssentialsSectionPresenter.new(data) }

      specify { expect { |b| subject.render_remaining(&b) }.to yield_control }
    end

    describe "0 essentials remaining" do
      let(:data) { stub_presenter }

      subject { WoopleTheme::Dashboard::EssentialsSectionPresenter.new(data) }

      specify { expect { |b| subject.render_remaining(&b) }.not_to yield_control }
    end
  end

  describe "#render_completed" do
    describe "more than one completed essential" do
      let(:data) { stub_presenter([],[stub]) }

      subject { WoopleTheme::Dashboard::EssentialsSectionPresenter.new(data) }

      specify { expect { |b| subject.render_completed(&b) }.to yield_control }
    end

    describe "0 completed essentials" do
      let(:data) { stub_presenter }

      subject { WoopleTheme::Dashboard::EssentialsSectionPresenter.new(data) }

      specify { expect { |b| subject.render_completed(&b) }.not_to yield_control }
    end
  end

  describe "#render_exceptions" do
    describe "at least one essential exception" do
      let(:data) { stub_presenter([],[],[stub]) }

      subject { WoopleTheme::Dashboard::EssentialsSectionPresenter.new(data) }

      specify { expect { |b| subject.render_exceptions(&b) }.to yield_control }
    end

    describe "0 essential exceptions" do
      let(:data) { stub_presenter }

      subject { WoopleTheme::Dashboard::EssentialsSectionPresenter.new(data) }

      specify { expect { |b| subject.render_exceptions(&b) }.not_to yield_control }
    end
  end

  private

  def stub_presenter(remaining=[], completed=[], exceptions=[])
    stub({title:'title', enabled?: true, essentials_remaining: remaining, essentials_completed: completed, essentials_exceptions: exceptions})
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
woople-theme-0.10.0 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.9.0 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.19 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.18 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.17 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.16 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.15 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.14 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.13 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.12 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.11 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.10 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.9 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.8 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.7 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.6 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.5 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.4 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.3 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb
woople-theme-0.8.2 spec/presenters/woople_theme/dashboard/essentials_section_presenter_spec.rb