condor-pathfinding-grid 0.4.0

Grid pathfinding, preprocessing, replanning, and multi-agent algorithms for Condor.
Documentation
//! Fixture-free direct D* Lite integration smoke.

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