mirror of
https://github.com/chatmail/core.git
synced 2026-05-05 14:26:30 +03:00
Allocate dc_kml_t in a rusty way
This commit is contained in:
committed by
Floris Bruynooghe
parent
b0ef825e67
commit
ec6cc5c355
@@ -837,34 +837,31 @@ fn test_dc_kml_parse() {
|
||||
b"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<kml xmlns=\"http://www.opengis.net/kml/2.2\">\n<Document addr=\"user@example.org\">\n<Placemark><Timestamp><when>2019-03-06T21:09:57Z</when></Timestamp><Point><coordinates accuracy=\"32.000000\">9.423110,53.790302</coordinates></Point></Placemark>\n<PlaceMARK>\n<Timestamp><WHEN > \n\t2018-12-13T22:11:12Z\t</wHeN></Timestamp><Point><coordinates aCCuracy=\"2.500000\"> 19.423110 \t , \n 63.790302\n </coordinates></Point></Placemark>\n</Document>\n</kml>\x00"
|
||||
as *const u8 as *const libc::c_char;
|
||||
|
||||
let kml: *mut dc_kml_t = dc_kml_parse(&context.ctx, xml, strlen(xml));
|
||||
let mut kml = dc_kml_parse(&context.ctx, xml, strlen(xml));
|
||||
|
||||
assert!(!(*kml).addr.is_null());
|
||||
assert_eq!(
|
||||
as_str((*kml).addr as *const libc::c_char),
|
||||
"user@example.org",
|
||||
);
|
||||
assert!(!kml.addr.is_null());
|
||||
assert_eq!(as_str(kml.addr as *const libc::c_char), "user@example.org",);
|
||||
|
||||
assert_eq!(dc_array_get_cnt((*kml).locations), 2);
|
||||
assert_eq!(dc_array_get_cnt(kml.locations), 2);
|
||||
|
||||
assert!(dc_array_get_latitude((*kml).locations, 0) > 53.6f64);
|
||||
assert!(dc_array_get_latitude((*kml).locations, 0) < 53.8f64);
|
||||
assert!(dc_array_get_longitude((*kml).locations, 0) > 9.3f64);
|
||||
assert!(dc_array_get_longitude((*kml).locations, 0) < 9.5f64);
|
||||
assert!(dc_array_get_accuracy((*kml).locations, 0) > 31.9f64);
|
||||
assert!(dc_array_get_accuracy((*kml).locations, 0) < 32.1f64);
|
||||
assert_eq!(dc_array_get_timestamp((*kml).locations, 0), 1551906597);
|
||||
assert!(dc_array_get_latitude(kml.locations, 0) > 53.6f64);
|
||||
assert!(dc_array_get_latitude(kml.locations, 0) < 53.8f64);
|
||||
assert!(dc_array_get_longitude(kml.locations, 0) > 9.3f64);
|
||||
assert!(dc_array_get_longitude(kml.locations, 0) < 9.5f64);
|
||||
assert!(dc_array_get_accuracy(kml.locations, 0) > 31.9f64);
|
||||
assert!(dc_array_get_accuracy(kml.locations, 0) < 32.1f64);
|
||||
assert_eq!(dc_array_get_timestamp(kml.locations, 0), 1551906597);
|
||||
|
||||
assert!(dc_array_get_latitude((*kml).locations, 1) > 63.6f64);
|
||||
assert!(dc_array_get_latitude((*kml).locations, 1) < 63.8f64);
|
||||
assert!(dc_array_get_longitude((*kml).locations, 1) > 19.3f64);
|
||||
assert!(dc_array_get_longitude((*kml).locations, 1) < 19.5f64);
|
||||
assert!(dc_array_get_accuracy((*kml).locations, 1) > 2.4f64);
|
||||
assert!(dc_array_get_accuracy((*kml).locations, 1) < 2.6f64);
|
||||
assert!(dc_array_get_latitude(kml.locations, 1) > 63.6f64);
|
||||
assert!(dc_array_get_latitude(kml.locations, 1) < 63.8f64);
|
||||
assert!(dc_array_get_longitude(kml.locations, 1) > 19.3f64);
|
||||
assert!(dc_array_get_longitude(kml.locations, 1) < 19.5f64);
|
||||
assert!(dc_array_get_accuracy(kml.locations, 1) > 2.4f64);
|
||||
assert!(dc_array_get_accuracy(kml.locations, 1) < 2.6f64);
|
||||
|
||||
assert_eq!(dc_array_get_timestamp((*kml).locations, 1), 1544739072);
|
||||
assert_eq!(dc_array_get_timestamp(kml.locations, 1), 1544739072);
|
||||
|
||||
dc_kml_unref(kml);
|
||||
dc_kml_unref(&mut kml);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user