mirror of
				https://github.com/meilisearch/meilisearch.git
				synced 2025-10-31 07:56:28 +00:00 
			
		
		
		
	fix tests
This commit is contained in:
		| @@ -2,12 +2,14 @@ use std::path::Path; | ||||
|  | ||||
| use actix_web::http::StatusCode; | ||||
| use byte_unit::{Byte, ByteUnit}; | ||||
| use meilisearch_http::setup_meilisearch; | ||||
| use meilisearch_lib::options::{IndexerOpts, MaxMemory}; | ||||
| use once_cell::sync::Lazy; | ||||
| use serde_json::Value; | ||||
| use tempdir::TempDir; | ||||
| use tempfile::TempDir; | ||||
| use urlencoding::encode; | ||||
|  | ||||
| use meilisearch_http::data::Data; | ||||
| use meilisearch_http::option::{IndexerOpts, MaxMemory, Opt}; | ||||
| use meilisearch_http::option::Opt; | ||||
|  | ||||
| use super::index::Index; | ||||
| use super::service::Service; | ||||
| @@ -15,17 +17,25 @@ use super::service::Service; | ||||
| pub struct Server { | ||||
|     pub service: Service, | ||||
|     // hold ownership to the tempdir while we use the server instance. | ||||
|     _dir: Option<tempdir::TempDir>, | ||||
|     _dir: Option<TempDir>, | ||||
| } | ||||
|  | ||||
| static TEST_TEMP_DIR: Lazy<TempDir> = Lazy::new(|| TempDir::new().unwrap()); | ||||
|  | ||||
| impl Server { | ||||
|     pub async fn new() -> Self { | ||||
|         let dir = TempDir::new("meilisearch").unwrap(); | ||||
|         let dir = TempDir::new().unwrap(); | ||||
|  | ||||
|         let opt = default_settings(dir.path()); | ||||
|         if cfg!(windows) { | ||||
|             std::env::set_var("TMP", TEST_TEMP_DIR.path()); | ||||
|         } else { | ||||
|             std::env::set_var("TMPDIR", TEST_TEMP_DIR.path()); | ||||
|         } | ||||
|  | ||||
|         let data = Data::new(opt).unwrap(); | ||||
|         let service = Service(data); | ||||
|         let options = default_settings(dir.path()); | ||||
|  | ||||
|         let meilisearch = setup_meilisearch(&options).unwrap(); | ||||
|         let service = Service { meilisearch, options }; | ||||
|  | ||||
|         Server { | ||||
|             service, | ||||
| @@ -33,9 +43,9 @@ impl Server { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     pub async fn new_with_options(opt: Opt) -> Self { | ||||
|         let data = Data::new(opt).unwrap(); | ||||
|         let service = Service(data); | ||||
|     pub async fn new_with_options(options: Opt) -> Self { | ||||
|         let meilisearch = setup_meilisearch(&options).unwrap(); | ||||
|         let service = Service { meilisearch, options }; | ||||
|  | ||||
|         Server { | ||||
|             service, | ||||
|   | ||||
| @@ -1,14 +1,17 @@ | ||||
| use actix_web::{http::StatusCode, test}; | ||||
| use meilisearch_lib::MeiliSearch; | ||||
| use serde_json::Value; | ||||
|  | ||||
| use meilisearch_http::create_app; | ||||
| use meilisearch_http::data::Data; | ||||
| use meilisearch_http::{Opt, create_app}; | ||||
|  | ||||
| pub struct Service(pub Data); | ||||
| pub struct Service { | ||||
|     pub meilisearch: MeiliSearch, | ||||
|     pub options: Opt, | ||||
| } | ||||
|  | ||||
| impl Service { | ||||
|     pub async fn post(&self, url: impl AsRef<str>, body: Value) -> (Value, StatusCode) { | ||||
|         let app = test::init_service(create_app!(&self.0, true)).await; | ||||
|         let app = test::init_service(create_app!(&self.meilisearch, true, &self.options)).await; | ||||
|  | ||||
|         let req = test::TestRequest::post() | ||||
|             .uri(url.as_ref()) | ||||
| @@ -28,7 +31,7 @@ impl Service { | ||||
|         url: impl AsRef<str>, | ||||
|         body: impl AsRef<str>, | ||||
|     ) -> (Value, StatusCode) { | ||||
|         let app = test::init_service(create_app!(&self.0, true)).await; | ||||
|         let app = test::init_service(create_app!(&self.meilisearch, true, &self.options)).await; | ||||
|  | ||||
|         let req = test::TestRequest::post() | ||||
|             .uri(url.as_ref()) | ||||
| @@ -44,7 +47,7 @@ impl Service { | ||||
|     } | ||||
|  | ||||
|     pub async fn get(&self, url: impl AsRef<str>) -> (Value, StatusCode) { | ||||
|         let app = test::init_service(create_app!(&self.0, true)).await; | ||||
|         let app = test::init_service(create_app!(&self.meilisearch, true, &self.options)).await; | ||||
|  | ||||
|         let req = test::TestRequest::get().uri(url.as_ref()).to_request(); | ||||
|         let res = test::call_service(&app, req).await; | ||||
| @@ -56,7 +59,7 @@ impl Service { | ||||
|     } | ||||
|  | ||||
|     pub async fn put(&self, url: impl AsRef<str>, body: Value) -> (Value, StatusCode) { | ||||
|         let app = test::init_service(create_app!(&self.0, true)).await; | ||||
|         let app = test::init_service(create_app!(&self.meilisearch, true, &self.options)).await; | ||||
|  | ||||
|         let req = test::TestRequest::put() | ||||
|             .uri(url.as_ref()) | ||||
| @@ -71,7 +74,7 @@ impl Service { | ||||
|     } | ||||
|  | ||||
|     pub async fn delete(&self, url: impl AsRef<str>) -> (Value, StatusCode) { | ||||
|         let app = test::init_service(create_app!(&self.0, true)).await; | ||||
|         let app = test::init_service(create_app!(&self.meilisearch, true, &self.options)).await; | ||||
|  | ||||
|         let req = test::TestRequest::delete().uri(url.as_ref()).to_request(); | ||||
|         let res = test::call_service(&app, req).await; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user