From 666ff6748aba4a4b335d4cebbc68f3952878a8c3 Mon Sep 17 00:00:00 2001 From: gnxlxnxx Date: Tue, 23 Jun 2020 20:30:50 +0200 Subject: [PATCH] Update tests --- tests/unit_test.rs | 145 ++++++++++++++++++--------------------------- 1 file changed, 59 insertions(+), 86 deletions(-) diff --git a/tests/unit_test.rs b/tests/unit_test.rs index 60abc8a..09aa683 100644 --- a/tests/unit_test.rs +++ b/tests/unit_test.rs @@ -6,78 +6,63 @@ mod tests { #[should_panic] fn test_overlapping_circles_rsl() { let radius = 0.5; - let test_point = Vector { - origin: Point::new(radius, 0.0), - angle: Angle::zero(), - magnitude: radius, - }; - RouteCSC::rsl(test_point).unwrap(); + let end_point = Point::new(radius, 0.0); + let end_angle = Angle::zero(); + RouteCSC::rsl(radius, end_point, end_angle).unwrap(); } #[test] #[should_panic] fn test_overlapping_circles_lsr() { let radius = 0.5; - let test_point = Vector { - origin: Point::new(-radius, 0.0), - angle: Angle::zero(), - magnitude: radius, - }; - RouteCSC::lsr(test_point).unwrap(); + let end_point = Point::new(-radius, 0.0); + let end_angle = Angle::zero(); + RouteCSC::lsr(radius, end_point, end_angle).unwrap(); } #[test] #[should_panic] fn test_far_apart_circles_rlr() { let radius = 0.5; - let test_point = Vector { - origin: Point::new(4.0, 0.0), - angle: Angle::zero(), - magnitude: radius, - }; - RouteCCC::rlr(test_point).unwrap(); + let end_point = Point::new(7.0 * radius, 0.0); + let end_angle = Angle::zero(); + RouteCCC::rlr(radius, end_point, end_angle).unwrap(); } #[test] #[should_panic] fn test_far_apart_circles_lrl() { let radius = 0.5; - let test_point = Vector { - origin: Point::new(-4.0, 0.0), - angle: Angle::zero(), - magnitude: radius, - }; - RouteCCC::rlr(test_point).unwrap(); + let end_point = Point::new(-7.0 * radius, 0.0); + let end_angle = Angle::zero(); + RouteCCC::rlr(radius, end_point, end_angle).unwrap(); } #[test] fn test_points_rsr() { { let radius = 0.5; - let test_point = Vector { - origin: Point::new(0.0, 10.0), - angle: Angle::zero(), - magnitude: radius, - }; + let end_point = Point::new(0.0, 10.0); + let end_angle = Angle::zero(); + let expected_result_rsr = RouteCSC { - start: CircleVector { + start: CirclePath { center: Point::new(0.5, 0.0), radius: radius, angle: Angle::zero(), }, - tangent: Vector { + tangent: StraightPath { origin: Point::new(0.0, 0.0), - angle: Angle::frac_pi_2(), - magnitude: 10.0, + vector: Vector::from_angle_and_length(Angle::frac_pi_2(), 10.0), }, - end: CircleVector { + end: CirclePath { center: Point::new(0.5, 10.0), radius: radius, angle: Angle::zero(), }, }; - let result_rsr = RouteCSC::rsr(test_point).unwrap(); + let result_rsr = RouteCSC::rsr(radius, end_point, end_angle).unwrap(); assert!(result_rsr.start.approx_eq(expected_result_rsr.start)); assert!(result_rsr.tangent.approx_eq(expected_result_rsr.tangent)); @@ -89,30 +74,27 @@ mod tests { fn test_points_rsl() { { let radius = 0.5; - let test_point = Vector { - origin: Point::new(0.0, 10.0), - angle: Angle::zero(), - magnitude: radius, - }; + let end_point = Point::new(0.0, 10.0); + let end_angle = Angle::zero(); + let expected_result_rsl = RouteCSC { - start: CircleVector { + start: CirclePath { center: Point::new(0.5, 0.0), radius: radius, angle: Angle::zero(), }, - tangent: Vector { + tangent: StraightPath { origin: Point::new(0.0, 0.0), - angle: Angle::frac_pi_2(), - magnitude: 10.0, + vector: Vector::from_angle_and_length(Angle::frac_pi_2(), 10.0), }, - end: CircleVector { + end: CirclePath { center: Point::new(-0.5, 10.0), radius: radius, angle: Angle::zero(), }, }; - let result_rsl = RouteCSC::rsl(test_point).unwrap(); + let result_rsl = RouteCSC::rsl(radius, end_point, end_angle).unwrap(); assert!(result_rsl.start.approx_eq(expected_result_rsl.start)); assert!(result_rsl.tangent.approx_eq(expected_result_rsl.tangent)); @@ -124,30 +106,27 @@ mod tests { fn test_points_lsl() { { let radius = 0.5; - let test_point = Vector { - origin: Point::new(0.0, 10.0), - angle: Angle::zero(), - magnitude: radius, - }; + let end_point = Point::new(0.0, 10.0); + let end_angle = Angle::zero(); + let expected_result_lsl = RouteCSC { - start: CircleVector { + start: CirclePath { center: Point::new(-0.5, 0.0), radius: radius, angle: Angle::zero(), }, - tangent: Vector { + tangent: StraightPath { origin: Point::new(0.0, 0.0), - angle: Angle::frac_pi_2(), - magnitude: 10.0, + vector: Vector::from_angle_and_length(Angle::frac_pi_2(), 10.0), }, - end: CircleVector { + end: CirclePath { center: Point::new(-0.5, 10.0), radius: radius, angle: Angle::zero(), }, }; - let result_lsl = RouteCSC::lsl(test_point).unwrap(); + let result_lsl = RouteCSC::lsl(radius, end_point, end_angle).unwrap(); assert!(result_lsl.start.approx_eq(expected_result_lsl.start)); assert!(result_lsl.tangent.approx_eq(expected_result_lsl.tangent)); @@ -159,30 +138,27 @@ mod tests { fn test_point_lsr() { { let radius = 0.5; - let test_point = Vector { - origin: Point::new(0.0, 10.0), - angle: Angle::zero(), - magnitude: radius, - }; + let end_point = Point::new(0.0, 10.0); + let end_angle = Angle::zero(); + let expected_result_lsr = RouteCSC { - start: CircleVector { + start: CirclePath { center: Point::new(-0.5, 0.0), radius: radius, angle: Angle::zero(), }, - tangent: Vector { + tangent: StraightPath { origin: Point::new(0.0, 0.0), - angle: Angle::frac_pi_2(), - magnitude: 10.0, + vector: Vector::from_angle_and_length(Angle::frac_pi_2(), 10.0), }, - end: CircleVector { + end: CirclePath { center: Point::new(0.5, 10.0), radius: radius, angle: Angle::zero(), }, }; - let result_lsr = RouteCSC::lsr(test_point).unwrap(); + let result_lsr = RouteCSC::lsr(radius, end_point, end_angle).unwrap(); assert!(result_lsr.start.approx_eq(expected_result_lsr.start)); assert!(result_lsr.tangent.approx_eq(expected_result_lsr.tangent)); @@ -194,30 +170,28 @@ mod tests { fn test_point_rlr() { { let radius = 0.5; - let test_point = Vector { - origin: Point::new(3.0, 0.0), - angle: Angle::pi(), - magnitude: radius, - }; + let end_point = Point::new(3.0, 0.0); + let end_angle = Angle::pi(); + let expected_result_rlr = RouteCCC { - start: CircleVector { + start: CirclePath { center: Point::new(0.5, 0.0), radius: radius, angle: Angle::pi(), }, - middle: CircleVector { + middle: CirclePath { center: Point::new(1.5, 0.0), radius: radius, angle: Angle::pi(), }, - end: CircleVector { + end: CirclePath { center: Point::new(2.5, 0.0), radius: radius, angle: Angle::pi(), }, }; - let result_rlr = RouteCCC::rlr(test_point).unwrap(); + let result_rlr = RouteCCC::rlr(radius, end_point, end_angle).unwrap(); assert!(result_rlr.start.approx_eq(expected_result_rlr.start)); assert!(result_rlr.middle.approx_eq(expected_result_rlr.middle)); @@ -229,33 +203,32 @@ mod tests { fn test_point_lrl() { { let radius = 0.5; - let test_point = Vector { - origin: Point::new(-3.0, 0.0), - angle: Angle::pi(), - magnitude: radius, - }; + let end_point = Point::new(-3.0, 0.0); + let end_angle = Angle::pi(); + let expected_result_lrl = RouteCCC { - start: CircleVector { + start: CirclePath { center: Point::new(-0.5, 0.0), radius: radius, angle: Angle::pi(), }, - middle: CircleVector { + middle: CirclePath { center: Point::new(-1.5, 0.0), radius: radius, angle: Angle::pi(), }, - end: CircleVector { + end: CirclePath { center: Point::new(-2.5, 0.0), radius: radius, angle: Angle::pi(), }, }; - let result_lrl = RouteCCC::lrl(test_point).unwrap(); + let result_lrl = RouteCCC::lrl(radius, end_point, end_angle).unwrap(); assert!(result_lrl.start.approx_eq(expected_result_lrl.start)); assert!(result_lrl.middle.approx_eq(expected_result_lrl.middle)); + println!("{:?}", result_lrl.end); assert!(result_lrl.end.approx_eq(expected_result_lrl.end)); } }