Sha256: 774c363370102e63e6ac7e9f152508068483216e382d5c1fec43b80973910c09
Contents?: true
Size: 1.1 KB
Versions: 2
Compression:
Stored size: 1.1 KB
Contents
require 'fragmenter/base' describe Fragmenter::Base do let(:object) { mock('object', id: 1001) } let(:engine_class) { mock('engine_class', new: engine) } let(:engine) { mock('engine') } subject { described_class.new(object, engine_class) } describe '#key' do it 'composes a key from the object class and id value' do subject.key.should match(/[a-z]+-\d+/) end end describe 'engine delegation' do let(:blob) { '0101' } let(:headers) { {} } it 'delegates #store to the storage engine' do engine.should_receive(:store).with(blob, headers) subject.store(blob, headers) end it 'delegates #fragments to the storage engine' do engine.should_receive(:fragments) subject.fragments end end describe '#as_json' do it 'merges the stored meta and fragments' do engine.stub('meta' => { 'content_type' => 'application/octet-stream' }, 'fragments' => ['1', '2']) subject.as_json.tap do |json| json.should have_key('content_type') json.should have_key('fragments') end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fragmenter-0.5.1 | spec/fragmenter/base_spec.rb |
fragmenter-0.5.0 | spec/fragmenter/base_spec.rb |