Sha256: 6dad8142525d7580b9d7b68c951c3a77554116f483d3eeda39bd054a4c439433

Contents?: true

Size: 960 Bytes

Versions: 5

Compression:

Stored size: 960 Bytes

Contents

RSpec.shared_examples "a DDR model" do

  it_behaves_like "a describable object"
  it_behaves_like "a governable object"
  it_behaves_like "a licensable object"
  it_behaves_like "an access controllable object"
  it_behaves_like "an object that has properties"
  it_behaves_like "an object that has a display title"

  describe "events" do
    describe "on deletion with #destroy" do
      before { subject.save(validate: false) }
      it "should create a deletion event" do
        expect { subject.destroy }.to change { Ddr::Events::DeletionEvent.for_object(subject).count }.from(0).to(1)
      end
    end

    describe "last virus check" do
      let!(:fixity_check) { Ddr::Events::FixityCheckEvent.new }
      before { allow(subject).to receive(:last_fixity_check) { fixity_check } }
      its(:last_fixity_check_on) { should eq(fixity_check.event_date_time) }
      its(:last_fixity_check_outcome) { should eq(fixity_check.outcome) }
    end
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ddr-models-1.17.1 spec/support/shared_examples_for_ddr_models.rb
ddr-models-1.17.0 spec/support/shared_examples_for_ddr_models.rb
ddr-models-1.16.2 spec/support/shared_examples_for_ddr_models.rb
ddr-models-1.16.1 spec/support/shared_examples_for_ddr_models.rb
ddr-models-1.16.0 spec/support/shared_examples_for_ddr_models.rb