Sha256: d7aad4516fce3ecd4eb8fe6266a7412f97d1893ca79f8c8a629a52b290361ea8

Contents?: true

Size: 916 Bytes

Versions: 2

Compression:

Stored size: 916 Bytes

Contents

require 'spec_helper'


describe Pose::Jobs::ReindexAll do
  let(:klass) { PosableOne }
  subject { described_class.new(klass) }

  describe "#initialize" do
    its(:klass) { should == PosableOne }

    context "string given" do
      let(:klass) { 'PosableOne' }
      its(:klass) { should == PosableOne }
    end
  end

  describe "#perform" do
    let(:posable_one_1) { create(:posable_one, text: '1') }
    let(:posable_one_2) { create(:posable_one, text: '1 2') }

    context "records were updated without running callbacks" do
      before do
        PosableOne.where(id: posable_one_1.id).update_all(text: '1 2')
        PosableOne.where(id: posable_one_2.id).update_all(text: '1')
      end

      it { expect { subject.perform }.to change{ posable_one_1.pose_words.count }.from(1).to(2) }
      it { expect { subject.perform }.to change{ posable_one_2.pose_words.count }.from(2).to(1) }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pose-3.2.0 spec/lib/pose/jobs/reindex_all_spec.rb
pose-3.1.1 spec/lib/pose/jobs/reindex_all_spec.rb