This commit is contained in:
Guillaume Mourier 2022-10-28 18:22:26 +02:00 committed by Louis Dureuil
parent 426d63b01b
commit 65a3086cf1
No known key found for this signature in database
3 changed files with 3 additions and 3 deletions

View File

@ -92,7 +92,7 @@ impl FromStr for Member {
Ok(Member::Geo([lat, lng])) Ok(Member::Geo([lat, lng]))
} }
None => { None => {
if is_reserved_keyword(text) || text.starts_with("_geoRadius(") { if is_reserved_keyword(text) || text.starts_with("_geoRadius(") || text.starts_with("_geoBoundingBox(") {
return Err(AscDescError::ReservedKeyword { name: text.to_string() })?; return Err(AscDescError::ReservedKeyword { name: text.to_string() })?;
} }
Ok(Member::Field(text.to_string())) Ok(Member::Field(text.to_string()))

View File

@ -160,7 +160,7 @@ mod tests {
("_geoRadius:asc", ReservedNameForFilter { name: S("_geoRadius") }), ("_geoRadius:asc", ReservedNameForFilter { name: S("_geoRadius") }),
("_geoRadius(42, 75, 59):asc", ReservedNameForFilter { name: S("_geoRadius") }), ("_geoRadius(42, 75, 59):asc", ReservedNameForFilter { name: S("_geoRadius") }),
("_geoBoundingBox:asc", ReservedNameForFilter { name: S("_geoBoundingBox") }), ("_geoBoundingBox:asc", ReservedNameForFilter { name: S("_geoBoundingBox") }),
("_geoBoundinxBox((42, 75), (75, 59)):asc", ReservedNameForFilter { name: S("_geoBoundingBox") }), ("_geoBoundingBox((42, 75), (75, 59)):asc", ReservedNameForFilter { name: S("_geoBoundingBox") }),
]; ];
for (input, expected) in invalid_criteria { for (input, expected) in invalid_criteria {

View File

@ -11,7 +11,7 @@ use crate::documents::{self, DocumentsBatchCursorError};
use crate::{CriterionError, DocumentId, FieldId, Object, SortError}; use crate::{CriterionError, DocumentId, FieldId, Object, SortError};
pub fn is_reserved_keyword(keyword: &str) -> bool { pub fn is_reserved_keyword(keyword: &str) -> bool {
["_geo", "_geoDistance", "_geoPoint", "_geoRadius"].contains(&keyword) ["_geo", "_geoDistance", "_geoPoint", "_geoRadius", "_geoBoundingBox"].contains(&keyword)
} }
#[derive(Error, Debug)] #[derive(Error, Debug)]