hello_sign 1.2.1 → 1.3.0
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.
- data/lib/hello_sign/connection.rb +3 -0
- data/lib/hello_sign/parameters/reusable_form_signature_request.rb +3 -2
- data/lib/hello_sign/parameters/signature_request.rb +4 -3
- data/lib/hello_sign/response.rb +12 -0
- data/lib/hello_sign/version.rb +1 -1
- data/spec/integration/hello_sign_spec.rb +12 -2
- data/spec/integration/signature_request_spec.rb +1 -0
- data/spec/unit/parameters/reusable_form_signature_request_spec.rb +3 -1
- data/spec/unit/parameters/signature_request_spec.rb +9 -6
- metadata +28 -5
@@ -1,4 +1,6 @@
|
|
1
|
+
require 'hello_sign/response'
|
1
2
|
require 'faraday'
|
3
|
+
require 'faraday_middleware'
|
2
4
|
|
3
5
|
module HelloSign
|
4
6
|
class Connection
|
@@ -37,6 +39,7 @@ module HelloSign
|
|
37
39
|
connection.request :multipart
|
38
40
|
connection.request :url_encoded
|
39
41
|
connection.response :raise_error
|
42
|
+
connection.response :mashify, mash_class: HelloSign::Response
|
40
43
|
connection.response :json
|
41
44
|
connection.adapter :net_http
|
42
45
|
end
|
@@ -1,13 +1,14 @@
|
|
1
1
|
module HelloSign
|
2
2
|
module Parameters
|
3
3
|
class ReusableFormSignatureRequest
|
4
|
-
attr_accessor :reusable_form_id, :title, :subject, :message
|
5
|
-
private :reusable_form_id, :title, :subject, :message
|
4
|
+
attr_accessor :reusable_form_id, :title, :subject, :message, :test_mode
|
5
|
+
private :reusable_form_id, :title, :subject, :message, :test_mode
|
6
6
|
|
7
7
|
attr_writer :ccs, :signers, :custom_fields
|
8
8
|
|
9
9
|
def formatted
|
10
10
|
{
|
11
|
+
test_mode: test_mode || 0,
|
11
12
|
reusable_form_id: reusable_form_id,
|
12
13
|
title: title,
|
13
14
|
subject: subject,
|
@@ -4,13 +4,14 @@ require 'json'
|
|
4
4
|
module HelloSign
|
5
5
|
module Parameters
|
6
6
|
class SignatureRequest
|
7
|
-
attr_accessor :title, :subject, :message, :ccs
|
8
|
-
private :title, :subject, :message, :ccs
|
7
|
+
attr_accessor :title, :subject, :message, :ccs, :test_mode
|
8
|
+
private :title, :subject, :message, :ccs, :test_mode
|
9
9
|
|
10
|
-
attr_writer :signers, :files, :form_fields_per_document
|
10
|
+
attr_writer :signers, :files, :form_fields_per_document, :test_mode
|
11
11
|
|
12
12
|
def formatted
|
13
13
|
{
|
14
|
+
test_mode: test_mode || 0,
|
14
15
|
title: title,
|
15
16
|
subject: subject,
|
16
17
|
message: message,
|
data/lib/hello_sign/version.rb
CHANGED
@@ -3,6 +3,8 @@ require 'json'
|
|
3
3
|
|
4
4
|
describe HelloSign do
|
5
5
|
context "when returning a response with a body" do
|
6
|
+
let(:response) { HelloSign.client.get('/json') }
|
7
|
+
|
6
8
|
before do
|
7
9
|
stub_get_with_auth('/json')
|
8
10
|
.to_return(
|
@@ -11,8 +13,16 @@ describe HelloSign do
|
|
11
13
|
)
|
12
14
|
end
|
13
15
|
|
14
|
-
it "
|
15
|
-
expect(
|
16
|
+
it "returns a HelloSign::Response object" do
|
17
|
+
expect(response).to be_a HelloSign::Response
|
18
|
+
end
|
19
|
+
|
20
|
+
it "is accessible by indexing" do
|
21
|
+
expect(response[:account_id]).to eq 1
|
22
|
+
end
|
23
|
+
|
24
|
+
it "is accessible by method calls" do
|
25
|
+
expect(response.account_id).to eq 1
|
16
26
|
end
|
17
27
|
end
|
18
28
|
|
@@ -23,11 +23,13 @@ describe HelloSign::Parameters::ReusableFormSignatureRequest do
|
|
23
23
|
custom_fields: {
|
24
24
|
'cost' => '$20,000',
|
25
25
|
'time' => 'two weeks'
|
26
|
-
}
|
26
|
+
},
|
27
|
+
test_mode: 1
|
27
28
|
}
|
28
29
|
end
|
29
30
|
|
30
31
|
before do
|
32
|
+
request_parameters.test_mode = 1
|
31
33
|
request_parameters.reusable_form_id = 'form_id'
|
32
34
|
request_parameters.title = 'Lease'
|
33
35
|
request_parameters.subject = 'Sign this'
|
@@ -11,6 +11,7 @@ describe HelloSign::Parameters::SignatureRequest do
|
|
11
11
|
context "when all required arguments are set" do
|
12
12
|
let(:expected) do
|
13
13
|
{
|
14
|
+
test_mode: 1,
|
14
15
|
title: 'Lease',
|
15
16
|
subject: 'Sign this',
|
16
17
|
message: 'You must sign this.',
|
@@ -38,15 +39,16 @@ describe HelloSign::Parameters::SignatureRequest do
|
|
38
39
|
end
|
39
40
|
|
40
41
|
before do
|
41
|
-
request_parameters.
|
42
|
-
request_parameters.
|
43
|
-
request_parameters.
|
44
|
-
request_parameters.
|
45
|
-
request_parameters.
|
42
|
+
request_parameters.test_mode = 1
|
43
|
+
request_parameters.title = 'Lease'
|
44
|
+
request_parameters.subject = 'Sign this'
|
45
|
+
request_parameters.message = 'You must sign this.'
|
46
|
+
request_parameters.ccs = ['lawyer@lawfirm.com', 'spouse@family.com']
|
47
|
+
request_parameters.signers = [
|
46
48
|
{name: 'Jack', email_address: 'jack@hill.com'},
|
47
49
|
{name: 'Jill', email_address: 'jill@hill.com'}
|
48
50
|
]
|
49
|
-
request_parameters.files
|
51
|
+
request_parameters.files = [
|
50
52
|
@file_data_1 = {filename: 'test.txt', io: 'text file IO object', mime: 'text/plain'},
|
51
53
|
@file_data_2 = {filename: 'test.jpg', io: 'image file IO object', mime: 'image/jpeg'}
|
52
54
|
]
|
@@ -89,6 +91,7 @@ describe HelloSign::Parameters::SignatureRequest do
|
|
89
91
|
message: nil,
|
90
92
|
cc_email_addresses: nil,
|
91
93
|
signers: {},
|
94
|
+
test_mode: 0,
|
92
95
|
file: {},
|
93
96
|
form_fields_per_document: [].to_json
|
94
97
|
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hello_sign
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-10-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: faraday
|
@@ -28,13 +28,32 @@ dependencies:
|
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: '0.8'
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
31
|
+
name: faraday_middleware
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0.9'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0.9'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: hashie
|
32
48
|
requirement: !ruby/object:Gem::Requirement
|
33
49
|
none: false
|
34
50
|
requirements:
|
35
51
|
- - ! '>='
|
36
52
|
- !ruby/object:Gem::Version
|
37
|
-
version: '0'
|
53
|
+
version: '1.0'
|
54
|
+
- - <
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '3.0'
|
38
57
|
type: :runtime
|
39
58
|
prerelease: false
|
40
59
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -42,7 +61,10 @@ dependencies:
|
|
42
61
|
requirements:
|
43
62
|
- - ! '>='
|
44
63
|
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
64
|
+
version: '1.0'
|
65
|
+
- - <
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '3.0'
|
46
68
|
- !ruby/object:Gem::Dependency
|
47
69
|
name: rake
|
48
70
|
requirement: !ruby/object:Gem::Requirement
|
@@ -115,6 +137,7 @@ files:
|
|
115
137
|
- lib/hello_sign/proxy/team.rb
|
116
138
|
- lib/hello_sign/proxy/unclaimed_draft.rb
|
117
139
|
- lib/hello_sign/proxy.rb
|
140
|
+
- lib/hello_sign/response.rb
|
118
141
|
- lib/hello_sign/version.rb
|
119
142
|
- lib/hello_sign.rb
|
120
143
|
- spec/fixtures/test.jpg
|