Sha256: a924b3620e17cba890576285c67601b1562f7a85ccc11cbcbb308abd21bdfec4

Contents?: true

Size: 1.21 KB

Versions: 4

Compression:

Stored size: 1.21 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 { FedoraMigrate::DatastreamMover.new("foo","bar") }
      it { is_expected.to_not be_versionable }
    end
    context "when the datastream is not versionable" do
      subject { FedoraMigrate::DatastreamMover.new("source", non_versionable_target) }
      it { is_expected.to_not be_versionable }
    end
    context "when the datastream is versionable" do
      subject { FedoraMigrate::DatastreamMover.new("source", versionable_target) }
      it { is_expected.to be_versionable }
      context "but you want to override that" do
        subject do
          mover = FedoraMigrate::DatastreamMover.new("source", versionable_target)
          mover.versionable = false
          return mover
        end
        it { is_expected.to_not be_versionable }
      end
    end
  
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
fedora-migrate-0.3.0 spec/unit/datastream_mover_spec.rb
fedora-migrate-0.2.0 spec/unit/datastream_mover_spec.rb
fedora-migrate-0.1.0 spec/unit/datastream_mover_spec.rb
fedora-migrate-0.0.1 spec/unit/datastream_mover_spec.rb