refactor: replace bbox::BBox with bounding_box::Aabb2 across codebase
This commit is contained in:
65
test_bbox_replacement.rs
Normal file
65
test_bbox_replacement.rs
Normal file
@@ -0,0 +1,65 @@
|
||||
//! Simple test to verify that the bbox replacement from bbox::BBox to bounding_box::Aabb2 works correctly
|
||||
|
||||
use bounding_box::Aabb2;
|
||||
|
||||
#[test]
|
||||
fn test_bbox_replacement() {
|
||||
// Test basic construction
|
||||
let bbox1 = Aabb2::from_xywh(10.0, 20.0, 100.0, 200.0);
|
||||
assert_eq!(bbox1.x1(), 10.0);
|
||||
assert_eq!(bbox1.y1(), 20.0);
|
||||
assert_eq!(bbox1.x2(), 110.0);
|
||||
assert_eq!(bbox1.y2(), 220.0);
|
||||
|
||||
// Test from coordinates
|
||||
let bbox2 = Aabb2::from_x1y1x2y2(10.0, 20.0, 110.0, 220.0);
|
||||
assert_eq!(bbox2.x1(), 10.0);
|
||||
assert_eq!(bbox2.y1(), 20.0);
|
||||
assert_eq!(bbox2.x2(), 110.0);
|
||||
assert_eq!(bbox2.y2(), 220.0);
|
||||
|
||||
// Test equality
|
||||
assert_eq!(bbox1.x1(), bbox2.x1());
|
||||
assert_eq!(bbox1.y1(), bbox2.y1());
|
||||
assert_eq!(bbox1.x2(), bbox2.x2());
|
||||
assert_eq!(bbox1.y2(), bbox2.y2());
|
||||
|
||||
// Test contains
|
||||
let smaller = Aabb2::from_xywh(20.0, 30.0, 50.0, 100.0);
|
||||
assert!(bbox1.contains_bbox(&smaller));
|
||||
|
||||
// Test padding
|
||||
let padded = bbox1.padding(10.0);
|
||||
assert_eq!(padded.x1(), 5.0);
|
||||
assert_eq!(padded.y1(), 15.0);
|
||||
assert_eq!(padded.x2(), 115.0);
|
||||
assert_eq!(padded.y2(), 225.0);
|
||||
|
||||
// Test scale
|
||||
let scaled = bbox1.scale(nalgebra::Vector2::new(2.0, 2.0));
|
||||
assert_eq!(scaled.x1(), -40.0);
|
||||
assert_eq!(scaled.y1(), -80.0);
|
||||
assert_eq!(scaled.x2(), 160.0);
|
||||
assert_eq!(scaled.y2(), 320.0);
|
||||
|
||||
println!("All bbox replacement tests passed!");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_integer_bbox() {
|
||||
// Test with integer types
|
||||
let bbox = Aabb2::from_xywh(1, 2, 10, 20);
|
||||
assert_eq!(bbox.x1(), 1);
|
||||
assert_eq!(bbox.y1(), 2);
|
||||
assert_eq!(bbox.x2(), 11);
|
||||
assert_eq!(bbox.y2(), 22);
|
||||
|
||||
let area = bbox.area();
|
||||
assert_eq!(area, 200);
|
||||
}
|
||||
|
||||
fn main() {
|
||||
test_bbox_replacement();
|
||||
test_integer_bbox();
|
||||
println!("Test completed successfully!");
|
||||
}
|
||||
Reference in New Issue
Block a user