mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-06-25 07:58:30 +02:00
tests: Use Server::wait_task() instead of Index::wait_task() in settings::
The code is mostly duplicated. Server::wait_task() has better handling for errors and more retries. Signed-off-by: Martin Tzvetanov Grigorov <mgrigorov@apache.org>
This commit is contained in:
parent
fc6cc80705
commit
a237c0797a
@ -7,7 +7,7 @@ async fn set_and_reset_distinct_attribute() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (task1, _code) = index.update_settings(json!({ "distinctAttribute": "test"})).await;
|
let (task1, _code) = index.update_settings(json!({ "distinctAttribute": "test"})).await;
|
||||||
index.wait_task(task1.uid()).await.succeeded();
|
server.wait_task(task1.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.settings().await;
|
let (response, _) = index.settings().await;
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ async fn set_and_reset_distinct_attribute() {
|
|||||||
|
|
||||||
let (task2, _status_code) = index.update_settings(json!({ "distinctAttribute": null })).await;
|
let (task2, _status_code) = index.update_settings(json!({ "distinctAttribute": null })).await;
|
||||||
|
|
||||||
index.wait_task(task2.uid()).await.succeeded();
|
server.wait_task(task2.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.settings().await;
|
let (response, _) = index.settings().await;
|
||||||
|
|
||||||
@ -28,7 +28,7 @@ async fn set_and_reset_distinct_attribute_with_dedicated_route() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (update_task1, _code) = index.update_distinct_attribute(json!("test")).await;
|
let (update_task1, _code) = index.update_distinct_attribute(json!("test")).await;
|
||||||
index.wait_task(update_task1.uid()).await.succeeded();
|
server.wait_task(update_task1.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.get_distinct_attribute().await;
|
let (response, _) = index.get_distinct_attribute().await;
|
||||||
|
|
||||||
@ -36,7 +36,7 @@ async fn set_and_reset_distinct_attribute_with_dedicated_route() {
|
|||||||
|
|
||||||
let (update_task2, _status_code) = index.update_distinct_attribute(json!(null)).await;
|
let (update_task2, _status_code) = index.update_distinct_attribute(json!(null)).await;
|
||||||
|
|
||||||
index.wait_task(update_task2.uid()).await.succeeded();
|
server.wait_task(update_task2.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.get_distinct_attribute().await;
|
let (response, _) = index.get_distinct_attribute().await;
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@ macro_rules! test_setting_routes {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
let (response, code) = index.create(None).await;
|
let (response, code) = index.create(None).await;
|
||||||
assert_eq!(code, 202, "{response}");
|
assert_eq!(code, 202, "{response}");
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
let url = format!("/indexes/{}/settings/{}",
|
let url = format!("/indexes/{}/settings/{}",
|
||||||
index.uid,
|
index.uid,
|
||||||
stringify!($setting)
|
stringify!($setting)
|
||||||
@ -209,7 +209,7 @@ async fn get_settings() {
|
|||||||
let server = Server::new_shared();
|
let server = Server::new_shared();
|
||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
let (response, _code) = index.create(None).await;
|
let (response, _code) = index.create(None).await;
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
assert_eq!(code, 200);
|
assert_eq!(code, 200);
|
||||||
let settings = response.as_object().unwrap();
|
let settings = response.as_object().unwrap();
|
||||||
@ -254,7 +254,7 @@ async fn secrets_are_hidden_in_settings() {
|
|||||||
let server = Server::new_shared();
|
let server = Server::new_shared();
|
||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
let (response, _code) = index.create(None).await;
|
let (response, _code) = index.create(None).await;
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index
|
let (response, code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -285,7 +285,7 @@ async fn secrets_are_hidden_in_settings() {
|
|||||||
|
|
||||||
let settings_update_uid = response.uid();
|
let settings_update_uid = response.uid();
|
||||||
|
|
||||||
index.wait_task(settings_update_uid).await.succeeded();
|
server.wait_task(settings_update_uid).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
meili_snap::snapshot!(code, @"200 OK");
|
meili_snap::snapshot!(code, @"200 OK");
|
||||||
@ -384,14 +384,14 @@ async fn test_partial_update() {
|
|||||||
let server = Server::new_shared();
|
let server = Server::new_shared();
|
||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
let (task, _code) = index.update_settings(json!({"displayedAttributes": ["foo"]})).await;
|
let (task, _code) = index.update_settings(json!({"displayedAttributes": ["foo"]})).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
assert_eq!(code, 200);
|
assert_eq!(code, 200);
|
||||||
assert_eq!(response["displayedAttributes"], json!(["foo"]));
|
assert_eq!(response["displayedAttributes"], json!(["foo"]));
|
||||||
assert_eq!(response["searchableAttributes"], json!(["*"]));
|
assert_eq!(response["searchableAttributes"], json!(["*"]));
|
||||||
|
|
||||||
let (task, _) = index.update_settings(json!({"searchableAttributes": ["bar"]})).await;
|
let (task, _) = index.update_settings(json!({"searchableAttributes": ["bar"]})).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
assert_eq!(code, 200);
|
assert_eq!(code, 200);
|
||||||
@ -406,7 +406,7 @@ async fn error_delete_settings_unexisting_index() {
|
|||||||
let (task, code) = index.delete_settings().await;
|
let (task, code) = index.delete_settings().await;
|
||||||
assert_eq!(code, 202);
|
assert_eq!(code, 202);
|
||||||
|
|
||||||
index.wait_task(task.uid()).await.failed();
|
server.wait_task(task.uid()).await.failed();
|
||||||
}
|
}
|
||||||
|
|
||||||
#[actix_rt::test]
|
#[actix_rt::test]
|
||||||
@ -424,12 +424,12 @@ async fn reset_all_settings() {
|
|||||||
|
|
||||||
let (response, code) = index.add_documents(documents, None).await;
|
let (response, code) = index.add_documents(documents, None).await;
|
||||||
assert_eq!(code, 202);
|
assert_eq!(code, 202);
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
|
|
||||||
let (update_task,_status_code) = index
|
let (update_task,_status_code) = index
|
||||||
.update_settings(json!({"displayedAttributes": ["name", "age"], "searchableAttributes": ["name"], "stopWords": ["the"], "filterableAttributes": ["age"], "synonyms": {"puppy": ["dog", "doggo", "potat"] }}))
|
.update_settings(json!({"displayedAttributes": ["name", "age"], "searchableAttributes": ["name"], "stopWords": ["the"], "filterableAttributes": ["age"], "synonyms": {"puppy": ["dog", "doggo", "potat"] }}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(update_task.uid()).await.succeeded();
|
server.wait_task(update_task.uid()).await.succeeded();
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
assert_eq!(code, 200);
|
assert_eq!(code, 200);
|
||||||
assert_eq!(response["displayedAttributes"], json!(["name", "age"]));
|
assert_eq!(response["displayedAttributes"], json!(["name", "age"]));
|
||||||
@ -439,7 +439,7 @@ async fn reset_all_settings() {
|
|||||||
assert_eq!(response["filterableAttributes"], json!(["age"]));
|
assert_eq!(response["filterableAttributes"], json!(["age"]));
|
||||||
|
|
||||||
let (delete_task, _status_code) = index.delete_settings().await;
|
let (delete_task, _status_code) = index.delete_settings().await;
|
||||||
index.wait_task(delete_task.uid()).await.succeeded();
|
server.wait_task(delete_task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
assert_eq!(code, 200);
|
assert_eq!(code, 200);
|
||||||
@ -460,11 +460,11 @@ async fn update_setting_unexisting_index() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
let (task, code) = index.update_settings(json!({})).await;
|
let (task, code) = index.update_settings(json!({})).await;
|
||||||
assert_eq!(code, 202);
|
assert_eq!(code, 202);
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
let (_response, code) = index.get().await;
|
let (_response, code) = index.get().await;
|
||||||
assert_eq!(code, 200);
|
assert_eq!(code, 200);
|
||||||
let (task, _status_code) = index.delete_settings().await;
|
let (task, _status_code) = index.delete_settings().await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
}
|
}
|
||||||
|
|
||||||
#[actix_rt::test]
|
#[actix_rt::test]
|
||||||
@ -507,7 +507,7 @@ async fn set_and_reset_distinct_attribute_with_dedicated_route() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (task, _code) = index.update_distinct_attribute(json!("test")).await;
|
let (task, _code) = index.update_distinct_attribute(json!("test")).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.get_distinct_attribute().await;
|
let (response, _) = index.get_distinct_attribute().await;
|
||||||
|
|
||||||
@ -515,7 +515,7 @@ async fn set_and_reset_distinct_attribute_with_dedicated_route() {
|
|||||||
|
|
||||||
let (task, _status_code) = index.update_distinct_attribute(json!(null)).await;
|
let (task, _status_code) = index.update_distinct_attribute(json!(null)).await;
|
||||||
|
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.get_distinct_attribute().await;
|
let (response, _) = index.get_distinct_attribute().await;
|
||||||
|
|
||||||
@ -540,7 +540,7 @@ async fn granular_filterable_attributes() {
|
|||||||
{ "attributePatterns": ["default-facet-search"], "features": { "filter": {"equality": true, "comparison": true} } },
|
{ "attributePatterns": ["default-facet-search"], "features": { "filter": {"equality": true, "comparison": true} } },
|
||||||
] })).await;
|
] })).await;
|
||||||
assert_eq!(code, 202);
|
assert_eq!(code, 202);
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index.settings().await;
|
let (response, code) = index.settings().await;
|
||||||
assert_eq!(code, 200, "{response}");
|
assert_eq!(code, 200, "{response}");
|
||||||
|
@ -30,7 +30,7 @@ async fn attribute_scale_search() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index
|
let (response, code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -39,7 +39,7 @@ async fn attribute_scale_search() {
|
|||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!("202", code.as_str(), "{response:?}");
|
assert_eq!("202", code.as_str(), "{response:?}");
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
|
|
||||||
// the expected order is [1, 3, 2] instead of [3, 1, 2]
|
// the expected order is [1, 3, 2] instead of [3, 1, 2]
|
||||||
// because the attribute scale doesn't make the difference between 1 and 3.
|
// because the attribute scale doesn't make the difference between 1 and 3.
|
||||||
@ -103,7 +103,7 @@ async fn attribute_scale_phrase_search() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (task, _code) = index
|
let (task, _code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -111,7 +111,7 @@ async fn attribute_scale_phrase_search() {
|
|||||||
"rankingRules": ["words", "typo", "proximity"],
|
"rankingRules": ["words", "typo", "proximity"],
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
// the expected order is [1, 3] instead of [3, 1]
|
// the expected order is [1, 3] instead of [3, 1]
|
||||||
// because the attribute scale doesn't make the difference between 1 and 3.
|
// because the attribute scale doesn't make the difference between 1 and 3.
|
||||||
@ -171,7 +171,7 @@ async fn word_scale_set_and_reset() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
// Set and reset the setting ensuring the swap between the 2 settings is applied.
|
// Set and reset the setting ensuring the swap between the 2 settings is applied.
|
||||||
let (update_task1, _code) = index
|
let (update_task1, _code) = index
|
||||||
@ -180,7 +180,7 @@ async fn word_scale_set_and_reset() {
|
|||||||
"rankingRules": ["words", "typo", "proximity"],
|
"rankingRules": ["words", "typo", "proximity"],
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(update_task1.uid()).await.succeeded();
|
server.wait_task(update_task1.uid()).await.succeeded();
|
||||||
|
|
||||||
let (update_task2, _code) = index
|
let (update_task2, _code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -188,7 +188,7 @@ async fn word_scale_set_and_reset() {
|
|||||||
"rankingRules": ["words", "typo", "proximity"],
|
"rankingRules": ["words", "typo", "proximity"],
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(update_task2.uid()).await.succeeded();
|
server.wait_task(update_task2.uid()).await.succeeded();
|
||||||
|
|
||||||
// [3, 1, 2]
|
// [3, 1, 2]
|
||||||
index
|
index
|
||||||
@ -286,7 +286,7 @@ async fn attribute_scale_default_ranking_rules() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
let (task, _status_code) = index.add_documents(DOCUMENTS.clone(), None).await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, code) = index
|
let (response, code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -294,7 +294,7 @@ async fn attribute_scale_default_ranking_rules() {
|
|||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
assert_eq!("202", code.as_str(), "{response:?}");
|
assert_eq!("202", code.as_str(), "{response:?}");
|
||||||
index.wait_task(response.uid()).await.succeeded();
|
server.wait_task(response.uid()).await.succeeded();
|
||||||
|
|
||||||
// the expected order is [3, 1, 2]
|
// the expected order is [3, 1, 2]
|
||||||
index
|
index
|
||||||
|
@ -15,7 +15,7 @@ async fn set_and_reset() {
|
|||||||
"dictionary": ["J.R.R.", "J. R. R."],
|
"dictionary": ["J.R.R.", "J. R. R."],
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.settings().await;
|
let (response, _) = index.settings().await;
|
||||||
snapshot!(json_string!(response["nonSeparatorTokens"]), @r###"
|
snapshot!(json_string!(response["nonSeparatorTokens"]), @r###"
|
||||||
@ -45,7 +45,7 @@ async fn set_and_reset() {
|
|||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
|
|
||||||
index.wait_task(task.uid()).await.succeeded();
|
server.wait_task(task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (response, _) = index.settings().await;
|
let (response, _) = index.settings().await;
|
||||||
snapshot!(json_string!(response["nonSeparatorTokens"]), @"[]");
|
snapshot!(json_string!(response["nonSeparatorTokens"]), @"[]");
|
||||||
@ -74,7 +74,7 @@ async fn set_and_search() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (add_task, _status_code) = index.add_documents(documents, None).await;
|
let (add_task, _status_code) = index.add_documents(documents, None).await;
|
||||||
index.wait_task(add_task.uid()).await.succeeded();
|
server.wait_task(add_task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (update_task, _code) = index
|
let (update_task, _code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -83,7 +83,7 @@ async fn set_and_search() {
|
|||||||
"dictionary": ["#", "A#", "B#", "C#", "D#", "E#", "F#", "G#"],
|
"dictionary": ["#", "A#", "B#", "C#", "D#", "E#", "F#", "G#"],
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(update_task.uid()).await.succeeded();
|
server.wait_task(update_task.uid()).await.succeeded();
|
||||||
|
|
||||||
index
|
index
|
||||||
.search(json!({"q": "&", "attributesToHighlight": ["content"]}), |response, code| {
|
.search(json!({"q": "&", "attributesToHighlight": ["content"]}), |response, code| {
|
||||||
@ -228,7 +228,7 @@ async fn advanced_synergies() {
|
|||||||
let index = server.unique_index();
|
let index = server.unique_index();
|
||||||
|
|
||||||
let (add_task, _status_code) = index.add_documents(documents, None).await;
|
let (add_task, _status_code) = index.add_documents(documents, None).await;
|
||||||
index.wait_task(add_task.uid()).await.succeeded();
|
server.wait_task(add_task.uid()).await.succeeded();
|
||||||
|
|
||||||
let (update_task, _code) = index
|
let (update_task, _code) = index
|
||||||
.update_settings(json!({
|
.update_settings(json!({
|
||||||
@ -243,7 +243,7 @@ async fn advanced_synergies() {
|
|||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(update_task.uid()).await.succeeded();
|
server.wait_task(update_task.uid()).await.succeeded();
|
||||||
|
|
||||||
index
|
index
|
||||||
.search(json!({"q": "J.R.R.", "attributesToHighlight": ["content"]}), |response, code| {
|
.search(json!({"q": "J.R.R.", "attributesToHighlight": ["content"]}), |response, code| {
|
||||||
@ -353,7 +353,7 @@ async fn advanced_synergies() {
|
|||||||
"dictionary": ["J.R.R.", "J. R. R.", "J.K.", "J. K."],
|
"dictionary": ["J.R.R.", "J. R. R.", "J.K.", "J. K."],
|
||||||
}))
|
}))
|
||||||
.await;
|
.await;
|
||||||
index.wait_task(_response.uid()).await.succeeded();
|
server.wait_task(_response.uid()).await.succeeded();
|
||||||
|
|
||||||
index
|
index
|
||||||
.search(json!({"q": "jk", "attributesToHighlight": ["content"]}), |response, code| {
|
.search(json!({"q": "jk", "attributesToHighlight": ["content"]}), |response, code| {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user