feat: refactor code and add new search functionality

This commit is contained in:
2024-02-12 23:53:05 +01:00
parent 2acbdb9f37
commit 242f7138f2
3 changed files with 51 additions and 12 deletions

View File

@@ -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);
}
}