Skip to content

Commit 0e963ec

Browse files
meili-bors[bot]meili-botcurquiza
authored
Merge #258
258: Changes related to the next MeiliSearch release (v0.24.0) r=curquiza a=meili-bot Related to this issue: meilisearch/integration-guides#149 This PR: - gathers the changes related to the next MeiliSearch release (v0.24.0) so that this package is ready when the official release is out. - should pass the tests against the [latest pre-release of MeiliSearch](https://github.com/meilisearch/MeiliSearch/releases). - might eventually contain test failures until the MeiliSearch v0.24.0 is out. ⚠️ This PR should NOT be merged until the next release of MeiliSearch (v0.24.0) is out. _This PR is auto-generated for the [pre-release week](https://github.com/meilisearch/integration-guides/blob/master/guides/pre-release-week.md) purpose._ Co-authored-by: meili-bot <[email protected]> Co-authored-by: Clémentine Urquizar - curqui <[email protected]> Co-authored-by: Clémentine Urquizar <[email protected]>
2 parents 2a15ce0 + b79aa3b commit 0e963ec

File tree

9 files changed

+38
-23
lines changed

9 files changed

+38
-23
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ JSON output:
198198

199199
## 🤖 Compatibility with MeiliSearch
200200

201-
This package only guarantees the compatibility with the [version v0.23.0 of MeiliSearch](https://github.com/meilisearch/MeiliSearch/releases/tag/v0.23.0).
201+
This package only guarantees the compatibility with the [version v0.24.0 of MeiliSearch](https://github.com/meilisearch/MeiliSearch/releases/tag/v0.24.0).
202202

203203
## 💡 Learn More
204204

lib/meilisearch/error.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@ def initialize(http_code, http_message, http_body)
2929

3030
def get_meilisearch_error_info(http_body)
3131
@http_body = JSON.parse(http_body)
32-
@ms_code = @http_body['errorCode']
32+
@ms_code = @http_body['code']
3333
@ms_message = @http_body['message']
34-
@ms_type = @http_body['errorType']
35-
@ms_link = @http_body['errorLink']
34+
@ms_type = @http_body['type']
35+
@ms_link = @http_body['link']
3636
rescue JSON::ParserError
3737
# We might receive a JSON::ParserError when, for example, MeiliSearch is running behind
3838
# some proxy (ELB or Nginx, for example), and the request timeouts, returning us

spec/meilisearch/client/dumps_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
it 'fails to get dump status without uid' do
2121
expect do
2222
client.dump_status('uid_not_exists')
23-
end.to raise_meilisearch_api_error_with(404, 'not_found', 'invalid_request_error')
23+
end.to raise_meilisearch_api_error_with(404, 'dump_not_found', 'invalid_request')
2424
end
2525

2626
it 'works with method aliases' do

spec/meilisearch/client/indexes_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@
5656

5757
expect do
5858
client.create_index('existing_index')
59-
end.to raise_meilisearch_api_error_with(400, 'index_already_exists', 'invalid_request_error')
59+
end.to raise_meilisearch_api_error_with(409, 'index_already_exists', 'invalid_request')
6060
end
6161
end
6262

6363
context 'when the uid format is invalid' do
6464
it 'raises an error' do
6565
expect do
6666
client.create_index('two words')
67-
end.to raise_meilisearch_api_error_with(400, 'invalid_index_uid', 'invalid_request_error')
67+
end.to raise_meilisearch_api_error_with(400, 'invalid_index_uid', 'invalid_request')
6868
end
6969
end
7070
end

spec/meilisearch/client/keys_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,22 @@
1515
new_client = MeiliSearch::Client.new(URL, public_key)
1616
expect do
1717
new_client.index(random_uid).settings
18-
end.to raise_meilisearch_api_error_with(403, 'invalid_token', 'authentication_error')
18+
end.to raise_meilisearch_api_error_with(403, 'invalid_api_key', 'auth')
1919
end
2020

2121
it 'fails to get keys if private key used' do
2222
private_key = client.keys['private']
2323
new_client = MeiliSearch::Client.new(URL, private_key)
2424
expect do
2525
new_client.keys
26-
end.to raise_meilisearch_api_error_with(403, 'invalid_token', 'authentication_error')
26+
end.to raise_meilisearch_api_error_with(403, 'invalid_api_key', 'auth')
2727
end
2828

2929
it 'fails to search if no key used' do
3030
new_client = MeiliSearch::Client.new(URL)
3131
expect do
3232
new_client.index(random_uid).settings
33-
end.to raise_meilisearch_api_error_with(401, 'missing_authorization_header', 'authentication_error')
33+
end.to raise_meilisearch_api_error_with(401, 'missing_authorization_header', 'auth')
3434
end
3535

3636
it 'succeeds to search when using public key' do

spec/meilisearch/index/base_spec.rb

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,19 @@
4545
end
4646

4747
it 'updates primary-key of index if not defined before' do
48+
index = client.create_index('uid', primaryKey: 'primary_key')
49+
index.update(primaryKey: 'new_primary_key')
50+
expect(index).to be_a(MeiliSearch::Index)
51+
expect(index.uid).to eq('uid')
52+
expect(index.primary_key).to eq('new_primary_key')
53+
expect(index.fetch_primary_key).to eq('new_primary_key')
54+
expect(index.created_at).to be_a(Time)
55+
expect(index.created_at).to be_within(60).of(Time.now)
56+
expect(index.updated_at).to be_a(Time)
57+
expect(index.updated_at).to be_within(60).of(Time.now)
58+
end
59+
60+
it 'updates primary-key of index if has been defined before but there is not docs' do
4861
index = client.create_index('uid')
4962
index.update(primaryKey: 'new_primary_key')
5063
expect(index).to be_a(MeiliSearch::Index)
@@ -58,13 +71,15 @@
5871
end
5972

6073
it 'returns error if trying to update primary-key if it is already defined' do
61-
index = client.create_index('uid', primaryKey: 'primary_key')
74+
index = client.index('uid')
75+
update = index.add_documents({ id: 1, title: 'My Title' })
76+
index.wait_for_pending_update(update['updateId'])
6277
expect do
6378
index.update(primaryKey: 'new_primary_key')
6479
end.to raise_meilisearch_api_error_with(
6580
400,
66-
'primary_key_already_present',
67-
'invalid_request_error'
81+
'index_primary_key_already_exists',
82+
'invalid_request'
6883
)
6984
end
7085

spec/meilisearch/index/documents_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -486,7 +486,7 @@
486486
response = index.add_documents!(documents)
487487
update = index.get_update_status(response['updateId'])
488488
expect(update['status']).to eq('failed')
489-
expect(update['errorCode']).to eq('missing_primary_key')
489+
expect(update['error']['code']).to eq('primary_key_inference_failed')
490490
end
491491
end
492492

spec/meilisearch/index/settings_spec.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,8 @@
127127

128128
response = index.get_update_status(response['updateId'])
129129

130-
expect(response.keys).to include('message')
131-
expect(response['errorCode']).to eq('invalid_request')
130+
expect(response.keys).to include('error')
131+
expect(response['error']['code']).to eq('invalid_ranking_rule')
132132
end
133133

134134
it 'resets ranking rules' do
@@ -562,8 +562,8 @@
562562
response = index.add_documents(title: 'Test')
563563
index.wait_for_pending_update(response['updateId'])
564564
response = index.get_update_status(response['updateId'])
565-
expect(response.keys).to include('message')
566-
expect(response['errorCode']).to eq('missing_primary_key')
565+
expect(response.keys).to include('error')
566+
expect(response['error']['code']).to eq('primary_key_inference_failed')
567567
end
568568

569569
it 'adds documents when there is a primary-key' do

spec/support/exceptions_helpers.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,31 +14,31 @@ def raise_bad_request_meilisearch_api_error
1414
raise_meilisearch_api_error_with(
1515
400,
1616
'bad_request',
17-
'invalid_request_error'
17+
'invalid_request'
1818
)
1919
end
2020

2121
def raise_index_not_found_meilisearch_api_error
2222
raise_meilisearch_api_error_with(
2323
404,
2424
'index_not_found',
25-
'invalid_request_error'
25+
'invalid_request'
2626
)
2727
end
2828

2929
def raise_document_not_found_meilisearch_api_error
3030
raise_meilisearch_api_error_with(
3131
404,
3232
'document_not_found',
33-
'invalid_request_error'
33+
'invalid_request'
3434
)
3535
end
3636

3737
def raise_missing_primary_key_meilisearch_api_error
3838
raise_meilisearch_api_error_with(
3939
400,
40-
'missing_primary_key',
41-
'invalid_request_error'
40+
'primary_key_inference_failed',
41+
'invalid_request'
4242
)
4343
end
4444
end

0 commit comments

Comments
 (0)