spec/nanoc/base/entities/processing_actions/snapshot_spec.rb in nanoc-4.6.1 vs spec/nanoc/base/entities/processing_actions/snapshot_spec.rb in nanoc-4.6.2
- old
+ new
@@ -1,32 +1,38 @@
describe Nanoc::Int::ProcessingActions::Snapshot do
- let(:action) { described_class.new(:before_layout, '/foo.md') }
+ let(:action) { described_class.new([:before_layout], ['/foo.md']) }
describe '#serialize' do
subject { action.serialize }
- it { is_expected.to eql([:snapshot, :before_layout, true, '/foo.md']) }
+ it { is_expected.to eql([:snapshot, [:before_layout], true, ['/foo.md']]) }
end
describe '#to_s' do
subject { action.to_s }
- it { is_expected.to eql('snapshot :before_layout, path: "/foo.md"') }
+ it { is_expected.to eql('snapshot [:before_layout], paths: ["/foo.md"]') }
end
describe '#inspect' do
subject { action.inspect }
- it { is_expected.to eql('<Nanoc::Int::ProcessingActions::Snapshot :before_layout, true, "/foo.md">') }
+ it { is_expected.to eql('<Nanoc::Int::ProcessingActions::Snapshot [:before_layout], true, ["/foo.md"]>') }
end
- describe '#copy' do
- context 'without path' do
- subject { action.copy }
- its(:snapshot_name) { is_expected.to eql(:before_layout) }
- its(:path) { is_expected.to eql('/foo.md') }
+ describe '#update' do
+ context 'with nothing' do
+ subject { action.update }
+ its(:snapshot_names) { is_expected.to eql([:before_layout]) }
+ its(:paths) { is_expected.to eql(['/foo.md']) }
end
- context 'with path' do
- subject { action.copy(path: '/donkey.md') }
- its(:snapshot_name) { is_expected.to eql(:before_layout) }
- its(:path) { is_expected.to eql('/donkey.md') }
+ context 'with snapshot name' do
+ subject { action.update(snapshot_names: [:zebra]) }
+ its(:snapshot_names) { is_expected.to eql([:before_layout, :zebra]) }
+ its(:paths) { is_expected.to eql(['/foo.md']) }
+ end
+
+ context 'with paths' do
+ subject { action.update(paths: ['/donkey.md', '/giraffe.md']) }
+ its(:snapshot_names) { is_expected.to eql([:before_layout]) }
+ its(:paths) { is_expected.to eql(['/foo.md', '/donkey.md', '/giraffe.md']) }
end
end
end