Format remaining files

This commit is contained in:
Pyfisch 2018-11-06 13:01:35 +01:00
parent bf47f90da6
commit cb07debcb6
252 changed files with 5944 additions and 3744 deletions

View file

@ -28,14 +28,26 @@ fn delimiter_input() {
// Area::Circle tests
#[test]
fn valid_circle_inputs() {
assert_eq!(Area::parse("10.2, 3.4, 5.2", Shape::Circle),
Some(Area::Circle { left: 10.2, top: 3.4, radius: 5.2 }));
assert_eq!(
Area::parse("10.2, 3.4, 5.2", Shape::Circle),
Some(Area::Circle {
left: 10.2,
top: 3.4,
radius: 5.2
})
);
}
#[test]
fn valid_negative_circle_inputs() {
assert_eq!(Area::parse("-10.2, -3.4, 5.2", Shape::Circle),
Some(Area::Circle { left: -10.2, top: -3.4, radius: 5.2 }));
assert_eq!(
Area::parse("-10.2, -3.4, 5.2", Shape::Circle),
Some(Area::Circle {
left: -10.2,
top: -3.4,
radius: 5.2
})
);
}
#[test]
@ -46,77 +58,133 @@ fn invalid_negative_circle_radius() {
// Area::Rectangle tests
#[test]
fn rectangle_valid_input() {
assert_eq!(Area::parse("5.2, 1.1, 10.2, 3.4", Shape::Rectangle),
Some(Area::Rectangle { top_left: (5.2, 1.1),
bottom_right: (10.2, 3.4) }));
assert_eq!(
Area::parse("5.2, 1.1, 10.2, 3.4", Shape::Rectangle),
Some(Area::Rectangle {
top_left: (5.2, 1.1),
bottom_right: (10.2, 3.4)
})
);
}
#[test]
fn rectangle_valid_negative_input() {
assert_eq!(Area::parse("-10.2, -3.4, -5.2, -1.1", Shape::Rectangle),
Some(Area::Rectangle { top_left: (-10.2, -3.4),
bottom_right: (-5.2, -1.1) }));
assert_eq!(
Area::parse("-10.2, -3.4, -5.2, -1.1", Shape::Rectangle),
Some(Area::Rectangle {
top_left: (-10.2, -3.4),
bottom_right: (-5.2, -1.1)
})
);
}
#[test]
fn rectangle_invalid_input() {
assert_eq!(Area::parse("5.2, 4.3, 10.2, 1.1.2", Shape::Rectangle),
Some(Area::Rectangle { top_left: (5.2, 0.0),
bottom_right: (10.2, 4.3) }));
assert_eq!(
Area::parse("5.2, 4.3, 10.2, 1.1.2", Shape::Rectangle),
Some(Area::Rectangle {
top_left: (5.2, 0.0),
bottom_right: (10.2, 4.3)
})
);
}
#[test]
fn rectangle_unordered_input() {
assert_eq!(Area::parse("5.2, 1.1, 10.2, 4.3", Shape::Rectangle),
Some(Area::Rectangle { top_left: (5.2, 1.1),
bottom_right: (10.2, 4.3) }));
assert_eq!(
Area::parse("5.2, 1.1, 10.2, 4.3", Shape::Rectangle),
Some(Area::Rectangle {
top_left: (5.2, 1.1),
bottom_right: (10.2, 4.3)
})
);
}
// Area::Polygon tests
#[test]
fn polygon_six_points_valid_input() {
assert_eq!(Area::parse("1.1, 1.1, 6.1, 1.1, 3.1, 3.1", Shape::Polygon),
Some(Area::Polygon { points: vec![1.1, 1.1, 6.1, 1.1, 3.1, 3.1] }));
assert_eq!(
Area::parse("1.1, 1.1, 6.1, 1.1, 3.1, 3.1", Shape::Polygon),
Some(Area::Polygon {
points: vec![1.1, 1.1, 6.1, 1.1, 3.1, 3.1]
})
);
}
#[test]
fn polygon_six_points_valid_negative_input() {
assert_eq!(Area::parse("1.1, -1.1, 6.1, -1.1, 3.1, -3.1", Shape::Polygon),
Some(Area::Polygon { points: vec![1.1, -1.1, 6.1, -1.1, 3.1, -3.1] }));
assert_eq!(
Area::parse("1.1, -1.1, 6.1, -1.1, 3.1, -3.1", Shape::Polygon),
Some(Area::Polygon {
points: vec![1.1, -1.1, 6.1, -1.1, 3.1, -3.1]
})
);
}
#[test]
fn polygon_six_points_invalid_input() {
assert_eq!(Area::parse(";1.1, 1.1,'; 6.1,(*^() 1.1, 3.1, 3.1, 100.1 %$,;", Shape::Polygon),
Some(Area::Polygon { points: vec![1.1, 1.1, 6.1, 1.1, 3.1, 3.1] }));
assert_eq!(
Area::parse(
";1.1, 1.1,'; 6.1,(*^() 1.1, 3.1, 3.1, 100.1 %$,;",
Shape::Polygon
),
Some(Area::Polygon {
points: vec![1.1, 1.1, 6.1, 1.1, 3.1, 3.1]
})
);
}
#[test]
fn polygon_eight_points_invalid_input() {
assert_eq!(Area::parse("1.1, -1.1, 6.1, -1.1, 1.1, -3.1, 6.1, -3.1.2, 12.1", Shape::Polygon),
Some(Area::Polygon { points: vec![1.1, -1.1, 6.1, -1.1, 1.1, -3.1, 6.1, 0.0] }));
assert_eq!(
Area::parse(
"1.1, -1.1, 6.1, -1.1, 1.1, -3.1, 6.1, -3.1.2, 12.1",
Shape::Polygon
),
Some(Area::Polygon {
points: vec![1.1, -1.1, 6.1, -1.1, 1.1, -3.1, 6.1, 0.0]
})
);
}
#[test]
fn test_hit_test_circle() {
let circ1 = Area::Circle { left: 20.0, top: 10.0, radius: 5.0 };
assert!(!circ1.hit_test(&Point2D::new(10.0, 20.0)));
let circ2 = Area::Circle { left: 10.0, top: 10.0, radius: 5.0 };
assert!(circ2.hit_test(&Point2D::new(10.0, 12.0)));
let circ1 = Area::Circle {
left: 20.0,
top: 10.0,
radius: 5.0,
};
assert!(!circ1.hit_test(&Point2D::new(10.0, 20.0)));
let circ2 = Area::Circle {
left: 10.0,
top: 10.0,
radius: 5.0,
};
assert!(circ2.hit_test(&Point2D::new(10.0, 12.0)));
}
#[test]
fn test_hit_test_rectangle() {
let rect1 = Area::Rectangle { top_left: (1.0, 7.0), bottom_right: (15.0, 10.0) };
assert!(!rect1.hit_test(&Point2D::new(10.0, 5.0)));
let rect2 = Area::Rectangle { top_left: (8.0, 10.0), bottom_right: (20.0, 12.0) };
assert!(rect2.hit_test(&Point2D::new(10.0, 12.0)));
let rect1 = Area::Rectangle {
top_left: (1.0, 7.0),
bottom_right: (15.0, 10.0),
};
assert!(!rect1.hit_test(&Point2D::new(10.0, 5.0)));
let rect2 = Area::Rectangle {
top_left: (8.0, 10.0),
bottom_right: (20.0, 12.0),
};
assert!(rect2.hit_test(&Point2D::new(10.0, 12.0)));
}
#[test]
fn test_hit_test_polygon() {
let poly1 = Area::Polygon { points: vec![1.0, 2.0, 3.0, 4.0, 5.0, 6.0] };
assert!(!poly1.hit_test(&Point2D::new(10.0, 5.0)));
let poly2 = Area::Polygon { points: vec![7.0, 7.5, 8.2, 9.0, 11.0, 12.0] };
assert!(!poly2.hit_test(&Point2D::new(10.0, 5.0)));
let poly1 = Area::Polygon {
points: vec![1.0, 2.0, 3.0, 4.0, 5.0, 6.0],
};
assert!(!poly1.hit_test(&Point2D::new(10.0, 5.0)));
let poly2 = Area::Polygon {
points: vec![7.0, 7.5, 8.2, 9.0, 11.0, 12.0],
};
assert!(!poly2.hit_test(&Point2D::new(10.0, 5.0)));
}