spec/groupdocs/signature_spec.rb in groupdocs-1.4.2 vs spec/groupdocs/signature_spec.rb in groupdocs-1.5.0

- old
+ new

@@ -22,10 +22,36 @@ signature.should be_a(GroupDocs::Signature) end end end + describe '.get_for_recipient!' do + let(:recipient) { GroupDocs::Signature::Recipient.new } + + before(:each) do + mock_api_server(load_json('signatures_get')) + end + + it 'accepts access credentials hash' do + lambda do + described_class.get_for_recipient!(recipient, :client_id => 'client_id', :private_key => 'private_key') + end.should_not raise_error(ArgumentError) + end + + it 'raises error if recipient is not GroupDocs::Signature::Recipient object' do + lambda { described_class.get_for_recipient!('Recipient') }.should raise_error(ArgumentError) + end + + it 'returns array of GroupDocs::Signature objects' do + signatures = described_class.get_for_recipient!(recipient) + signatures.should be_an(Array) + signatures.each do |signature| + signature.should be_a(GroupDocs::Signature) + end + end + end + it { should have_accessor(:id) } it { should have_accessor(:userGuid) } it { should have_accessor(:recipientId) } it { should have_accessor(:name) } it { should have_accessor(:companyName) } @@ -79,17 +105,90 @@ subject.create!('Signature') end.should change(subject, :id) end end + describe '#create_for_recipient!' do + let(:recipient) { GroupDocs::Signature::Recipient.new } + + before(:each) do + mock_api_server(load_json('signature_create')) + end + + it 'accepts access credentials hash' do + lambda do + subject.create_for_recipient!(recipient, 'Signature', :client_id => 'client_id', :private_key => 'private_key') + end.should_not raise_error(ArgumentError) + end + + it 'raises error if recipient is not GroupDocs::Signature::Recipient object' do + lambda { subject.create_for_recipient!('Recipient') }.should raise_error(ArgumentError) + end + + it 'uses hashed version of self as request body' do + subject.should_receive(:to_hash) + subject.create_for_recipient!(recipient, 'Signature') + end + + it 'updates identifier of signature' do + lambda do + subject.create_for_recipient!(recipient, 'Signature') + end.should change(subject, :id) + end + end + describe '#delete!' do before(:each) do mock_api_server('{ "status": "Ok", "result": {}}') end it 'accepts access credentials hash' do lambda do subject.delete!(:client_id => 'client_id', :private_key => 'private_key') end.should_not raise_error(ArgumentError) + end + end + + describe '#signature_data!' do + before(:each) do + mock_api_server('{ "status": "Ok", "result": "Data"}') + end + + it 'accepts access credentials hash' do + lambda do + subject.signature_data!(:client_id => 'client_id', :private_key => 'private_key') + end.should_not raise_error(ArgumentError) + end + + it 'returns data' do + subject.signature_data!.should == 'Data' + end + + it 'updates signature data of signature' do + lambda do + subject.signature_data! + end.should change(subject, :signature_data) + end + end + + describe '#initials_data!' do + before(:each) do + mock_api_server('{ "status": "Ok", "result": "Data"}') + end + + it 'accepts access credentials hash' do + lambda do + subject.initials_data!(:client_id => 'client_id', :private_key => 'private_key') + end.should_not raise_error(ArgumentError) + end + + it 'returns data' do + subject.initials_data!.should == 'Data' + end + + it 'updates initials data of signature' do + lambda do + subject.initials_data! + end.should change(subject, :initials_data) end end end