esa 1.16.0 → 1.17.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.
- 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
|