hellosign-ruby-sdk 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -0
- data/.rspec +2 -0
- data/.travis.yml +15 -0
- data/Gemfile +13 -0
- data/Guardfile +14 -0
- data/LICENSE.txt +22 -0
- data/README.md +58 -0
- data/Rakefile +16 -0
- data/hellosign-ruby-sdk.gemspec +27 -0
- data/lib/hello_sign.rb +32 -0
- data/lib/hello_sign/api.rb +7 -0
- data/lib/hello_sign/api/account.rb +69 -0
- data/lib/hello_sign/api/embedded.rb +27 -0
- data/lib/hello_sign/api/oauth.rb +63 -0
- data/lib/hello_sign/api/signature_request.rb +286 -0
- data/lib/hello_sign/api/team.rb +88 -0
- data/lib/hello_sign/api/template.rb +77 -0
- data/lib/hello_sign/api/unclaimed_draft.rb +127 -0
- data/lib/hello_sign/client.rb +211 -0
- data/lib/hello_sign/configuration.rb +56 -0
- data/lib/hello_sign/error.rb +48 -0
- data/lib/hello_sign/resource.rb +8 -0
- data/lib/hello_sign/resource/account.rb +24 -0
- data/lib/hello_sign/resource/base_resource.rb +60 -0
- data/lib/hello_sign/resource/embedded.rb +24 -0
- data/lib/hello_sign/resource/resource_array.rb +33 -0
- data/lib/hello_sign/resource/signature_request.rb +25 -0
- data/lib/hello_sign/resource/team.rb +24 -0
- data/lib/hello_sign/resource/template.rb +25 -0
- data/lib/hello_sign/resource/unclaimed_draft.rb +25 -0
- data/lib/hello_sign/version.rb +3 -0
- data/spec/fixtures/account.json +1 -0
- data/spec/fixtures/embedded.json +6 -0
- data/spec/fixtures/error.json +6 -0
- data/spec/fixtures/file.json +0 -0
- data/spec/fixtures/signature_request.json +2 -0
- data/spec/fixtures/signature_requests.json +14 -0
- data/spec/fixtures/team.json +19 -0
- data/spec/fixtures/template.json +1 -0
- data/spec/fixtures/templates.json +11 -0
- data/spec/fixtures/token.json +14 -0
- data/spec/fixtures/unclaimed_draft.json +6 -0
- data/spec/hello_sign/api/account_spec.rb +36 -0
- data/spec/hello_sign/api/embedded_spec.rb +19 -0
- data/spec/hello_sign/api/oauth_spec.rb +28 -0
- data/spec/hello_sign/api/signature_request_spec.rb +126 -0
- data/spec/hello_sign/api/team_spec.rb +94 -0
- data/spec/hello_sign/api/template_spec.rb +67 -0
- data/spec/hello_sign/api/unclaimed_draft_spec.rb +35 -0
- data/spec/hello_sign/client_spec.rb +132 -0
- data/spec/hello_sign/resource/base_resource_spec.rb +50 -0
- data/spec/hello_sign_spec.rb +35 -0
- data/spec/spec_helper.rb +78 -0
- metadata +216 -0
@@ -0,0 +1,14 @@
|
|
1
|
+
{
|
2
|
+
"account": {
|
3
|
+
"account_id": "b4680b45053c7601ca1eee3b126eca6b2b0a0219",
|
4
|
+
"email_address": "jill@example.com",
|
5
|
+
"callback_url": null,
|
6
|
+
"role_code": null
|
7
|
+
},
|
8
|
+
"oauth_data": {
|
9
|
+
"access_token": "NWNiOTMxOGFkOGVjMDhhNTAxZN2NkNjgxMjMwOWJiYTEzZTBmZGUzMjMThhMzYyMzc=",
|
10
|
+
"token_type": "Bearer",
|
11
|
+
"refresh_token": "hNTI2MTFmM2VmZDQxZTZjOWRmZmFjZmVmMGMyNGFjMzI2MGI5YzgzNmE3",
|
12
|
+
"expires_in": 86400
|
13
|
+
}
|
14
|
+
}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"unclaimed_draft": {
|
3
|
+
"claim_url": "https:\/\/www.hellosign.com\/send\/resendDocs?root_snapshot_guids[]=7f967b7d06e154394eab693febedf61e8ebe49eb&snapshot_access_guids[]=fb848631&root_snapshot_guids[]=7aedaf31e12edf9f2672a0b2ddf028aca670e101&snapshot_access_guids[]=f398ef87",
|
4
|
+
"signing_redirect_url" : null
|
5
|
+
}
|
6
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::Account do
|
4
|
+
describe "#get_account" do
|
5
|
+
before do
|
6
|
+
stub_get("/account", 'account')
|
7
|
+
@account = HelloSign.get_account
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should get the correct resource" do
|
11
|
+
expect(a_get("/account")).to have_been_made
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should return current user account" do
|
15
|
+
expect(@account).to be_an HelloSign::Resource::Account
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
describe "#create_account" do
|
22
|
+
before do
|
23
|
+
stub_post("/account/create", "account")
|
24
|
+
@body = {:email_address => "test@example.com", :password => "secret"}
|
25
|
+
@account = HelloSign.create_account @body
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should get the correct resource" do
|
29
|
+
expect(a_post("/account/create")).to have_been_made
|
30
|
+
end
|
31
|
+
|
32
|
+
it "should return information about a created account" do
|
33
|
+
expect(@account.email_address).to eql("test@example.com")
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::Embedded do
|
4
|
+
describe "#get_embedded_sign_url" do
|
5
|
+
let(:signature_id){'50e3542f738adfa7ddd4cbd4c00d2a8ab6e4194b'}
|
6
|
+
before do
|
7
|
+
stub_get("/embedded/sign_url/#{signature_id}", 'embedded')
|
8
|
+
@embedded = HelloSign.get_embedded_sign_url :signature_id => signature_id
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should get the correct resource" do
|
12
|
+
expect(a_get("/embedded/sign_url/#{signature_id}")).to have_been_made
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should return a UnclaimedDraft" do
|
16
|
+
expect(@embedded).to be_an HelloSign::Resource::Embedded
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::Account do
|
4
|
+
|
5
|
+
describe "#get_oauth_token" do
|
6
|
+
context "when successful request" do
|
7
|
+
before do
|
8
|
+
stub_post_oauth("/oauth/token", "token")
|
9
|
+
@oauth_info = HelloSign.get_oauth_token :state => 'state', :code => 'code'
|
10
|
+
end
|
11
|
+
|
12
|
+
it "should get the correct resource" do
|
13
|
+
expect(a_post_oauth("/oauth/token")).to have_been_made
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
describe "#refresh_oauth_token" do
|
19
|
+
before do
|
20
|
+
stub_post_oauth("/oauth/token", "token")
|
21
|
+
@oauth_info = HelloSign.refresh_oauth_token 'oauth_token'
|
22
|
+
end
|
23
|
+
|
24
|
+
it "should get the correct resource" do
|
25
|
+
expect(a_post_oauth("/oauth/token")).to have_been_made
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,126 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::SignatureRequest do
|
4
|
+
describe "#get_signature_request" do
|
5
|
+
before do
|
6
|
+
stub_get("/signature_request/1", 'signature_request')
|
7
|
+
@signature_request = HelloSign.get_signature_request :signature_request_id => 1
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should get the correct resource" do
|
11
|
+
expect(a_get("/signature_request/1")).to have_been_made
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should return a SignatureRequest" do
|
15
|
+
expect(@signature_request).to be_an HelloSign::Resource::SignatureRequest
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "#get_signature_requests" do
|
20
|
+
before do
|
21
|
+
stub_get("/signature_request/list", 'signature_requests')
|
22
|
+
@signature_requests = HelloSign.get_signature_requests({})
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should get the correct resource" do
|
26
|
+
expect(a_get("/signature_request/list")).to have_been_made
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should return a SignatureRequestArray" do
|
30
|
+
expect(@signature_requests).to be_an HelloSign::Resource::ResourceArray
|
31
|
+
end
|
32
|
+
|
33
|
+
it "each of Array is an SignatureRequest" do
|
34
|
+
expect(@signature_requests[0]).to be_an HelloSign::Resource::SignatureRequest
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
describe "#send_signature_request" do
|
39
|
+
before do
|
40
|
+
stub_post("/signature_request/send", 'signature_request')
|
41
|
+
@signature_request = HelloSign.send_signature_request(
|
42
|
+
:files_url => ["http://hellosign.com/test.pdf"],
|
43
|
+
:signers => ["sss"]
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
it "should get the correct resource" do
|
48
|
+
expect(a_post("/signature_request/send")).to have_been_made
|
49
|
+
end
|
50
|
+
|
51
|
+
it "should return a SignatureRequest" do
|
52
|
+
expect(@signature_request).to be_an HelloSign::Resource::SignatureRequest
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
describe "#remind_signature_request" do
|
57
|
+
before do
|
58
|
+
stub_post("/signature_request/remind/1", 'signature_request')
|
59
|
+
@signature_request = HelloSign.remind_signature_request(:signature_request_id => 1)
|
60
|
+
end
|
61
|
+
|
62
|
+
it "should get the correct resource" do
|
63
|
+
expect(a_post("/signature_request/remind/1")).to have_been_made
|
64
|
+
end
|
65
|
+
|
66
|
+
it "should return a SignatureRequest" do
|
67
|
+
expect(@signature_request).to be_an HelloSign::Resource::SignatureRequest
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
describe "#cancel_signature_request" do
|
72
|
+
before do
|
73
|
+
stub_post("/signature_request/cancel/1", 'signature_request')
|
74
|
+
@signature_request = HelloSign.cancel_signature_request(:signature_request_id => 1)
|
75
|
+
end
|
76
|
+
|
77
|
+
it "should get the correct resource" do
|
78
|
+
expect(a_post("/signature_request/cancel/1")).to have_been_made
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
describe "#signature_request_files" do
|
83
|
+
before do
|
84
|
+
stub_get("/signature_request/files/1", 'file')
|
85
|
+
@files = HelloSign.signature_request_files(:signature_request_id => 1)
|
86
|
+
end
|
87
|
+
|
88
|
+
it "should get the correct resource" do
|
89
|
+
expect(a_get("/signature_request/files/1")).to have_been_made
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
|
94
|
+
describe "#send_signature_request_with_template" do
|
95
|
+
before do
|
96
|
+
stub_post("/signature_request/send_with_template", 'signature_request')
|
97
|
+
@signature_request = HelloSign.send_signature_request_with_template({})
|
98
|
+
end
|
99
|
+
|
100
|
+
it "should get the correct resource" do
|
101
|
+
expect(a_post("/signature_request/send_with_template")).to have_been_made
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
describe "#create_embedded_signature_request" do
|
106
|
+
before do
|
107
|
+
stub_post("/signature_request/create_embedded", 'signature_request')
|
108
|
+
@signature_request = HelloSign.create_embedded_signature_request({})
|
109
|
+
end
|
110
|
+
|
111
|
+
it "should get the correct resource" do
|
112
|
+
expect(a_post("/signature_request/create_embedded")).to have_been_made
|
113
|
+
end
|
114
|
+
end
|
115
|
+
|
116
|
+
describe "#create_embedded_signature_request_with_template" do
|
117
|
+
before do
|
118
|
+
stub_post("/signature_request/create_embedded_with_template", 'signature_request')
|
119
|
+
@signature_request = HelloSign.create_embedded_signature_request_with_template({})
|
120
|
+
end
|
121
|
+
|
122
|
+
it "should get the correct resource" do
|
123
|
+
expect(a_post("/signature_request/create_embedded_with_template")).to have_been_made
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
@@ -0,0 +1,94 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::Team do
|
4
|
+
describe "#get_team" do
|
5
|
+
before do
|
6
|
+
stub_get("/team", 'team')
|
7
|
+
@team = HelloSign.get_team
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should get the correct resource" do
|
11
|
+
expect(a_get("/team")).to have_been_made
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should return user's team" do
|
15
|
+
expect(@team).to be_an HelloSign::Resource::Team
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
describe "#create_team" do
|
22
|
+
before do
|
23
|
+
stub_post("/team/create", "team")
|
24
|
+
@team = HelloSign.create_team :name => "Team HelloSign"
|
25
|
+
end
|
26
|
+
|
27
|
+
it "should get the correct resource" do
|
28
|
+
expect(a_post("/team/create")).to have_been_made
|
29
|
+
end
|
30
|
+
|
31
|
+
it "should return information about a created team" do
|
32
|
+
expect(@team.name).to eql("Team HelloSign")
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
describe "#update_team" do
|
37
|
+
before do
|
38
|
+
stub_post("/team", "team")
|
39
|
+
@team = HelloSign.update_team :name => "Team HelloSign"
|
40
|
+
end
|
41
|
+
|
42
|
+
it "should get the correct resource" do
|
43
|
+
expect(a_post("/team")).to have_been_made
|
44
|
+
end
|
45
|
+
|
46
|
+
it "should return information about a updated team" do
|
47
|
+
expect(@team.name).to eql("Team HelloSign")
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
describe "#destroy_team" do
|
52
|
+
before do
|
53
|
+
stub_post("/team/destroy", "team")
|
54
|
+
@team = HelloSign.destroy_team
|
55
|
+
end
|
56
|
+
|
57
|
+
it "should get the correct resource" do
|
58
|
+
expect(a_post("/team/destroy")).to have_been_made
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
describe "#destroy_team" do
|
63
|
+
before do
|
64
|
+
stub_post("/team/destroy", "team")
|
65
|
+
@team = HelloSign.destroy_team
|
66
|
+
end
|
67
|
+
|
68
|
+
it "should get the correct resource" do
|
69
|
+
expect(a_post("/team/destroy")).to have_been_made
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
describe "#add_member_to_team" do
|
74
|
+
before do
|
75
|
+
stub_post("/team/add_member", "team")
|
76
|
+
@team = HelloSign.add_member_to_team :email_address => "george@example.com"
|
77
|
+
end
|
78
|
+
|
79
|
+
it "should get the correct resource" do
|
80
|
+
expect(a_post("/team/add_member")).to have_been_made
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
describe "#remove_member_from_team" do
|
85
|
+
before do
|
86
|
+
stub_post("/team/remove_member", "team")
|
87
|
+
@team = HelloSign.remove_member_from_team :email_address => "george@example.com"
|
88
|
+
end
|
89
|
+
|
90
|
+
it "should get the correct resource" do
|
91
|
+
expect(a_post("/team/remove_member")).to have_been_made
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::Template do
|
4
|
+
describe "#get_template" do
|
5
|
+
before do
|
6
|
+
stub_get("/template/1", 'template')
|
7
|
+
@template = HelloSign.get_template :template_id => 1
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should get the correct resource" do
|
11
|
+
expect(a_get("/template/1")).to have_been_made
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should return a Template" do
|
15
|
+
expect(@template).to be_an HelloSign::Resource::Template
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "#get_templates" do
|
20
|
+
before do
|
21
|
+
stub_get("/template/list", 'templates')
|
22
|
+
@template = HelloSign.get_templates({})
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should get the correct resource" do
|
26
|
+
expect(a_get("/template/list")).to have_been_made
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should return a ResourceArray" do
|
30
|
+
expect(@template).to be_an HelloSign::Resource::ResourceArray
|
31
|
+
end
|
32
|
+
|
33
|
+
it "each of Array is an Template" do
|
34
|
+
expect(@template[0]).to be_an HelloSign::Resource::Template
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
describe "#add_user_to_template" do
|
39
|
+
before do
|
40
|
+
stub_post("/template/add_user/1", 'template')
|
41
|
+
@template = HelloSign.add_user_to_template :template_id => 1
|
42
|
+
end
|
43
|
+
|
44
|
+
it "should get the correct resource" do
|
45
|
+
expect(a_post("/template/add_user/1")).to have_been_made
|
46
|
+
end
|
47
|
+
|
48
|
+
it "should return a Template" do
|
49
|
+
expect(@template).to be_an HelloSign::Resource::Template
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
describe "#remove_user_from_template" do
|
54
|
+
before do
|
55
|
+
stub_post("/template/remove_user/1", 'template')
|
56
|
+
@template = HelloSign.remove_user_from_template :template_id => 1
|
57
|
+
end
|
58
|
+
|
59
|
+
it "should get the correct resource" do
|
60
|
+
expect(a_post("/template/remove_user/1")).to have_been_made
|
61
|
+
end
|
62
|
+
|
63
|
+
it "should return a Template" do
|
64
|
+
expect(@template).to be_an HelloSign::Resource::Template
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Api::UnclaimedDraft do
|
4
|
+
describe "#create_unclaimed_draft" do
|
5
|
+
context "send_document" do
|
6
|
+
before do
|
7
|
+
stub_post("/unclaimed_draft/create", 'unclaimed_draft')
|
8
|
+
@unclaimed_draft = HelloSign.create_unclaimed_draft({:type => 'send_document'})
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should get the correct resource" do
|
12
|
+
expect(a_post("/unclaimed_draft/create")).to have_been_made
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should return a UnclaimedDraft" do
|
16
|
+
expect(@unclaimed_draft).to be_an HelloSign::Resource::UnclaimedDraft
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
context "request_signature" do
|
21
|
+
before do
|
22
|
+
stub_post("/unclaimed_draft/create", 'unclaimed_draft')
|
23
|
+
@unclaimed_draft = HelloSign.create_unclaimed_draft({:type => 'request_signature'})
|
24
|
+
end
|
25
|
+
|
26
|
+
it "should get the correct resource" do
|
27
|
+
expect(a_post("/unclaimed_draft/create")).to have_been_made
|
28
|
+
end
|
29
|
+
|
30
|
+
it "should return a UnclaimedDraft" do
|
31
|
+
expect(@unclaimed_draft).to be_an HelloSign::Resource::UnclaimedDraft
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,132 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe HelloSign::Client do
|
4
|
+
describe "#initialize" do
|
5
|
+
context "with default values" do
|
6
|
+
subject(:client){HelloSign::Client.new}
|
7
|
+
HelloSign::Configuration::VALID_OPTIONS_KEYS.each do |key|
|
8
|
+
it "should set #{key}" do
|
9
|
+
expect(client.send(key)).to eql(HelloSign.send(key))
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
context "with custom values" do
|
15
|
+
let(:custom_client){
|
16
|
+
{
|
17
|
+
:email_address => "email_address",
|
18
|
+
:password => "password",
|
19
|
+
:api_key => "api_key",
|
20
|
+
:user_agent => "user_agent",
|
21
|
+
:end_point => "end_point",
|
22
|
+
:oauth_end_point => "oauth_end_point",
|
23
|
+
:api_version => "api_version",
|
24
|
+
:client_id => "client_id",
|
25
|
+
:client_secret => "client_secret",
|
26
|
+
:auth_token => "auth_token",
|
27
|
+
:log_level => 5,
|
28
|
+
:logging => false
|
29
|
+
}
|
30
|
+
}
|
31
|
+
subject(:client){ HelloSign::Client.new custom_client}
|
32
|
+
HelloSign::Configuration::VALID_OPTIONS_KEYS.each do |key|
|
33
|
+
it "should set #{key}" do
|
34
|
+
expect(client.send(key)).to eql(custom_client[key])
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
describe "#request" do
|
41
|
+
context "when response status >= 400" do
|
42
|
+
HelloSign::Client::ERRORS.keys.each do |key|
|
43
|
+
it "raise #{HelloSign::Client::ERRORS[key].to_s} when response status #{key}" do
|
44
|
+
|
45
|
+
# raise when post
|
46
|
+
stub_post("/account/create", 'error', key)
|
47
|
+
expect {
|
48
|
+
HelloSign.create_account :email_address => "test@example.com", :password => "password"
|
49
|
+
}.to raise_error(HelloSign::Client::ERRORS[key])
|
50
|
+
|
51
|
+
# raise when get
|
52
|
+
stub_get("/account", 'error', key)
|
53
|
+
expect {
|
54
|
+
HelloSign.get_account
|
55
|
+
}.to raise_error(HelloSign::Client::ERRORS[key])
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
describe "prepare" do
|
62
|
+
context "signers" do
|
63
|
+
describe "is an array" do
|
64
|
+
before do
|
65
|
+
stub_post("/signature_request/send", 'signature_request')
|
66
|
+
end
|
67
|
+
|
68
|
+
it "work correctly" do
|
69
|
+
expect(lambda{HelloSign.send_signature_request(
|
70
|
+
:files_url => ["http://hellosign.com/test.pdf"],
|
71
|
+
:signers => ["sss"]
|
72
|
+
)}).not_to raise_error
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
describe "is an Hash" do
|
77
|
+
before do
|
78
|
+
stub_post("/signature_request/send", 'signature_request')
|
79
|
+
end
|
80
|
+
|
81
|
+
it "work correctly" do
|
82
|
+
expect(lambda{HelloSign.send_signature_request(
|
83
|
+
:files_url => ["http://hellosign.com/test.pdf"],
|
84
|
+
:signers => [{
|
85
|
+
:email_address => 'jack@example.com',
|
86
|
+
:name => 'Jack',
|
87
|
+
:order => 0
|
88
|
+
},{
|
89
|
+
:email_address => 'jill@example.com',
|
90
|
+
:name => 'Jill',
|
91
|
+
:order => 1
|
92
|
+
}]
|
93
|
+
)}).not_to raise_error
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
context "ccs" do
|
99
|
+
describe "is an array" do
|
100
|
+
before do
|
101
|
+
stub_post("/signature_request/send_with_template", 'signature_request')
|
102
|
+
end
|
103
|
+
|
104
|
+
it "work correctly" do
|
105
|
+
expect(lambda{HelloSign.send_signature_request_with_template(
|
106
|
+
:ccs => ["sss"]
|
107
|
+
)}).not_to raise_error
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
describe "is an Hash" do
|
112
|
+
before do
|
113
|
+
stub_post("/signature_request/send_with_template", 'signature_request')
|
114
|
+
end
|
115
|
+
|
116
|
+
it "work correctly" do
|
117
|
+
expect(lambda{HelloSign.send_signature_request_with_template(
|
118
|
+
:ccs => [{
|
119
|
+
:email_address => 'jack@example.com',
|
120
|
+
:name => 'Jack',
|
121
|
+
:role => 'Manager'
|
122
|
+
},{
|
123
|
+
:email_address => 'jill@example.com',
|
124
|
+
:name => 'Jill',
|
125
|
+
:role => "Client"
|
126
|
+
}]
|
127
|
+
)}).not_to raise_error
|
128
|
+
end
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|