Sha256: 83df19995c1aad9496be15278ebbd3d206c1d65dcd1359ae9782d40e9ae644db

Contents?: true

Size: 1.15 KB

Versions: 2

Compression:

Stored size: 1.15 KB

Contents

require 'spec_helper'

describe FedoraMigrate::DatastreamMover do
  describe "#post_initialize" do
    specify "a target is required" do
      expect { subject.new }.to raise_error(StandardError)
    end
  end

  describe "#versionable?" do
    let(:versionable_target)     { instance_double("Target", versionable?: true) }
    let(:non_versionable_target) { instance_double("Target", versionable?: false) }

    context "by default" do
      subject { described_class.new("foo", "bar") }
      it { is_expected.not_to be_versionable }
    end
    context "when the datastream is not versionable" do
      subject { described_class.new("source", non_versionable_target) }
      it { is_expected.not_to be_versionable }
    end
    context "when the datastream is versionable" do
      subject { described_class.new("source", versionable_target) }
      it { is_expected.to be_versionable }
      context "but you want to override that" do
        subject do
          mover = described_class.new("source", versionable_target)
          mover.versionable = false
          return mover
        end
        it { is_expected.not_to be_versionable }
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fedora-migrate-0.5.0 spec/unit/datastream_mover_spec.rb
fedora-migrate-0.4.0 spec/unit/datastream_mover_spec.rb