ruby-lokalise-api 2.7.0 → 2.8.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/CHANGELOG.md +6 -0
- data/README.md +34 -0
- data/lib/ruby-lokalise-api/resources/branch.rb +15 -3
- data/lib/ruby-lokalise-api/rest/branches.rb +11 -0
- data/lib/ruby-lokalise-api/version.rb +1 -1
- data/spec/lib/ruby-lokalise-api/rest/branches_spec.rb +38 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e19a20b1d025fd711703a9176f3379e9434b91715db88098a6c25aff8e24fa3
|
4
|
+
data.tar.gz: afbe4d805b7d97b19fb0105e34815e5a8ce49e36d1fe7b497bea8405d826d44e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 60df98ac6b8065743bd760e4979b94264da22eeebde08f8b199889dada4d591e7491becb64f09684371a97e7da4a4bb7dfa2cdefb590eca754c2bf7ed1684e1a
|
7
|
+
data.tar.gz: a22de056ac53851456ac434cd3ecec0c8622d19d5a18b37a658c9d6bb71108ae41106868b54297fc569d8f517b4759156d48ccdea93df3abd43a389ab3e3a9f5
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 2.8.0 (13-Nov-19)
|
4
|
+
|
5
|
+
* Added methods to [merge branches](https://lokalise.com/api2docs/curl/#transition-merge-a-branch-post):
|
6
|
+
+ `branch.merge params`
|
7
|
+
+ `client.merge_branch project_id, branch_id, params`
|
8
|
+
|
3
9
|
## 2.7.0 (30-Oct-19)
|
4
10
|
|
5
11
|
* Added [`Branch` endpoint](https://lokalise.co/api2docs/curl/#resource-branches)
|
data/README.md
CHANGED
@@ -206,6 +206,13 @@ If you are using [project branching feature](https://docs.lokalise.com/en/articl
|
|
206
206
|
## Updated branch
|
207
207
|
```
|
208
208
|
|
209
|
+
Alternatively:
|
210
|
+
|
211
|
+
```ruby
|
212
|
+
branch = @client.branch('project_id', 'branch_id')
|
213
|
+
branch.update params
|
214
|
+
```
|
215
|
+
|
209
216
|
#### Delete branch
|
210
217
|
|
211
218
|
[Doc](https://lokalise.com/api2docs/curl/#transition-delete-a-branch-delete)
|
@@ -218,6 +225,33 @@ If you are using [project branching feature](https://docs.lokalise.com/en/articl
|
|
218
225
|
## Hash with the project's id and "branch_deleted"=>true
|
219
226
|
```
|
220
227
|
|
228
|
+
Alternatively:
|
229
|
+
|
230
|
+
```ruby
|
231
|
+
branch = @client.branch('project_id', 'branch_id')
|
232
|
+
branch.destroy
|
233
|
+
```
|
234
|
+
|
235
|
+
#### Merge branch
|
236
|
+
|
237
|
+
[Doc](https://lokalise.com/api2docs/curl/#transition-merge-a-branch-post)
|
238
|
+
|
239
|
+
```ruby
|
240
|
+
@client.merge_branch(project_id, branch_id, params) # Input:
|
241
|
+
## project_id (string, required)
|
242
|
+
## branch_id (string or integer, required)
|
243
|
+
## params (hash)
|
244
|
+
# Output:
|
245
|
+
## Hash with the project's id, "branch_merged"=>true, and branch attributes
|
246
|
+
```
|
247
|
+
|
248
|
+
Alternatively:
|
249
|
+
|
250
|
+
```ruby
|
251
|
+
branch = @client.branch('project_id', 'branch_id')
|
252
|
+
branch.merge params
|
253
|
+
```
|
254
|
+
|
221
255
|
### Comments
|
222
256
|
|
223
257
|
[Comments attributes](https://lokalise.com/api2docs/curl/#resource-comments)
|
@@ -3,10 +3,22 @@ module Lokalise
|
|
3
3
|
class Branch < Base
|
4
4
|
supports :update, :destroy
|
5
5
|
|
6
|
+
def merge(params = {})
|
7
|
+
self.class.merge @client, self.class.endpoint(project_id, branch_id, :merge), params
|
8
|
+
end
|
9
|
+
|
6
10
|
class << self
|
7
|
-
def
|
8
|
-
|
9
|
-
|
11
|
+
def merge(client, path, params, *_args)
|
12
|
+
post(path, client, params)['content']
|
13
|
+
end
|
14
|
+
|
15
|
+
def endpoint(project_id, branch_id = nil, action = nil)
|
16
|
+
params = {projects: project_id,
|
17
|
+
branches: branch_id}
|
18
|
+
|
19
|
+
params[:merge] = '' if action == :merge
|
20
|
+
|
21
|
+
path_from params
|
10
22
|
end
|
11
23
|
end
|
12
24
|
end
|
@@ -50,5 +50,16 @@ module Lokalise
|
|
50
50
|
def destroy_branch(project_id, branch_id)
|
51
51
|
c_r Lokalise::Resources::Branch, :destroy, [project_id, branch_id]
|
52
52
|
end
|
53
|
+
|
54
|
+
# Merges a branch in the project
|
55
|
+
#
|
56
|
+
# @see https://lokalise.com/api2docs/curl/#transition-merge-a-branch-post
|
57
|
+
# @return [Hash]
|
58
|
+
# @param project_id [String]
|
59
|
+
# @param branch_id [String, Integer]
|
60
|
+
# @param params [Hash]
|
61
|
+
def merge_branch(project_id, branch_id, params = {})
|
62
|
+
c_r Lokalise::Resources::Branch, :merge, [project_id, branch_id, :merge], params
|
63
|
+
end
|
53
64
|
end
|
54
65
|
end
|
@@ -63,7 +63,45 @@ RSpec.describe Lokalise::Client do
|
|
63
63
|
expect(response['branch_deleted']).to eq(true)
|
64
64
|
end
|
65
65
|
|
66
|
+
specify '#merge_branch' do
|
67
|
+
branch = VCR.use_cassette('create_branch_to_merge') do
|
68
|
+
test_client.create_branch project_id, name: 'merge-me'
|
69
|
+
end
|
70
|
+
|
71
|
+
expect(branch.name).to eq('merge-me')
|
72
|
+
|
73
|
+
branch_id = branch.branch_id
|
74
|
+
|
75
|
+
response = VCR.use_cassette('merge_branch') do
|
76
|
+
test_client.merge_branch project_id, branch_id, force_conflict_resolve_using: 'master'
|
77
|
+
end
|
78
|
+
|
79
|
+
expect(response['project_id']).to eq(project_id)
|
80
|
+
expect(response['branch_merged']).to eq(true)
|
81
|
+
expect(response['branch']['branch_id']).to eq(branch_id)
|
82
|
+
expect(response['branch']['name']).to eq(branch.name)
|
83
|
+
end
|
84
|
+
|
66
85
|
context 'branch chained methods' do
|
86
|
+
it 'should support merge' do
|
87
|
+
branch = VCR.use_cassette('create_branch_to_merge2') do
|
88
|
+
test_client.create_branch project_id, name: 'merge-me-plz'
|
89
|
+
end
|
90
|
+
|
91
|
+
expect(branch.name).to eq('merge-me-plz')
|
92
|
+
|
93
|
+
branch_id = branch.branch_id
|
94
|
+
|
95
|
+
response = VCR.use_cassette('merge_branch_chained') do
|
96
|
+
branch.merge force_conflict_resolve_using: 'master'
|
97
|
+
end
|
98
|
+
|
99
|
+
expect(response['project_id']).to eq(project_id)
|
100
|
+
expect(response['branch_merged']).to eq(true)
|
101
|
+
expect(response['branch']['branch_id']).to eq(branch_id)
|
102
|
+
expect(response['branch']['name']).to eq(branch.name)
|
103
|
+
end
|
104
|
+
|
67
105
|
it 'should support update and destroy' do
|
68
106
|
branch = VCR.use_cassette('create_another_branch') do
|
69
107
|
test_client.create_branch project_id, name: 'ruby-second-branch'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-lokalise-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ilya Bodrov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-11-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|