use crate::*;
#[test]
pub fn latitude_signed_degrees() {
assert_eq!(parse_latitude("81.528"), Ok(81.528)); assert_eq!(parse_latitude("24"), Ok(24.)); assert_eq!(parse_latitude("0.0"), Ok(0.)); assert_eq!(parse_latitude("90.01"), Err(Error::OutOfRange)); assert_eq!(parse_latitude("-90.01"), Err(Error::OutOfRange)); assert_eq!(parse_longitude("90.0"), Ok(90.)); assert_eq!(parse_longitude("-90.0"), Ok(-90.)); assert!(parse_latitude("NaN").is_err()); assert_eq!(parse_latitude("bob.0"), Err(Error::InvalidFormat)); }
#[test]
pub fn longitude_signed_degrees() {
assert_eq!(parse_longitude("161.99"), Ok(161.99)); assert_eq!(parse_longitude(" 55.0 "), Ok(55.0)); assert_eq!(parse_longitude("55 .0"), Err(Error::InvalidFormat)); assert_eq!(parse_longitude("2.528°"), Ok(2.528)); assert_eq!(parse_longitude("-161.528°"), Ok(-161.528)); assert_eq!(parse_longitude("+161.528°"), Ok(161.528)); assert_eq!(parse_longitude("161"), Ok(161.)); assert_eq!(parse_longitude("181.0"), Err(Error::OutOfRange)); assert_eq!(parse_longitude("-181.0"), Err(Error::OutOfRange)); assert_eq!(parse_longitude("180.0"), Ok(180.)); assert_eq!(parse_longitude("-180.0"), Ok(-180.)); assert!(parse_longitude("NaN").is_err()); assert_eq!(parse_longitude("0.x"), Err(Error::InvalidFormat)); }
#[test]
pub fn location_signed_degrees() {
assert_eq!(parse_location("45.0°,-10.0"), Ok((45., -10.)));
assert_eq!(parse_location("-5.1°, 1.0"), Ok((-5.1, 1.)));
assert_eq!(parse_location("45.0°,"), Err(Error::InvalidFormat)); assert_eq!(parse_location("-5.1+1.0"), Ok((-5.1, 1.))); }