1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#[macro_use]
mod support;
use font::characters::Character;
use crate::support::{setup, Fixture};
#[test]
fn adobe_blank() {
let mut file = setup(Fixture::CrimsonText);
let values = ok!(file[0].characters())
.into_iter()
.map(|character| match character {
Character::Scalar(value) => (value as u32).to_string(),
Character::Range((start, end)) => format!("{}–{}", start as u32, end as u32),
})
.collect::<Vec<_>>();
assert_eq!(
values,
[
"13",
"32–126",
"160–172",
"174–328",
"330–382",
"393",
"416–417",
"431–432",
"461–468",
"470–476",
"482–483",
"507–511",
"536–539",
"562–563",
"567",
"598",
"700",
"710–711",
"728–733",
"768–780",
"786",
"803",
"806–808",
"956",
"7680–7699",
"7704–7707",
"7710–7723",
"7725–7755",
"7757–7759",
"7764–7771",
"7773–7780",
"7782",
"7784–7799",
"7801",
"7803–7833",
"7840–7929",
"8208–8213",
"8216–8218",
"8220–8222",
"8224–8226",
"8228",
"8230",
"8240",
"8242–8243",
"8248–8250",
"8254",
"8260",
"8304",
"8308",
"8320–8324",
"8364",
"8482",
"8592–8595",
"8706",
"8721–8723",
"8725",
"8730",
"8733–8734",
"8800",
"8804–8805",
"9753",
"10087",
"63632–63640",
"63642–63647",
"64257–64258",
],
);
}