esa 1.16.0 → 1.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/build.yml +0 -1
- data/CHANGELOG.md +10 -0
- data/README.md +4 -0
- data/esa.gemspec +0 -1
- data/lib/esa/api_methods.rb +4 -0
- data/lib/esa/version.rb +1 -1
- data/spec/esa/client_spec.rb +59 -5
- data/spec/spec_helper.rb +0 -8
- metadata +3 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6058a2fdedc571221d20ab2cb94a099e5aa3cd082931e64273dfec7d1cdfa9f3
|
4
|
+
data.tar.gz: 3cb8caf6a576be339f0ff109be1d3b06eb68dd94322eb6c378610d50450d3827
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23573acf19a411e41ebcc5a4fa973868a3f32a49461b79e13f44d04e202fdee5b5faac2caab4617ddf0e6e0ed7777974051d5127501c87f2042933e51baeea65
|
7
|
+
data.tar.gz: 841cbcabca254e7ae4bcc8f2a5cebc521bb7559bf5981e6f3123d98ee40ca164c0f42b397e4962796ef325d52ecd5aeda3e4925e1342cdc6cd20771eb661ff0d
|
data/.github/workflows/build.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
## Unreleased
|
2
|
+
|
3
|
+
nothing
|
4
|
+
|
5
|
+
## 1.17.0 (2020-07-02)
|
6
|
+
|
7
|
+
- ci: [Add specs for default_headers](https://github.com/esaio/esa-ruby/pull/45)
|
8
|
+
- add: [Add Post Append API (beta) by fukayatsu · Pull Request #46 · esaio/esa-ruby](https://github.com/esaio/esa-ruby/pull/46)
|
9
|
+
- change: Drop support for Ruby 2.4
|
10
|
+
|
1
11
|
## 1.16.0 (2020-01-20)
|
2
12
|
- add: [Enable to set default_headers by fukayatsu · Pull Request #43 · esaio/esa-ruby](https://github.com/esaio/esa-ruby/pull/43)
|
3
13
|
|
data/README.md
CHANGED
@@ -65,6 +65,10 @@ client.create_post(name: 'foo')
|
|
65
65
|
client.update_post(post_number, name: 'bar')
|
66
66
|
#=> PATCH /v1/teams/foobar/posts/1
|
67
67
|
|
68
|
+
# (beta)
|
69
|
+
client.append_post(post_number, content: 'bar')
|
70
|
+
#=> POST /v1/teams/foobar/posts/1/append
|
71
|
+
|
68
72
|
client.delete_post(post_number)
|
69
73
|
#=> DELETE /v1/teams/foobar/posts/1
|
70
74
|
|
data/esa.gemspec
CHANGED
@@ -27,6 +27,5 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.add_development_dependency 'pry', '~> 0.12'
|
28
28
|
spec.add_development_dependency 'rake', '~> 13.0'
|
29
29
|
spec.add_development_dependency 'rspec', '~> 3.9'
|
30
|
-
spec.add_development_dependency 'vcr', '~> 5.0.0'
|
31
30
|
spec.add_development_dependency 'webmock', '~> 3.7.6'
|
32
31
|
end
|
data/lib/esa/api_methods.rb
CHANGED
@@ -43,6 +43,10 @@ module Esa
|
|
43
43
|
send_patch("/v1/teams/#{current_team!}/posts/#{post_number}", wrap(params, :post), headers)
|
44
44
|
end
|
45
45
|
|
46
|
+
def append_post(post_number, params = nil, headers = nil)
|
47
|
+
send_post("/v1/teams/#{current_team!}/posts/#{post_number}/append", wrap(params, :post), headers)
|
48
|
+
end
|
49
|
+
|
46
50
|
def delete_post(post_number, params = nil, headers = nil)
|
47
51
|
send_delete("/v1/teams/#{current_team!}/posts/#{post_number}", params, headers)
|
48
52
|
end
|
data/lib/esa/version.rb
CHANGED
data/spec/esa/client_spec.rb
CHANGED
@@ -4,11 +4,13 @@ RSpec.describe Esa::Client do
|
|
4
4
|
let(:access_token) { nil }
|
5
5
|
let(:api_endpoint) { nil }
|
6
6
|
let(:current_team) { nil }
|
7
|
+
let(:default_headers) { {} }
|
7
8
|
let(:options) do
|
8
9
|
{
|
9
10
|
access_token: access_token,
|
10
11
|
api_endpoint: api_endpoint,
|
11
12
|
current_team: current_team,
|
13
|
+
default_headers: default_headers
|
12
14
|
}
|
13
15
|
end
|
14
16
|
subject(:client) { described_class.new(**options) }
|
@@ -42,9 +44,61 @@ RSpec.describe Esa::Client do
|
|
42
44
|
end
|
43
45
|
end
|
44
46
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
47
|
+
describe 'default_headers' do
|
48
|
+
before do
|
49
|
+
stub_request(:any, 'https://api.esa.io/v1/teams')
|
50
|
+
.to_return do |request|
|
51
|
+
{
|
52
|
+
body: request.body,
|
53
|
+
headers: request.headers
|
54
|
+
}
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
context 'no default_headers option' do
|
59
|
+
it 'request with basic headers' do
|
60
|
+
response = client.teams
|
61
|
+
expect(response.headers).to eq(
|
62
|
+
'Accept' => 'application/json',
|
63
|
+
'User-Agent' => "Esa Ruby Gem #{Esa::VERSION}",
|
64
|
+
'Accept-Encoding' => 'gzip;q=1.0,deflate;q=0.6,identity;q=0.3'
|
65
|
+
)
|
66
|
+
end
|
67
|
+
|
68
|
+
it 'request with basic headers and additional headers ' do
|
69
|
+
response = client.teams(nil, { 'X-Foo' => 'bar' })
|
70
|
+
expect(response.headers).to eq(
|
71
|
+
'Accept' => 'application/json',
|
72
|
+
'User-Agent' => "Esa Ruby Gem #{Esa::VERSION}",
|
73
|
+
'Accept-Encoding' => 'gzip;q=1.0,deflate;q=0.6,identity;q=0.3',
|
74
|
+
'X-Foo' => 'bar'
|
75
|
+
)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
context 'with default_headers option' do
|
80
|
+
let(:default_headers) { { 'X-Default-Foo' => 'Bar' } }
|
81
|
+
|
82
|
+
it 'request with basic headers and default_headers' do
|
83
|
+
response = client.teams
|
84
|
+
expect(response.headers).to eq(
|
85
|
+
'Accept' => 'application/json',
|
86
|
+
'User-Agent' => "Esa Ruby Gem #{Esa::VERSION}",
|
87
|
+
'Accept-Encoding' => 'gzip;q=1.0,deflate;q=0.6,identity;q=0.3',
|
88
|
+
'X-Default-Foo' => 'Bar'
|
89
|
+
)
|
90
|
+
end
|
91
|
+
|
92
|
+
it 'request with basic headers and additional headers ' do
|
93
|
+
response = client.teams(nil, { 'X-Foo' => 'baz', 'X-Default-Foo' => 'qux' })
|
94
|
+
expect(response.headers).to eq(
|
95
|
+
'Accept' => 'application/json',
|
96
|
+
'User-Agent' => "Esa Ruby Gem #{Esa::VERSION}",
|
97
|
+
'Accept-Encoding' => 'gzip;q=1.0,deflate;q=0.6,identity;q=0.3',
|
98
|
+
'X-Default-Foo' => 'qux',
|
99
|
+
'X-Foo' => 'baz'
|
100
|
+
)
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
50
104
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
require 'esa'
|
2
2
|
require 'webmock/rspec'
|
3
|
-
require 'vcr'
|
4
3
|
|
5
4
|
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
6
5
|
RSpec.configure do |config|
|
@@ -26,10 +25,3 @@ RSpec.configure do |config|
|
|
26
25
|
config.order = :random
|
27
26
|
Kernel.srand config.seed
|
28
27
|
end
|
29
|
-
|
30
|
-
VCR.configure do |c|
|
31
|
-
c.cassette_library_dir = 'spec/cassettes'
|
32
|
-
c.hook_into :webmock
|
33
|
-
c.configure_rspec_metadata!
|
34
|
-
c.filter_sensitive_data('<ACCESS_TOKEN>') { ENV['ESA_ACCESS_TOKEN'] }
|
35
|
-
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: esa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- fukayatsu
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-07-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -146,20 +146,6 @@ dependencies:
|
|
146
146
|
- - "~>"
|
147
147
|
- !ruby/object:Gem::Version
|
148
148
|
version: '3.9'
|
149
|
-
- !ruby/object:Gem::Dependency
|
150
|
-
name: vcr
|
151
|
-
requirement: !ruby/object:Gem::Requirement
|
152
|
-
requirements:
|
153
|
-
- - "~>"
|
154
|
-
- !ruby/object:Gem::Version
|
155
|
-
version: 5.0.0
|
156
|
-
type: :development
|
157
|
-
prerelease: false
|
158
|
-
version_requirements: !ruby/object:Gem::Requirement
|
159
|
-
requirements:
|
160
|
-
- - "~>"
|
161
|
-
- !ruby/object:Gem::Version
|
162
|
-
version: 5.0.0
|
163
149
|
- !ruby/object:Gem::Dependency
|
164
150
|
name: webmock
|
165
151
|
requirement: !ruby/object:Gem::Requirement
|
@@ -218,7 +204,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
218
204
|
- !ruby/object:Gem::Version
|
219
205
|
version: '0'
|
220
206
|
requirements: []
|
221
|
-
rubygems_version: 3.
|
207
|
+
rubygems_version: 3.0.3
|
222
208
|
signing_key:
|
223
209
|
specification_version: 4
|
224
210
|
summary: esa API v1 client library, written in Ruby
|