mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-07-03 20:07:09 +02:00
fix error 500 when sending bad rankingRules; fix #500
This commit is contained in:
parent
8aeddec982
commit
8df6d6e954
3 changed files with 53 additions and 8 deletions
|
@ -260,6 +260,11 @@ impl Server {
|
|||
self.post_request_async(&url, body);
|
||||
}
|
||||
|
||||
pub fn update_ranking_rules_sync(&mut self, body: Value) -> (Value, StatusCode) {
|
||||
let url = format!("/indexes/{}/settings/ranking-rules", self.uid);
|
||||
self.post_request(&url, body)
|
||||
}
|
||||
|
||||
pub fn delete_ranking_rules(&mut self) -> (Value, StatusCode) {
|
||||
let url = format!("/indexes/{}/settings/ranking-rules", self.uid);
|
||||
self.delete_request_async(&url)
|
||||
|
|
|
@ -37,7 +37,7 @@ fn write_all_and_delete() {
|
|||
|
||||
let (response, _status_code) = server.get_ranking_rules();
|
||||
|
||||
let json = json!([
|
||||
let expected = json!([
|
||||
"typo",
|
||||
"words",
|
||||
"proximity",
|
||||
|
@ -46,7 +46,7 @@ fn write_all_and_delete() {
|
|||
"exactness"
|
||||
]);
|
||||
|
||||
assert_json_eq!(expect, response, ordered: false);
|
||||
assert_json_eq!(expected, response, ordered: false);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -105,3 +105,37 @@ fn write_all_and_update() {
|
|||
|
||||
assert_json_eq!(expected, response, ordered: false);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn send_undefined_rule() {
|
||||
let mut server = common::Server::with_uid("movies");
|
||||
let body = json!({
|
||||
"uid": "movies",
|
||||
"identifier": "id",
|
||||
});
|
||||
server.create_index(body);
|
||||
|
||||
let body = json!([
|
||||
"typos",
|
||||
]);
|
||||
|
||||
let (_response, status_code) = server.update_ranking_rules_sync(body);
|
||||
assert_eq!(status_code, 400);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn send_malformed_custom_rule() {
|
||||
let mut server = common::Server::with_uid("movies");
|
||||
let body = json!({
|
||||
"uid": "movies",
|
||||
"identifier": "id",
|
||||
});
|
||||
server.create_index(body);
|
||||
|
||||
let body = json!([
|
||||
"dsc(truc)",
|
||||
]);
|
||||
|
||||
let (_response, status_code) = server.update_ranking_rules_sync(body);
|
||||
assert_eq!(status_code, 400);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue