groupdocs 1.5.5 → 1.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. checksums.yaml +8 -8
  2. data/lib/groupdocs/datasource.rb +66 -1
  3. data/lib/groupdocs/document.rb +21 -31
  4. data/lib/groupdocs/document/annotation.rb +8 -5
  5. data/lib/groupdocs/job.rb +4 -3
  6. data/lib/groupdocs/post.rb +4 -12
  7. data/lib/groupdocs/questionnaire.rb +40 -44
  8. data/lib/groupdocs/signature.rb +47 -30
  9. data/lib/groupdocs/signature/envelope.rb +35 -7
  10. data/lib/groupdocs/signature/field.rb +1 -0
  11. data/lib/groupdocs/signature/field/location.rb +6 -0
  12. data/lib/groupdocs/signature/form.rb +33 -1
  13. data/lib/groupdocs/signature/shared/document_methods.rb +1 -0
  14. data/lib/groupdocs/storage/file.rb +19 -10
  15. data/lib/groupdocs/subscription.rb +3 -10
  16. data/lib/groupdocs/version.rb +1 -1
  17. data/spec/groupdocs/datasource_spec.rb +41 -0
  18. data/spec/groupdocs/document/annotation_spec.rb +38 -6
  19. data/spec/groupdocs/document_spec.rb +258 -25
  20. data/spec/groupdocs/job_spec.rb +52 -0
  21. data/spec/groupdocs/questionnaire_spec.rb +45 -9
  22. data/spec/groupdocs/signature_spec.rb +13 -0
  23. data/spec/groupdocs/storage/file_spec.rb +68 -0
  24. data/spec/groupdocs/subscription_spec.rb +119 -0
  25. data/spec/groupdocs/user_spec.rb +75 -3
  26. data/spec/support/json/annotation_collaborators_add.json +31 -0
  27. data/spec/support/json/annotation_collaborators_clear.json +22 -0
  28. data/spec/support/json/document_html_urls.json +12 -0
  29. data/spec/support/json/document_shared_documents_get.json +2 -1
  30. data/spec/support/json/job_resources_get.json +16 -0
  31. data/spec/support/json/jobs_documents.json +49 -30
  32. data/spec/support/json/subscription_billing_set.json +21 -0
  33. data/spec/support/json/subscription_countries_get.json +93 -0
  34. data/spec/support/json/subscription_get.json +23 -0
  35. data/spec/support/json/subscription_get_plan.json +48 -0
  36. data/spec/support/json/subscription_invoices_get.json +18 -0
  37. data/spec/support/json/subscription_states_get.json +93 -0
  38. data/spec/support/json/subscription_wizard_get.json +8 -0
  39. metadata +13 -2
@@ -1,3 +1,3 @@
1
1
  module GroupDocs
2
- VERSION = '1.5.5'
2
+ VERSION = '1.5.6'
3
3
  end # GroupDocs
@@ -131,6 +131,23 @@ describe GroupDocs::DataSource do
131
131
  end
132
132
  end
133
133
 
134
+ describe '#update_fields!' do
135
+ before(:each) do
136
+ mock_api_server(load_json('datasource_update'))
137
+ end
138
+
139
+ it 'accepts access credentials hash' do
140
+ lambda do
141
+ subject.update_fields!(:client_id => 'client_id', :private_key => 'private_key')
142
+ end.should_not raise_error(ArgumentError)
143
+ end
144
+
145
+ it 'uses hashed version of self as request body' do
146
+ subject.should_receive(:to_hash)
147
+ subject.add!
148
+ end
149
+ end
150
+
134
151
  describe '#remove!' do
135
152
  before(:each) do
136
153
  mock_api_server(load_json('datasource_remove'))
@@ -142,4 +159,28 @@ describe GroupDocs::DataSource do
142
159
  end.should_not raise_error(ArgumentError)
143
160
  end
144
161
  end
162
+
163
+ describe '#add_datasource!' do
164
+ before(:each) do
165
+ mock_api_server(load_json('datasource_update'))
166
+ end
167
+
168
+ it 'accepts access credentials hash' do
169
+ lambda do
170
+ subject.add_datasource!(job, file_id, datasource, :client_id => 'client_id', :private_key => 'private_key')
171
+ end.should_not raise_error(ArgumentError)
172
+ end
173
+ end
174
+
175
+ describe '#add_datasource_fields!' do
176
+ before(:each) do
177
+ mock_api_server(load_json('datasource_update'))
178
+ end
179
+
180
+ it 'accepts access credentials hash' do
181
+ lambda do
182
+ subject.add_datasource_fields!(job, file_id, datasource, :client_id => 'client_id', :private_key => 'private_key')
183
+ end.should_not raise_error(ArgumentError)
184
+ end
185
+ end
145
186
  end
@@ -144,18 +144,14 @@ describe GroupDocs::Document::Annotation do
144
144
 
145
145
  it 'accepts access credentials hash' do
146
146
  lambda do
147
- subject.create!(:client_id => 'client_id', :private_key => 'private_key')
147
+ subject.create!('info', :client_id => 'client_id', :private_key => 'private_key')
148
148
  end.should_not raise_error(ArgumentError)
149
149
  end
150
150
 
151
- it 'uses hashed version of self as request body' do
152
- subject.should_receive(:to_hash).and_return({})
153
- subject.create!
154
- end
155
151
 
156
152
  it 'updated self with response values' do
157
153
  lambda do
158
- subject.create!
154
+ subject.create!('info')
159
155
  end.should change {
160
156
  subject.id
161
157
  subject.guid
@@ -228,6 +224,42 @@ describe GroupDocs::Document::Annotation do
228
224
  end
229
225
  end
230
226
 
227
+ describe '#resize!' do
228
+ before(:each) do
229
+ mock_api_server('{ "status": "Ok", "result": {}}')
230
+ end
231
+
232
+ it 'accepts access credentials hash' do
233
+ lambda do
234
+ subject.resize!(10, 10, :client_id => 'client_id', :private_key => 'private_key')
235
+ end.should_not raise_error(ArgumentError)
236
+ end
237
+ end
238
+
239
+ describe '#text_info!' do
240
+ before(:each) do
241
+ mock_api_server('{ "status": "Ok", "result": {}}')
242
+ end
243
+
244
+ it 'accepts access credentials hash' do
245
+ lambda do
246
+ subject.text_info!(fieldText, fontFamily, fontSize, :client_id => 'client_id', :private_key => 'private_key')
247
+ end.should_not raise_error(ArgumentError)
248
+ end
249
+ end
250
+
251
+ describe '#text_color!' do
252
+ before(:each) do
253
+ mock_api_server('{ "status": "Ok", "result": {}}')
254
+ end
255
+
256
+ it 'accepts access credentials hash' do
257
+ lambda do
258
+ subject.text_color!(font_color :client_id => 'client_id', :private_key => 'private_key')
259
+ end.should_not raise_error(ArgumentError)
260
+ end
261
+ end
262
+
231
263
  describe '#set_access!' do
232
264
  before(:each) do
233
265
  mock_api_server(load_json('annotation_access_set'))
@@ -105,23 +105,9 @@ describe GroupDocs::Document do
105
105
  signatures.each { |signature| described_class.should_receive(:mime_type).with(signature.image_path).once }
106
106
  described_class.sign_documents!(documents, signatures)
107
107
  end
108
-
109
- it 'returns array of GroupDocs::Document.objects' do
110
- signed_documents = described_class.sign_documents!(documents, signatures)
111
- signed_documents.should be_an(Array)
112
- signed_documents.each do |document|
113
- document.should be_a(GroupDocs::Document)
114
- end
115
- end
116
-
117
- it 'calculates file name for each signed document' do
118
- signed_documents = described_class.sign_documents!(documents, signatures)
119
- signed_documents[0].file.name.should == "#{documents[0].file.name}_signed.pdf"
120
- signed_documents[1].file.name.should == "#{documents[1].file.name}_signed.pdf"
121
- end
122
108
  end
123
109
 
124
- describe ',metadata!' do
110
+ describe '.metadata!' do
125
111
  before(:each) do
126
112
  mock_api_server(load_json('document_metadata'))
127
113
  end
@@ -366,10 +352,6 @@ describe GroupDocs::Document do
366
352
  subject.metadata!.last_view.should be_a(GroupDocs::Document::View)
367
353
  end
368
354
 
369
- it 'uses self document in last view object' do
370
- subject.metadata!.last_view.document.should == subject
371
- end
372
-
373
355
  it 'does not set last view if document has never been viewed' do
374
356
  mock_api_server('{ "status": "Ok", "result": { "last_view": null }}')
375
357
  subject.metadata!.last_view.should be_nil
@@ -602,6 +584,37 @@ describe GroupDocs::Document do
602
584
  end
603
585
  end
604
586
 
587
+ describe '#datasource_fields!' do
588
+ before(:each) do
589
+ mock_api_server(load_json('document_datasource'))
590
+ end
591
+
592
+ let(:datasource) do
593
+ GroupDocs::DataSource.new(:id => 1)
594
+ end
595
+
596
+ it 'accepts access credentials hash' do
597
+ lambda do
598
+ subject.datasource_fields!(datasource, {}, :client_id => 'client_id', :private_key => 'private_key')
599
+ end.should_not raise_error(ArgumentError)
600
+ end
601
+
602
+ it 'accepts options hash' do
603
+ lambda do
604
+ subject.datasource_fields!(datasource, :new_type => :pdf)
605
+ end.should_not raise_error(ArgumentError)
606
+ end
607
+
608
+ it 'raises error if datasource is not GroupDocs::Datasource object' do
609
+ lambda { subject.datasource!('Datasource') }.should raise_error(ArgumentError)
610
+ end
611
+
612
+ it 'returns GroupDocs::Job object' do
613
+ job = subject.datasource!(datasource)
614
+ job.should be_a(GroupDocs::Job)
615
+ end
616
+ end
617
+
605
618
  describe '#annotations!' do
606
619
  before(:each) do
607
620
  mock_api_server(load_json('annotation_list'))
@@ -654,17 +667,13 @@ describe GroupDocs::Document do
654
667
 
655
668
  it 'accepts access credentials hash' do
656
669
  lambda do
657
- subject.compare!(document, :client_id => 'client_id', :private_key => 'private_key')
670
+ subject.compare!(document, callback, :client_id => 'client_id', :private_key => 'private_key')
658
671
  end.should_not raise_error(ArgumentError)
659
672
  end
660
673
 
661
674
  it 'raises error if document is not GroupDocs::Document object' do
662
675
  lambda { subject.compare!('Document') }.should raise_error(ArgumentError)
663
676
  end
664
-
665
- it 'returns GroupDocs::Job object' do
666
- subject.compare!(document).should be_a(GroupDocs::Job)
667
- end
668
677
  end
669
678
 
670
679
  describe '#changes!' do
@@ -687,6 +696,24 @@ describe GroupDocs::Document do
687
696
  end
688
697
  end
689
698
 
699
+ describe '#update_changes!' do
700
+ before(:each) do
701
+ mock_api_server(load_json('comparison_changes'))
702
+ end
703
+
704
+ it 'accepts access credentials hash' do
705
+ lambda do
706
+ subject.changes!(options, :client_id => 'client_id', :private_key => 'private_key')
707
+ end.should_not raise_error(ArgumentError)
708
+ end
709
+
710
+ it 'accepts options credentials hash' do
711
+ lambda do
712
+ subject.changes!(:id => 1, :type => 'delete', :action => '', :page => {}, :box => {}, :text => '')
713
+ end.should_not raise_error(ArgumentError)
714
+ end
715
+ end
716
+
690
717
 
691
718
  describe '#collaborators!' do
692
719
  before(:each) do
@@ -736,7 +763,7 @@ describe GroupDocs::Document do
736
763
 
737
764
  describe '#add_collaborator!' do
738
765
  before(:each) do
739
- mock_api_server(load_json('annotation_collaborators_get'))
766
+ mock_api_server(load_json('annotation_collaborators_add'))
740
767
  end
741
768
 
742
769
  let!(:collaborator) { GroupDocs::User.new }
@@ -757,6 +784,18 @@ describe GroupDocs::Document do
757
784
  end
758
785
  end
759
786
 
787
+ describe '#remove_collaborators!' do
788
+ before(:each) do
789
+ mock_api_server(load_json('annotation_collaborators_clear'))
790
+ end
791
+
792
+ it 'accepts access credentials hash' do
793
+ lambda do
794
+ subject.remove_collaborators!(reviewerId, :client_id => 'client_id', :private_key => 'private_key')
795
+ end.should_not raise_error(ArgumentError)
796
+ end
797
+ end
798
+
760
799
  describe '#set_reviewers!' do
761
800
  before(:each) do
762
801
  mock_api_server('{ "status": "Ok", "result": {}}')
@@ -860,4 +899,198 @@ describe GroupDocs::Document do
860
899
  subject.respond_to?(:unknown).should be_false
861
900
  end
862
901
  end
902
+
903
+ describe '#password_set!' do
904
+ before(:each) do
905
+ mock_api_server(load_json('document_password_set'))
906
+ end
907
+
908
+ it 'accepts access credentials hash' do
909
+ lambda do
910
+ subject.password_set(%w(password), :client_id => 'client_id', :private_key => 'private_key')
911
+ end.should_not raise_error(ArgumentError)
912
+ end
913
+ end
914
+
915
+ describe '#user_status_set!' do
916
+ before(:each) do
917
+ mock_api_server(load_json('document_user_status_set'))
918
+ end
919
+
920
+ it 'accepts access credentials hash' do
921
+ lambda do
922
+ subject.user_status_set(%w(status), :client_id => 'client_id', :private_key => 'private_key')
923
+ end.should_not raise_error(ArgumentError)
924
+ end
925
+ end
926
+
927
+ describe '#shared_documents!' do
928
+ before(:each) do
929
+ mock_api_server(load_json('document_shared_documents_get'))
930
+ end
931
+
932
+ it 'accepts access credentials hash' do
933
+ lambda do
934
+ subject.shared_documents( :client_id => 'client_id', :private_key => 'private_key')
935
+ end.should_not raise_error(ArgumentError)
936
+ end
937
+ end
938
+
939
+ describe '#page_image!' do
940
+ before(:each) do
941
+ mock_api_server(File.read('spec/support/files/resume.pdf'))
942
+ subject.stub(:name => 'resume.pdf')
943
+ end
944
+
945
+ let(:path) { Dir.tmpdir }
946
+
947
+ it 'accepts access credentials hash' do
948
+ lambda do
949
+ subject.shared_documents( :client_id => 'client_id', :private_key => 'private_key')
950
+ end.should_not raise_error(ArgumentError)
951
+ end
952
+ end
953
+
954
+ describe '#page_fixed_html!' do
955
+ before(:each) do
956
+ mock_api_server(File.read('spec/support/files/resume.pdf'))
957
+ subject.stub(:name => 'resume.pdf')
958
+ end
959
+
960
+ let(:path) { Dir.tmpdir }
961
+
962
+ it 'accepts access credentials hash' do
963
+ lambda do
964
+ subject.shared_documents( :client_id => 'client_id', :private_key => 'private_key')
965
+ end.should_not raise_error(ArgumentError)
966
+ end
967
+ end
968
+
969
+ describe '#page_html!' do
970
+ before(:each) do
971
+ mock_api_server(File.read('spec/support/files/resume.pdf'))
972
+ subject.stub(:name => 'resume.pdf')
973
+ end
974
+
975
+ let(:path) { Dir.tmpdir }
976
+
977
+ it 'accepts access credentials hash' do
978
+ lambda do
979
+ subject.shared_documents( :client_id => 'client_id', :private_key => 'private_key')
980
+ end.should_not raise_error(ArgumentError)
981
+ end
982
+ end
983
+
984
+ describe '#editlock!' do
985
+ before(:each) do
986
+ mock_api_server(load_json('document_edit_lock_get'))
987
+ end
988
+
989
+ it 'accepts access credentials hash' do
990
+ lambda do
991
+ subject.editlock!( :client_id => 'client_id', :private_key => 'private_key')
992
+ end.should_not raise_error(ArgumentError)
993
+ end
994
+ end
995
+
996
+ describe 'editlock_clear!' do
997
+ before(:each) do
998
+ mock_api_server(load_json('document_edit_lock_get'))
999
+ end
1000
+
1001
+ it 'accepts access credentials hash' do
1002
+ lambda do
1003
+ subject.editlock_clear!( {}, :client_id => 'client_id', :private_key => 'private_key')
1004
+ end.should_not raise_error(ArgumentError)
1005
+ end
1006
+
1007
+ it 'accepts options credentials hash' do
1008
+ lambda do
1009
+ subject.editlock_clear!(:lockId => 'client_id')
1010
+ end.should_not raise_error(ArgumentError)
1011
+ end
1012
+ end
1013
+
1014
+ describe '#tags!' do
1015
+ before(:each) do
1016
+ mock_api_server(load_json('document_edit_lock_get'))
1017
+ end
1018
+
1019
+ it 'accepts access credentials hash' do
1020
+ lambda do
1021
+ subject.tags!( :client_id => 'client_id', :private_key => 'private_key')
1022
+ end.should_not raise_error(ArgumentError)
1023
+ end
1024
+ end
1025
+
1026
+ describe '#tags_clear!' do
1027
+ before(:each) do
1028
+ mock_api_server(load_json('document_editlock_remove'))
1029
+ end
1030
+
1031
+ it 'accepts access credentials hash' do
1032
+ lambda do
1033
+ subject.tags_clear!( :client_id => 'client_id', :private_key => 'private_key')
1034
+ end.should_not raise_error(ArgumentError)
1035
+ end
1036
+ end
1037
+
1038
+ describe '#tags_set!' do
1039
+ before(:each) do
1040
+ mock_api_server(load_json('document_edit_lock_get'))
1041
+ end
1042
+
1043
+ it 'accepts access credentials hash' do
1044
+ lambda do
1045
+ subject.tags_set!( :client_id => 'client_id', :private_key => 'private_key')
1046
+ end.should_not raise_error(ArgumentError)
1047
+ end
1048
+ end
1049
+
1050
+ describe '#content!' do
1051
+ before(:each) do
1052
+ mock_api_server('{ "status": "Ok", "result": {}}')
1053
+ end
1054
+
1055
+ it 'accepts access credentials hash' do
1056
+ lambda do
1057
+ subject.tags_set!(content_type, :client_id => 'client_id', :private_key => 'private_key')
1058
+ end.should_not raise_error(ArgumentError)
1059
+ end
1060
+ end
1061
+
1062
+ describe 'page_html_urls!' do
1063
+ before(:each) do
1064
+ mock_api_server(load_json('document_html_urls'))
1065
+ end
1066
+
1067
+ it 'accepts access credentials hash' do
1068
+ lambda do
1069
+ subject.editlock_clear!( {}, :client_id => 'client_id', :private_key => 'private_key')
1070
+ end.should_not raise_error(ArgumentError)
1071
+ end
1072
+
1073
+ it 'accepts options credentials hash' do
1074
+ lambda do
1075
+ subject.editlock_clear!(:first_page => 0, :page_count => 1)
1076
+ end.should_not raise_error(ArgumentError)
1077
+ end
1078
+ end
1079
+
1080
+ describe '#download!' do
1081
+ before(:each) do
1082
+ mock_api_server(File.read('spec/support/files/resume.pdf'))
1083
+ subject.stub(:name => 'resume.pdf')
1084
+ end
1085
+
1086
+ let(:path) { Dir.tmpdir }
1087
+
1088
+ it 'accepts access credentials hash' do
1089
+ lambda do
1090
+ subject.shared_documents( :client_id => 'client_id', :private_key => 'private_key')
1091
+ end.should_not raise_error(ArgumentError)
1092
+ end
1093
+ end
1094
+
1095
+
863
1096
  end