Sha256: 1806bb8fd291141c63ef9ea3cf6572036fe92c96953090ce036808affc030891

Contents?: true

Size: 1.1 KB

Versions: 3

Compression:

Stored size: 1.1 KB

Contents

require 'spec_helper'

RSpec.describe Item, type: :model do

  it_behaves_like "a DDR model"
  it_behaves_like "it has an association", :belongs_to, :parent, :is_member_of_collection, "Collection"
  it_behaves_like "it has an association", :has_many, :children, :is_part_of, "Component"
  it_behaves_like "a non-collection model"

  describe "indexing text" do
    let(:children) { FactoryGirl.build_list(:component, 5) }

    let(:text1) { fixture_file_upload('extractedText1.txt', 'text/plain') }
    let(:text2) { fixture_file_upload('extractedText2.txt', 'text/plain') }
    let(:text3) { fixture_file_upload('extractedText3.txt', 'text/plain') }

    before {
      children[0].extractedText.content = text1
      children[0].save
      children[1].extractedText.content = text2
      children[1].save
      children[2].extractedText.content = text3
      children[2].save
      subject.children = children
      subject.save
    }

    it "indexes the combined text of its children" do
      expect(subject.index_fields[Ddr::Index::Fields::ALL_TEXT]).to contain_exactly(text1.read, text2.read, text3.read)
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ddr-models-2.4.10 spec/models/item_spec.rb
ddr-models-2.4.9 spec/models/item_spec.rb
ddr-models-2.4.8 spec/models/item_spec.rb