use condor_grid::{Grid, GridReplanner, Point, SearchRequest, algorithms::d_star_lite::DStarLite};
#[test]
fn d_star_lite_initializes_and_replans_an_open_grid() {
let grid = Grid::new(3, 3).expect("small grid is valid");
let request = SearchRequest::new(Point::new(0, 0), Point::new(2, 2));
let mut replanner = DStarLite::new();
let initial = replanner
.initialize(&grid, request)
.expect("open endpoints are valid");
let replanned = replanner.replan().expect("initialized replanner is valid");
assert!(initial.is_found());
assert!(replanned.is_found());
assert_eq!(replanned.path().map(|path| path.cost()), Some(4));
}