Sha256: 073d15c68099d4a1d46e1c46e119a86ee090bba5138a4eeea91683b1f4d9d960

Contents?: true

Size: 1.52 KB

Versions: 11

Compression:

Stored size: 1.52 KB

Contents

require File.dirname(__FILE__) + '/../spec_helper'

describe Section do

  it "should be valid with minimum values" do
    Section.new(
      :headline => 'References',
      :desired_slug => 'references',
      :content => 'Foo'
    ).should be_valid
  end

  describe 'handles siblings and urls' do

    before :all do
      Publication.destroy_all
      @publication = Publication.new(
        :name         => 'Scholarly Articles',
        :desired_slug => 'articles'
      )
      @article = @publication.managed_contents.create(:headline => 'Article the First', :desired_slug => 'first', :content => '', :kind => 'Multiple Pages')
      @intro = @article.sections.create(:headline => 'Intro', :desired_slug => 'intro', :content => 'Intro', :position => 1)
      @meat = @article.sections.create(:headline => 'Body', :desired_slug => 'body', :content => 'Body', :position => 2)
      @refs = @article.sections.create(:headline => 'References', :desired_slug => 'references', :content => 'References', :position => 3)
    end

    it 'returning its siblings' do
      @intro.siblings.should include @refs
      @intro.siblings.should include @meat
      @intro.siblings.should have(3).items # Has to include self
    end

    it 'returning its next sibling' do
      @intro.next_section.should == @meat
    end

    it 'returns the URL for initial section' do
      @intro.humanize_path.should == '/articles/first/'
    end

    it 'returns the URL for subsequent sections' do
      @meat.humanize_path.should == '/articles/first/body/'
    end

  end

end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
editorial_logic-1.3.3 spec/models/section_spec.rb
editorial_logic-1.3.2 spec/models/section_spec.rb
editorial_logic-1.3.1 spec/models/section_spec.rb
editorial_logic-1.3.0 spec/models/section_spec.rb
editorial_logic-1.1.6 spec/models/section_spec.rb
editorial_logic-1.1.5 spec/models/section_spec.rb
editorial_logic-1.1.4 spec/models/section_spec.rb
editorial_logic-1.1.3 spec/models/section_spec.rb
editorial_logic-1.1.2 spec/models/section_spec.rb
editorial_logic-1.1.1 spec/models/section_spec.rb
editorial_logic-1.1.0 spec/models/section_spec.rb