From 4b107b17cbe18d9d43b9b8b520952442406b55a0 Mon Sep 17 00:00:00 2001 From: Timon Jurschitsch Date: Mon, 6 Jan 2025 17:38:44 +0100 Subject: [PATCH 1/7] test: improve performance of get_index.rs --- crates/meilisearch/tests/common/server.rs | 20 +++++++++ crates/meilisearch/tests/index/get_index.rs | 46 ++++++++++++--------- 2 files changed, 46 insertions(+), 20 deletions(-) diff --git a/crates/meilisearch/tests/common/server.rs b/crates/meilisearch/tests/common/server.rs index 49214d646..1f42ed2ae 100644 --- a/crates/meilisearch/tests/common/server.rs +++ b/crates/meilisearch/tests/common/server.rs @@ -222,6 +222,26 @@ impl Server { (value, code) } + pub async fn list_indexes( + &self, + offset: Option, + limit: Option, + ) -> (Value, StatusCode) { + let (offset, limit) = ( + offset.map(|offset| format!("offset={offset}")), + limit.map(|limit| format!("limit={limit}")), + ); + let query_parameter = offset + .as_ref() + .zip(limit.as_ref()) + .map(|(offset, limit)| format!("{offset}&{limit}")) + .or_else(|| offset.xor(limit)); + if let Some(query_parameter) = query_parameter { + self.service.get(format!("/indexes?{query_parameter}")).await + } else { + self.service.get("/indexes").await + } + } pub async fn update_raw_index_fail( &self, uid: impl AsRef, diff --git a/crates/meilisearch/tests/index/get_index.rs b/crates/meilisearch/tests/index/get_index.rs index ce08251be..fcd0a18fa 100644 --- a/crates/meilisearch/tests/index/get_index.rs +++ b/crates/meilisearch/tests/index/get_index.rs @@ -1,22 +1,22 @@ +use crate::json; use meili_snap::{json_string, snapshot}; -use serde_json::{json, Value}; +use serde_json::Value; use crate::common::Server; #[actix_rt::test] async fn create_and_get_index() { - let server = Server::new().await; - let index = server.index("test"); - let (_, code) = index.create(None).await; + let server = Server::new_shared(); + let index = server.unique_index(); + let (response, code) = index.create(None).await; assert_eq!(code, 202); - index.wait_task(0).await; + index.wait_task(response.uid()).await; let (response, code) = index.get().await; assert_eq!(code, 200); - assert_eq!(response["uid"], "test"); assert!(response.get("createdAt").is_some()); assert!(response.get("updatedAt").is_some()); assert_eq!(response["createdAt"], response["updatedAt"]); @@ -26,13 +26,13 @@ async fn create_and_get_index() { #[actix_rt::test] async fn error_get_unexisting_index() { - let server = Server::new().await; - let index = server.index("test"); + let server = Server::new_shared(); + let index = server.unique_index(); let (response, code) = index.get().await; let expected_response = json!({ - "message": "Index `test` not found.", + "message": format!("Index `{}` not found.", index.uid), "code": "index_not_found", "type": "invalid_request", "link": "https://docs.meilisearch.com/errors#index_not_found" @@ -53,19 +53,25 @@ async fn no_index_return_empty_list() { #[actix_rt::test] async fn list_multiple_indexes() { - let server = Server::new().await; - server.index("test").create(None).await; - server.index("test1").create(Some("key")).await; + let server = Server::new_shared(); + let index1 = server.unique_index(); + let index2 = server.unique_index(); - server.index("test").wait_task(1).await; + let (task1, _) = index1.create(None).await; + let (_task2, _) = index2.create(Some("key")).await; + + index1.wait_task(task1.uid()).await.succeeded(); let (response, code) = server.list_indexes(None, None).await; + dbg!(response.clone()); assert_eq!(code, 200); assert!(response["results"].is_array()); let arr = response["results"].as_array().unwrap(); - assert_eq!(arr.len(), 2); - assert!(arr.iter().any(|entry| entry["uid"] == "test" && entry["primaryKey"] == Value::Null)); - assert!(arr.iter().any(|entry| entry["uid"] == "test1" && entry["primaryKey"] == "key")); + assert!(arr.len() >= 2); + assert!(arr + .iter() + .any(|entry| entry["uid"] == index1.uid && entry["primaryKey"] == Value::Null)); + assert!(arr.iter().any(|entry| entry["uid"] == index2.uid && entry["primaryKey"] == "key")); } #[actix_rt::test] @@ -179,14 +185,14 @@ async fn get_and_paginate_indexes() { #[actix_rt::test] async fn get_invalid_index_uid() { - let server = Server::new().await; - let index = server.index("this is not a valid index name"); - let (response, code) = index.get().await; + let server = Server::new_shared(); + let (response, code) = + server.create_index_fail(json!({ "uid": "this is not a valid index name" }).into()).await; snapshot!(code, @"400 Bad Request"); snapshot!(json_string!(response), @r###" { - "message": "`this is not a valid index name` is not a valid index uid. Index uid can be an integer or a string containing only alphanumeric characters, hyphens (-) and underscores (_), and can not be more than 512 bytes.", + "message": "Invalid value at `.uid`: `this is not a valid index name` is not a valid index uid. Index uid can be an integer or a string containing only alphanumeric characters, hyphens (-) and underscores (_), and can not be more than 512 bytes.", "code": "invalid_index_uid", "type": "invalid_request", "link": "https://docs.meilisearch.com/errors#invalid_index_uid" From 79d192fb3fecaf0050f22efdffb63c19cae5ac13 Mon Sep 17 00:00:00 2001 From: Timon Jurschitsch Date: Thu, 16 Jan 2025 11:42:12 +0100 Subject: [PATCH 2/7] implement suggestions --- crates/index-scheduler/src/scheduler/test.rs | 8 ++++---- crates/meilisearch/tests/index/get_index.rs | 13 ++++++------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/crates/index-scheduler/src/scheduler/test.rs b/crates/index-scheduler/src/scheduler/test.rs index de12cb25d..8e7b7e34d 100644 --- a/crates/index-scheduler/src/scheduler/test.rs +++ b/crates/index-scheduler/src/scheduler/test.rs @@ -899,7 +899,7 @@ fn create_and_list_index() { index_scheduler.index("kefir").unwrap(); let list = index_scheduler.get_paginated_indexes_stats(&AuthFilter::default(), 0, 20).unwrap(); - snapshot!(json_string!(list, { "[1][0][1].created_at" => "[date]", "[1][0][1].updated_at" => "[date]" }), @r#" + snapshot!(json_string!(list, { "[1][0][1].created_at" => "[date]", "[1][0][1].updated_at" => "[date]" }), @r###" [ 1, [ @@ -907,8 +907,8 @@ fn create_and_list_index() { "kefir", { "number_of_documents": 0, - "database_size": 24576, - "used_database_size": 8192, + "database_size": 98304, + "used_database_size": 32768, "primary_key": null, "field_distribution": {}, "created_at": "[date]", @@ -917,5 +917,5 @@ fn create_and_list_index() { ] ] ] - "#); + "###); } diff --git a/crates/meilisearch/tests/index/get_index.rs b/crates/meilisearch/tests/index/get_index.rs index baa379243..70acbcdb1 100644 --- a/crates/meilisearch/tests/index/get_index.rs +++ b/crates/meilisearch/tests/index/get_index.rs @@ -2,7 +2,7 @@ use crate::json; use meili_snap::{json_string, snapshot}; use serde_json::Value; -use crate::common::Server; +use crate::common::{shared_does_not_exists_index, Server}; #[actix_rt::test] async fn create_and_get_index() { @@ -26,13 +26,12 @@ async fn create_and_get_index() { #[actix_rt::test] async fn error_get_unexisting_index() { - let server = Server::new_shared(); - let index = server.unique_index(); + let index = shared_does_not_exists_index().await; let (response, code) = index.get().await; let expected_response = json!({ - "message": format!("Index `{}` not found.", index.uid), + "message": "Index `DOES_NOT_EXISTS` not found.", "code": "index_not_found", "type": "invalid_request", "link": "https://docs.meilisearch.com/errors#index_not_found" @@ -57,10 +56,10 @@ async fn list_multiple_indexes() { let index1 = server.unique_index(); let index2 = server.unique_index(); - let (task1, _) = index1.create(None).await; - let (_task2, _) = index2.create(Some("key")).await; + let (_task1, _) = index1.create(None).await; + let (task2, _) = index2.create(Some("key")).await; - index1.wait_task(task1.uid()).await.succeeded(); + index1.wait_task(task2.uid()).await.succeeded(); let (response, code) = server.list_indexes(None, None).await; dbg!(response.clone()); From 3f501c9b8541fff44261bb256f08e2667cc0b52d Mon Sep 17 00:00:00 2001 From: Timon Jurschitsch <103483059+DerTimonius@users.noreply.github.com> Date: Thu, 16 Jan 2025 16:13:14 +0100 Subject: [PATCH 3/7] Update crates/index-scheduler/src/scheduler/test.rs Co-authored-by: Tamo --- crates/index-scheduler/src/scheduler/test.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/index-scheduler/src/scheduler/test.rs b/crates/index-scheduler/src/scheduler/test.rs index 8e7b7e34d..e109828c0 100644 --- a/crates/index-scheduler/src/scheduler/test.rs +++ b/crates/index-scheduler/src/scheduler/test.rs @@ -899,7 +899,7 @@ fn create_and_list_index() { index_scheduler.index("kefir").unwrap(); let list = index_scheduler.get_paginated_indexes_stats(&AuthFilter::default(), 0, 20).unwrap(); - snapshot!(json_string!(list, { "[1][0][1].created_at" => "[date]", "[1][0][1].updated_at" => "[date]" }), @r###" + snapshot!(json_string!(list, { "[1][0][1].created_at" => "[date]", "[1][0][1].updated_at" => "[date]", "[1][0][1].database_size" => "[bytes]", "[1][0][1].used_database_size" => "[bytes]" }), @r###" [ 1, [ From 9eae36ce3e55c7486a73c9e2c5fc6bef4a126474 Mon Sep 17 00:00:00 2001 From: Timon Jurschitsch Date: Thu, 16 Jan 2025 17:17:06 +0100 Subject: [PATCH 4/7] update snapshot --- crates/index-scheduler/src/scheduler/test.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/index-scheduler/src/scheduler/test.rs b/crates/index-scheduler/src/scheduler/test.rs index e109828c0..ff2b5111f 100644 --- a/crates/index-scheduler/src/scheduler/test.rs +++ b/crates/index-scheduler/src/scheduler/test.rs @@ -907,8 +907,8 @@ fn create_and_list_index() { "kefir", { "number_of_documents": 0, - "database_size": 98304, - "used_database_size": 32768, + "database_size": "[bytes]", + "used_database_size": "[bytes]", "primary_key": null, "field_distribution": {}, "created_at": "[date]", From 0991cb0de410b607b5736aed445ff34f6eb1af40 Mon Sep 17 00:00:00 2001 From: Timon Jurschitsch Date: Tue, 21 Jan 2025 17:01:45 +0100 Subject: [PATCH 5/7] change list_multiple_indexes test to single server --- crates/meilisearch/tests/index/get_index.rs | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/crates/meilisearch/tests/index/get_index.rs b/crates/meilisearch/tests/index/get_index.rs index 70acbcdb1..9ef089c78 100644 --- a/crates/meilisearch/tests/index/get_index.rs +++ b/crates/meilisearch/tests/index/get_index.rs @@ -52,25 +52,19 @@ async fn no_index_return_empty_list() { #[actix_rt::test] async fn list_multiple_indexes() { - let server = Server::new_shared(); - let index1 = server.unique_index(); - let index2 = server.unique_index(); + let server = Server::new().await; + server.index("test").create(None).await; + let (task, _status_code) = server.index("test1").create(Some("key")).await; - let (_task1, _) = index1.create(None).await; - let (task2, _) = index2.create(Some("key")).await; - - index1.wait_task(task2.uid()).await.succeeded(); + server.index("test").wait_task(task.uid()).await.succeeded(); let (response, code) = server.list_indexes(None, None).await; - dbg!(response.clone()); assert_eq!(code, 200); assert!(response["results"].is_array()); let arr = response["results"].as_array().unwrap(); - assert!(arr.len() >= 2); - assert!(arr - .iter() - .any(|entry| entry["uid"] == index1.uid && entry["primaryKey"] == Value::Null)); - assert!(arr.iter().any(|entry| entry["uid"] == index2.uid && entry["primaryKey"] == "key")); + assert_eq!(arr.len(), 2); + assert!(arr.iter().any(|entry| entry["uid"] == "test" && entry["primaryKey"] == Value::Null)); + assert!(arr.iter().any(|entry| entry["uid"] == "test1" && entry["primaryKey"] == "key")); } #[actix_rt::test] From 2f257fdc3d55296081524d93f4b7f17d7f787c82 Mon Sep 17 00:00:00 2001 From: Timon Jurschitsch Date: Tue, 21 Jan 2025 17:11:29 +0100 Subject: [PATCH 6/7] fix clippy error --- crates/meilisearch/tests/index/get_index.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/meilisearch/tests/index/get_index.rs b/crates/meilisearch/tests/index/get_index.rs index 9ef089c78..a436b649b 100644 --- a/crates/meilisearch/tests/index/get_index.rs +++ b/crates/meilisearch/tests/index/get_index.rs @@ -180,7 +180,7 @@ async fn get_and_paginate_indexes() { async fn get_invalid_index_uid() { let server = Server::new_shared(); let (response, code) = - server.create_index_fail(json!({ "uid": "this is not a valid index name" }).into()).await; + server.create_index_fail(json!({ "uid": "this is not a valid index name" })).await; snapshot!(code, @"400 Bad Request"); snapshot!(json_string!(response), @r###" From da7469be38f2ba5bf15454198908e81e5eeef33a Mon Sep 17 00:00:00 2001 From: Tamo Date: Mon, 27 Jan 2025 10:35:34 +0100 Subject: [PATCH 7/7] removed unrelated files --- crates/meilisearch/db.snapshot | Bin 13101 -> 0 bytes .../.prefix_search_settings.rs.pending-snap | 9 ------- .../tests/similar/.errors.rs.pending-snap | 1 - .../tests/vector/.openai.rs.pending-snap | 1 - .../tests/vector/.rest.rs.pending-snap | 23 ------------------ 5 files changed, 34 deletions(-) delete mode 100644 crates/meilisearch/db.snapshot delete mode 100644 crates/meilisearch/tests/settings/.prefix_search_settings.rs.pending-snap delete mode 100644 crates/meilisearch/tests/similar/.errors.rs.pending-snap delete mode 100644 crates/meilisearch/tests/vector/.openai.rs.pending-snap delete mode 100644 crates/meilisearch/tests/vector/.rest.rs.pending-snap diff --git a/crates/meilisearch/db.snapshot b/crates/meilisearch/db.snapshot deleted file mode 100644 index 20a806f4bcc8d381c6812db2be7e476368d16697..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13101 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 of day so\",\n \"b\": \"manythe manythelazyfish\"\n }\n },\n {\n \"id\": 1,\n \"a\": \"Soup of the day\",\n \"b\": \"manythefishou\",\n \"_formatted\": {\n \"id\": \"1\",\n \"a\": \"Soup of the day\",\n \"b\": \"manythefishou\"\n }\n },\n {\n \"id\": 3,\n \"a\": \"the Soup of day\",\n \"b\": \"manythelazyfish\",\n \"_formatted\": {\n \"id\": \"3\",\n \"a\": \"the Soup of day\",\n \"b\": \"manythelazyfish\"\n }\n }\n]"},"old":{"module_name":"integration__settings__prefix_search_settings","metadata":{},"snapshot":"[\n {\n \"id\": 2,\n \"a\": \"Soup of day so\",\n \"b\": \"manythe manythelazyfish\",\n \"_formatted\": {\n \"id\": \"2\",\n \"a\": \"Soup of day so\",\n \"b\": \"manythe manythelazyfish\"\n }\n }\n]"}} -{"run_id":"1737725573-949900000","line":381,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":382,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":381,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":382,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":421,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":422,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":421,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":422,"new":null,"old":null} diff --git a/crates/meilisearch/tests/similar/.errors.rs.pending-snap b/crates/meilisearch/tests/similar/.errors.rs.pending-snap deleted file mode 100644 index 0b9953c6c..000000000 --- a/crates/meilisearch/tests/similar/.errors.rs.pending-snap +++ /dev/null @@ -1 +0,0 @@ -{"run_id":"1737725573-949900000","line":492,"new":{"module_name":"integration__similar__errors","snapshot_name":"filter_invalid_attribute_string","metadata":{"source":"crates/meilisearch/tests/similar/errors.rs","assertion_line":492},"snapshot":"500 Internal Server Error"},"old":{"module_name":"integration__similar__errors","metadata":{},"snapshot":"202 Accepted"}} diff --git a/crates/meilisearch/tests/vector/.openai.rs.pending-snap b/crates/meilisearch/tests/vector/.openai.rs.pending-snap deleted file mode 100644 index 94bd87f98..000000000 --- a/crates/meilisearch/tests/vector/.openai.rs.pending-snap +++ /dev/null @@ -1 +0,0 @@ -{"run_id":"1737725573-949900000","line":1913,"new":{"module_name":"integration__vector__openai","snapshot_name":"timeout","metadata":{"source":"crates/meilisearch/tests/vector/openai.rs","assertion_line":1913},"snapshot":"\"failed\""},"old":{"module_name":"integration__vector__openai","metadata":{},"snapshot":"\"succeeded\""}} diff --git a/crates/meilisearch/tests/vector/.rest.rs.pending-snap b/crates/meilisearch/tests/vector/.rest.rs.pending-snap deleted file mode 100644 index 5b268e3b7..000000000 --- a/crates/meilisearch/tests/vector/.rest.rs.pending-snap +++ /dev/null @@ -1,23 +0,0 @@ -{"run_id":"1737725573-949900000","line":2022,"new":{"module_name":"integration__vector__rest","snapshot_name":"searchable_reindex","metadata":{"source":"crates/meilisearch/tests/vector/rest.rs","assertion_line":2022},"snapshot":"{\n \"uid\": \"[uid]\",\n \"batchUid\": \"[batch_uid]\",\n \"indexUid\": \"doggo\",\n \"status\": \"failed\",\n \"type\": \"settingsUpdate\",\n \"canceledBy\": null,\n \"details\": {\n \"searchableAttributes\": [\n \"name\",\n \"missing_field\"\n ],\n \"embedders\": {\n \"rest\": {\n \"source\": \"rest\",\n \"dimensions\": 3,\n \"url\": \"[url]\",\n \"request\": \"{{text}}\",\n \"response\": {\n \"data\": \"{{embedding}}\"\n }\n }\n }\n },\n \"error\": {\n \"message\": \"Index `3bf3e3d4-1139-4198-972c-41133c6cd284`: Too many open files (os error 24)\",\n \"code\": \"too_many_open_files\",\n \"type\": \"system\",\n \"link\": \"https://docs.meilisearch.com/errors#too_many_open_files\"\n },\n \"duration\": \"[duration]\",\n \"enqueuedAt\": \"[date]\",\n \"startedAt\": \"[date]\",\n \"finishedAt\": \"[date]\"\n}"},"old":{"module_name":"integration__vector__rest","metadata":{},"snapshot":"{\n \"uid\": \"[uid]\",\n \"batchUid\": \"[batch_uid]\",\n \"indexUid\": \"doggo\",\n \"status\": \"succeeded\",\n \"type\": \"settingsUpdate\",\n \"canceledBy\": null,\n \"details\": {\n \"searchableAttributes\": [\n \"name\",\n \"missing_field\"\n ],\n \"embedders\": {\n \"rest\": {\n \"source\": \"rest\",\n \"dimensions\": 3,\n \"url\": \"[url]\",\n \"request\": \"{{text}}\",\n \"response\": {\n \"data\": \"{{embedding}}\"\n }\n }\n }\n },\n \"error\": null,\n \"duration\": \"[duration]\",\n \"enqueuedAt\": \"[date]\",\n \"startedAt\": \"[date]\",\n \"finishedAt\": \"[date]\"\n}"}} -{"run_id":"1737725573-949900000","line":422,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":423,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":445,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":446,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":468,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":469,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":491,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":492,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":518,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":519,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":539,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":540,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":560,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":561,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":581,"new":null,"old":null} -{"run_id":"1737725573-949900000","line":582,"new":null,"old":null} -{"run_id":"1737725634-53518000","line":2020,"new":null,"old":null} -{"run_id":"1737725634-53518000","line":2022,"new":null,"old":null} -{"run_id":"1737725634-53518000","line":2057,"new":null,"old":null} -{"run_id":"1737725634-53518000","line":2059,"new":null,"old":null} -{"run_id":"1737725634-53518000","line":2086,"new":null,"old":null} -{"run_id":"1737725634-53518000","line":2088,"new":null,"old":null}