feat: refactor code and add new search functionality
This commit is contained in:
@@ -34,4 +34,51 @@ mod tests {
|
||||
let resp = test::call_service(&app, req).await;
|
||||
assert!(resp.status() == 201);
|
||||
}
|
||||
|
||||
#[actix_web::test]
|
||||
async fn test_get_number_of_documents() {
|
||||
let mut search_engine = SearchEngine::new(1.5, 0.75);
|
||||
search_engine.index("https://example.com", "This is an example document");
|
||||
|
||||
let app_state = web::Data::new(AppStateWithSearchEngine {
|
||||
search_engine: Mutex::new(search_engine.clone()),
|
||||
});
|
||||
|
||||
let app = test::init_service(App::new()
|
||||
.app_data(app_state.clone())
|
||||
.route(
|
||||
"/search/index/number_of_documents",
|
||||
web::get().to(search::get_number_of_documents),
|
||||
)
|
||||
).await;
|
||||
|
||||
let req = test::TestRequest::get()
|
||||
.uri("/search/index/number_of_documents")
|
||||
.to_request();
|
||||
|
||||
let resp = test::call_service(&app, req).await;
|
||||
assert!(resp.status() == 200);
|
||||
}
|
||||
|
||||
#[actix_web::test]
|
||||
async fn test_search() {
|
||||
let mut search_engine = SearchEngine::new(1.5, 0.75);
|
||||
search_engine.index("https://example.com", "This is an example document");
|
||||
|
||||
let app_state = web::Data::new(AppStateWithSearchEngine {
|
||||
search_engine: Mutex::new(search_engine.clone()),
|
||||
});
|
||||
|
||||
let app = test::init_service(App::new()
|
||||
.app_data(app_state.clone())
|
||||
.route("/search", web::get().to(search::search))
|
||||
).await;
|
||||
|
||||
let req = test::TestRequest::get()
|
||||
.uri("/search?query=example")
|
||||
.to_request();
|
||||
|
||||
let resp = test::call_service(&app, req).await;
|
||||
assert!(resp.status() == 200);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user