read_fonts/tables/
stat.rs1include!("../../generated/generated_stat.rs");
4
5#[cfg(test)]
6mod tests {
7 use types::{Fixed, NameId};
8
9 use crate::{table_provider::TableProvider, FontRef};
10
11 use super::*;
12
13 #[test]
14 fn smoke_test() {
15 let font = FontRef::new(font_test_data::VAZIRMATN_VAR).unwrap();
16 let table = font.stat().unwrap();
17 assert_eq!(table.design_axis_count(), 1);
18 let axis_record = &table.design_axes().unwrap()[0];
19 assert_eq!(axis_record.axis_tag(), Tag::new(b"wght"));
20 assert_eq!(axis_record.axis_name_id(), NameId::new(257));
21 assert_eq!(axis_record.axis_ordering(), 0);
22 let axis_values = table.offset_to_axis_values().unwrap().unwrap();
23 let axis_values = axis_values
24 .axis_values()
25 .iter()
26 .map(|x| x.unwrap())
27 .collect::<Vec<_>>();
28
29 assert_eq!(axis_values.len(), 3);
30 let last = &axis_values[2];
31 if let AxisValue::Format1(table) = last {
32 assert_eq!(table.axis_index(), 0);
33 assert_eq!(table.value_name_id(), NameId::new(264));
34 assert_eq!(table.value(), Fixed::from_f64(700.0));
35 }
36 }
37}