-
Notifications
You must be signed in to change notification settings - Fork 78
/
actor_factory_spec.rb
39 lines (36 loc) · 1.56 KB
/
actor_factory_spec.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
describe Sufia::ActorFactory do
let(:work) { GenericWork.new }
let(:user) { double }
describe '.stack_actors' do
subject { described_class.stack_actors(work) }
it { is_expected.to eq [Sufia::CreateWithRemoteFilesActor,
Sufia::CreateWithFilesActor,
CurationConcerns::Actors::AddToCollectionActor,
CurationConcerns::Actors::AssignRepresentativeActor,
CurationConcerns::Actors::AttachFilesActor,
CurationConcerns::Actors::ApplyOrderActor,
CurationConcerns::Actors::InterpretVisibilityActor,
CurationConcerns::Actors::GenericWorkActor] }
end
describe '.build' do
subject { described_class.build(work, user) }
it "has the correct stack frames" do
expect(subject.more_actors).to eq [
Sufia::CreateWithFilesActor,
CurationConcerns::Actors::AddToCollectionActor,
CurationConcerns::Actors::AssignRepresentativeActor,
CurationConcerns::Actors::AttachFilesActor,
CurationConcerns::Actors::ApplyOrderActor,
CurationConcerns::Actors::InterpretVisibilityActor,
CurationConcerns::Actors::GenericWorkActor
]
expect(subject.first_actor_class).to eq Sufia::CreateWithRemoteFilesActor
end
end
describe 'CurationConcerns::CurationConcern.actor' do
it "calls the Sufia::ActorFactory" do
expect(described_class).to receive(:build)
CurationConcerns::CurationConcern.actor(work, user)
end
end
end