teamsnap_rb 2.0.0.beta10 → 2.0.0.beta11
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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +5 -0
- data/Gemfile +2 -0
- data/lib/teamsnap.rb +12 -1
- data/lib/teamsnap/auth_middleware.rb +1 -1
- data/lib/teamsnap/version.rb +1 -1
- data/spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/accepts_test_file_arg_when_creating_HMAC.yml +42 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/teamsnap_spec.rb +14 -1
- metadata +29 -47
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 81655759f5f779f3c76911d37b18c6e1998ffe4c
|
4
|
+
data.tar.gz: 9991061adc2b212d443f8a0bc17b7f91b03d2c22
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 32bd7c2e21f4614effe6f600e2dd382a2ab1a282e84cb1603be310dba4f5ef21109106dd1f38eafe4bb70a36e77ed5b3f8eac6d0ef58a5d117bfcc3f7bd45bdd
|
7
|
+
data.tar.gz: f00c4eda9ad63baebdc7e0c2bca521664d2ce2b349e153dede2081087008f124bebdbc56a78fda6d5651130aab2b1067f61e732e431086d5f0870cbc40b61e33
|
data/CHANGELOG.md
CHANGED
data/Gemfile
CHANGED
data/lib/teamsnap.rb
CHANGED
@@ -68,7 +68,7 @@ module TeamSnap
|
|
68
68
|
client.send(via, href, args)
|
69
69
|
when :patch, :post
|
70
70
|
client.send(via, href) do |req|
|
71
|
-
if
|
71
|
+
if use_multipart?(args)
|
72
72
|
req.body = args
|
73
73
|
else
|
74
74
|
req.body = Oj.dump(args)
|
@@ -79,5 +79,16 @@ module TeamSnap
|
|
79
79
|
end
|
80
80
|
end
|
81
81
|
|
82
|
+
private
|
83
|
+
|
84
|
+
def use_multipart?(args)
|
85
|
+
valid_file_types.any? { |type|
|
86
|
+
args.values.any? { |a| defined?(type) && a.kind_of?(type) }
|
87
|
+
}
|
88
|
+
end
|
89
|
+
|
90
|
+
def valid_file_types
|
91
|
+
[File, Tempfile, Rack::Test::UploadedFile]
|
92
|
+
end
|
82
93
|
end
|
83
94
|
end
|
data/lib/teamsnap/version.rb
CHANGED
@@ -0,0 +1,42 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: patch
|
5
|
+
uri: http://localhost:3000/?hmac_client_id=classic&hmac_nonce=e773621e-2824-4f67-9d6b-0136f1776a23&hmac_timestamp=1469043061
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: "-------------RubyMultipartPost\r\nContent-Disposition: form-data; name=\"file\";
|
9
|
+
filename=\"spec_helper.rb\"\r\nContent-Length: 848\r\nContent-Type: txt/csv\r\nContent-Transfer-Encoding:
|
10
|
+
binary\r\n\r\nrequire \"simplecov\"\nrequire \"coveralls\"\nrequire \"awesome_print\"\nrequire
|
11
|
+
\"rack/test\"\n\nSimpleCov::Formatter::MultiFormatter[\n SimpleCov::Formatter::HTMLFormatter,\n
|
12
|
+
\ Coveralls::SimpleCov::Formatter\n]\nSimpleCov.start do\n add_filter \"vendor\"\nend\n\nrequire
|
13
|
+
\"vcr\"\nrequire \"pry\"\n\nROOT_TEST_URL = \"http://localhost:3000\"\n\nVCR.configure
|
14
|
+
do |c|\n c.cassette_library_dir = \"spec/cassettes\"\n c.hook_into :typhoeus\n
|
15
|
+
\ c.configure_rspec_metadata!\n c.default_cassette_options = {\n :record
|
16
|
+
=> :once,\n :match_requests_on => [\n :method,\n VCR.request_matchers.uri_without_params(\n
|
17
|
+
\ :hmac_client_id, :hmac_nonce, :hmac_timestamp\n )\n ]\n }\n
|
18
|
+
\ c.before_record do |i|\n i.response.body.force_encoding('UTF-8')\n end\nend\n\nRSpec.configure
|
19
|
+
do |c|\n c.expose_dsl_globally = false\n c.order = \"random\"\n c.backtrace_inclusion_patterns
|
20
|
+
= []\nend\n\r\n-------------RubyMultipartPost--\r\n\r\n"
|
21
|
+
headers:
|
22
|
+
User-Agent:
|
23
|
+
- Faraday v0.9.2
|
24
|
+
Content-Type:
|
25
|
+
- multipart/form-data; boundary=-----------RubyMultipartPost
|
26
|
+
Content-Length:
|
27
|
+
- '1071'
|
28
|
+
X-Teamsnap-Hmac:
|
29
|
+
- 2b7109a8cfee7a332f234a9325e436e4b63aa26c16bacbd48ca9cfefb0b12c82
|
30
|
+
response:
|
31
|
+
status:
|
32
|
+
code: 0
|
33
|
+
message:
|
34
|
+
headers: {}
|
35
|
+
body:
|
36
|
+
encoding: UTF-8
|
37
|
+
string: ''
|
38
|
+
http_version:
|
39
|
+
adapter_metadata:
|
40
|
+
effective_url: http://localhost:3000/?hmac_client_id=classic&hmac_nonce=e773621e-2824-4f67-9d6b-0136f1776a23&hmac_timestamp=1469043061
|
41
|
+
recorded_at: Wed, 20 Jul 2016 19:31:01 GMT
|
42
|
+
recorded_with: VCR 2.9.3
|
data/spec/spec_helper.rb
CHANGED
data/spec/teamsnap_spec.rb
CHANGED
@@ -140,6 +140,19 @@ RSpec.describe "teamsnap_rb", :vcr => true do
|
|
140
140
|
expect(client).to receive(via).with(href).and_call_original
|
141
141
|
TeamSnap.client_send(client, via, href, args)
|
142
142
|
end
|
143
|
+
|
144
|
+
it "accepts test file arg when creating HMAC" do
|
145
|
+
via = :patch
|
146
|
+
href = "/"
|
147
|
+
args = {
|
148
|
+
:file => Rack::Test::UploadedFile.new(
|
149
|
+
File.expand_path(File.dirname(__FILE__)) +
|
150
|
+
"/spec_helper.rb", "txt/csv")
|
151
|
+
}
|
152
|
+
|
153
|
+
expect(client).to receive(via).with(href).and_call_original
|
154
|
+
TeamSnap.client_send(client, via, href, args)
|
155
|
+
end
|
143
156
|
end
|
144
157
|
|
145
158
|
context "when sent unknown `via`" do
|
@@ -224,7 +237,7 @@ RSpec.describe "teamsnap_rb", :vcr => true do
|
|
224
237
|
TeamSnap.bulk_load
|
225
238
|
}.to raise_error(
|
226
239
|
ArgumentError,
|
227
|
-
"wrong number of arguments (0
|
240
|
+
"wrong number of arguments (given 0, expected 1+)"
|
228
241
|
)
|
229
242
|
end
|
230
243
|
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: teamsnap_rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
5
|
-
prerelease: 6
|
4
|
+
version: 2.0.0.beta11
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Shane Emmons
|
@@ -10,150 +9,132 @@ authors:
|
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date: 2016-07-
|
12
|
+
date: 2016-07-20 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: rake
|
17
16
|
requirement: !ruby/object:Gem::Requirement
|
18
|
-
none: false
|
19
17
|
requirements:
|
20
|
-
- -
|
18
|
+
- - ">="
|
21
19
|
- !ruby/object:Gem::Version
|
22
20
|
version: '0'
|
23
21
|
type: :development
|
24
22
|
prerelease: false
|
25
23
|
version_requirements: !ruby/object:Gem::Requirement
|
26
|
-
none: false
|
27
24
|
requirements:
|
28
|
-
- -
|
25
|
+
- - ">="
|
29
26
|
- !ruby/object:Gem::Version
|
30
27
|
version: '0'
|
31
28
|
- !ruby/object:Gem::Dependency
|
32
29
|
name: bundler
|
33
30
|
requirement: !ruby/object:Gem::Requirement
|
34
|
-
none: false
|
35
31
|
requirements:
|
36
|
-
- - ~>
|
32
|
+
- - "~>"
|
37
33
|
- !ruby/object:Gem::Version
|
38
34
|
version: 1.10.2
|
39
35
|
type: :development
|
40
36
|
prerelease: false
|
41
37
|
version_requirements: !ruby/object:Gem::Requirement
|
42
|
-
none: false
|
43
38
|
requirements:
|
44
|
-
- - ~>
|
39
|
+
- - "~>"
|
45
40
|
- !ruby/object:Gem::Version
|
46
41
|
version: 1.10.2
|
47
42
|
- !ruby/object:Gem::Dependency
|
48
43
|
name: rspec
|
49
44
|
requirement: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
45
|
requirements:
|
52
|
-
- - ~>
|
46
|
+
- - "~>"
|
53
47
|
- !ruby/object:Gem::Version
|
54
48
|
version: 3.2.0
|
55
49
|
type: :development
|
56
50
|
prerelease: false
|
57
51
|
version_requirements: !ruby/object:Gem::Requirement
|
58
|
-
none: false
|
59
52
|
requirements:
|
60
|
-
- - ~>
|
53
|
+
- - "~>"
|
61
54
|
- !ruby/object:Gem::Version
|
62
55
|
version: 3.2.0
|
63
56
|
- !ruby/object:Gem::Dependency
|
64
57
|
name: vcr
|
65
58
|
requirement: !ruby/object:Gem::Requirement
|
66
|
-
none: false
|
67
59
|
requirements:
|
68
|
-
- - ~>
|
60
|
+
- - "~>"
|
69
61
|
- !ruby/object:Gem::Version
|
70
62
|
version: 2.9.3
|
71
63
|
type: :development
|
72
64
|
prerelease: false
|
73
65
|
version_requirements: !ruby/object:Gem::Requirement
|
74
|
-
none: false
|
75
66
|
requirements:
|
76
|
-
- - ~>
|
67
|
+
- - "~>"
|
77
68
|
- !ruby/object:Gem::Version
|
78
69
|
version: 2.9.3
|
79
70
|
- !ruby/object:Gem::Dependency
|
80
71
|
name: faraday
|
81
72
|
requirement: !ruby/object:Gem::Requirement
|
82
|
-
none: false
|
83
73
|
requirements:
|
84
|
-
- - ~>
|
74
|
+
- - "~>"
|
85
75
|
- !ruby/object:Gem::Version
|
86
76
|
version: 0.9.1
|
87
77
|
type: :runtime
|
88
78
|
prerelease: false
|
89
79
|
version_requirements: !ruby/object:Gem::Requirement
|
90
|
-
none: false
|
91
80
|
requirements:
|
92
|
-
- - ~>
|
81
|
+
- - "~>"
|
93
82
|
- !ruby/object:Gem::Version
|
94
83
|
version: 0.9.1
|
95
84
|
- !ruby/object:Gem::Dependency
|
96
85
|
name: typhoeus
|
97
86
|
requirement: !ruby/object:Gem::Requirement
|
98
|
-
none: false
|
99
87
|
requirements:
|
100
|
-
- - ~>
|
88
|
+
- - "~>"
|
101
89
|
- !ruby/object:Gem::Version
|
102
90
|
version: 0.7.1
|
103
91
|
type: :runtime
|
104
92
|
prerelease: false
|
105
93
|
version_requirements: !ruby/object:Gem::Requirement
|
106
|
-
none: false
|
107
94
|
requirements:
|
108
|
-
- - ~>
|
95
|
+
- - "~>"
|
109
96
|
- !ruby/object:Gem::Version
|
110
97
|
version: 0.7.1
|
111
98
|
- !ruby/object:Gem::Dependency
|
112
99
|
name: oj
|
113
100
|
requirement: !ruby/object:Gem::Requirement
|
114
|
-
none: false
|
115
101
|
requirements:
|
116
|
-
- - ~>
|
102
|
+
- - "~>"
|
117
103
|
- !ruby/object:Gem::Version
|
118
104
|
version: 2.11.4
|
119
105
|
type: :runtime
|
120
106
|
prerelease: false
|
121
107
|
version_requirements: !ruby/object:Gem::Requirement
|
122
|
-
none: false
|
123
108
|
requirements:
|
124
|
-
- - ~>
|
109
|
+
- - "~>"
|
125
110
|
- !ruby/object:Gem::Version
|
126
111
|
version: 2.11.4
|
127
112
|
- !ruby/object:Gem::Dependency
|
128
113
|
name: inflecto
|
129
114
|
requirement: !ruby/object:Gem::Requirement
|
130
|
-
none: false
|
131
115
|
requirements:
|
132
|
-
- - ~>
|
116
|
+
- - "~>"
|
133
117
|
- !ruby/object:Gem::Version
|
134
118
|
version: 0.0.2
|
135
119
|
type: :runtime
|
136
120
|
prerelease: false
|
137
121
|
version_requirements: !ruby/object:Gem::Requirement
|
138
|
-
none: false
|
139
122
|
requirements:
|
140
|
-
- - ~>
|
123
|
+
- - "~>"
|
141
124
|
- !ruby/object:Gem::Version
|
142
125
|
version: 0.0.2
|
143
126
|
- !ruby/object:Gem::Dependency
|
144
127
|
name: virtus
|
145
128
|
requirement: !ruby/object:Gem::Requirement
|
146
|
-
none: false
|
147
129
|
requirements:
|
148
|
-
- - ~>
|
130
|
+
- - "~>"
|
149
131
|
- !ruby/object:Gem::Version
|
150
132
|
version: 1.0.4
|
151
133
|
type: :runtime
|
152
134
|
prerelease: false
|
153
135
|
version_requirements: !ruby/object:Gem::Requirement
|
154
|
-
none: false
|
155
136
|
requirements:
|
156
|
-
- - ~>
|
137
|
+
- - "~>"
|
157
138
|
- !ruby/object:Gem::Version
|
158
139
|
version: 1.0.4
|
159
140
|
description: A gem to interact with TeamSnap's API
|
@@ -163,8 +144,8 @@ executables: []
|
|
163
144
|
extensions: []
|
164
145
|
extra_rdoc_files: []
|
165
146
|
files:
|
166
|
-
- .gitignore
|
167
|
-
- .travis.yml
|
147
|
+
- ".gitignore"
|
148
|
+
- ".travis.yml"
|
168
149
|
- CHANGELOG.md
|
169
150
|
- Gemfile
|
170
151
|
- LICENSE
|
@@ -205,6 +186,7 @@ files:
|
|
205
186
|
- spec/cassettes/teamsnap_rb/_bulk_load/can_handle_an_empty_bulk_load.yml
|
206
187
|
- spec/cassettes/teamsnap_rb/_bulk_load/can_handle_an_error_with_bulk_load_without_a_team_id.yml
|
207
188
|
- spec/cassettes/teamsnap_rb/_bulk_load/can_use_bulk_load.yml
|
189
|
+
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/accepts_test_file_arg_when_creating_HMAC.yml
|
208
190
|
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/calls_DELETE_on_the_given_client.yml
|
209
191
|
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/calls_GET_on_the_given_client.yml
|
210
192
|
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/calls_PATCH_on_the_given_client.yml
|
@@ -227,27 +209,26 @@ files:
|
|
227
209
|
homepage: http://developer.teamsnap.com/
|
228
210
|
licenses:
|
229
211
|
- MIT
|
212
|
+
metadata: {}
|
230
213
|
post_install_message:
|
231
214
|
rdoc_options: []
|
232
215
|
require_paths:
|
233
216
|
- lib
|
234
217
|
required_ruby_version: !ruby/object:Gem::Requirement
|
235
|
-
none: false
|
236
218
|
requirements:
|
237
|
-
- -
|
219
|
+
- - ">="
|
238
220
|
- !ruby/object:Gem::Version
|
239
221
|
version: 1.9.3
|
240
222
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
241
|
-
none: false
|
242
223
|
requirements:
|
243
|
-
- -
|
224
|
+
- - ">"
|
244
225
|
- !ruby/object:Gem::Version
|
245
226
|
version: 1.3.1
|
246
227
|
requirements: []
|
247
228
|
rubyforge_project:
|
248
|
-
rubygems_version:
|
229
|
+
rubygems_version: 2.6.3
|
249
230
|
signing_key:
|
250
|
-
specification_version:
|
231
|
+
specification_version: 4
|
251
232
|
summary: A gem to interact with TeamSnap's API
|
252
233
|
test_files:
|
253
234
|
- spec/cassettes/apiv3-error.yml
|
@@ -274,6 +255,7 @@ test_files:
|
|
274
255
|
- spec/cassettes/teamsnap_rb/_bulk_load/can_handle_an_empty_bulk_load.yml
|
275
256
|
- spec/cassettes/teamsnap_rb/_bulk_load/can_handle_an_error_with_bulk_load_without_a_team_id.yml
|
276
257
|
- spec/cassettes/teamsnap_rb/_bulk_load/can_use_bulk_load.yml
|
258
|
+
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/accepts_test_file_arg_when_creating_HMAC.yml
|
277
259
|
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/calls_DELETE_on_the_given_client.yml
|
278
260
|
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/calls_GET_on_the_given_client.yml
|
279
261
|
- spec/cassettes/teamsnap_rb/_client_send/when_sent_a_known_via_/calls_PATCH_on_the_given_client.yml
|