spec/integrations/document_spec.rb in onfido-0.8.4 vs spec/integrations/document_spec.rb in onfido-0.9.0

- old
+ new

@@ -2,28 +2,39 @@ describe Onfido::Document do subject(:document) { described_class.new } describe '#create' do - after do - file.close - file.unlink - end - - let(:file) { Tempfile.new(['passport', '.jpg']) } - before { allow(document).to receive(:open).and_return(:file) } let(:params) do { type: 'passport', side: 'back', file: file } end let(:applicant_id) { '1030303-123123-123123' } - it 'creates a new document' do - response = document.create('foobar', params) - expect(response['id']).not_to be_nil + context 'with a File-like object to upload' do + let(:file) { Tempfile.new(['passport', '.jpg']) } + + after do + file.close + file.unlink + end + + it 'creates a new document' do + response = document.create('foobar', params) + expect(response['id']).not_to be_nil + end + end + + context 'passing in a non-File-like file to upload' do + let(:file) { 'https://onfido.com/images/logo.png' } + + it 'raises an ArgumentError' do + expect { document.create('foobar', params) }. + to raise_error(ArgumentError, /must be a `File`-like object/) + end end end describe '#find' do let(:applicant_id) { '1030303-123123-123123' }