summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/layout.rs14
-rw-r--r--tests/render.py12
2 files changed, 15 insertions, 11 deletions
diff --git a/tests/layout.rs b/tests/layout.rs
index 8a72e84b..096bc43f 100644
--- a/tests/layout.rs
+++ b/tests/layout.rs
@@ -47,7 +47,11 @@ fn main() -> Result<()> {
println!("Running {} test{}", len, if len > 1 { "s" } else { "" });
for (name, src) in filtered {
- panic::catch_unwind(|| test(&name, &src)).ok();
+ panic::catch_unwind(|| {
+ if let Err(e) = test(&name, &src) {
+ println!("error: {}", e);
+ }
+ }).ok();
}
println!();
@@ -65,7 +69,7 @@ fn test(name: &str, src: &str) -> Result<()> {
.. PageStyle::default()
});
- let provider = FileSystemFontProvider::from_listing("fonts/fonts.toml")?;
+ let provider = FileSystemFontProvider::from_index("../fonts/index.json")?;
let font_paths = provider.paths();
typesetter.add_font_provider(provider);
@@ -80,8 +84,8 @@ fn test(name: &str, src: &str) -> Result<()> {
for layout in &layouts {
for index in layout.find_used_fonts() {
fonts.entry(index).or_insert_with(|| {
- let provider_index = loader.get_provider_and_index(index).1;
- font_paths[provider_index].to_string_lossy()
+ let p = loader.get_provider_and_index(index.id).1;
+ &font_paths[p][index.variant]
});
}
}
@@ -94,7 +98,7 @@ fn test(name: &str, src: &str) -> Result<()> {
// Write the font mapping into the serialization file.
writeln!(file, "{}", fonts.len())?;
for (index, path) in fonts.iter() {
- writeln!(file, "{} {}", index, path)?;
+ writeln!(file, "{} {} {}", index.id, index.variant, path)?;
}
layouts.serialize(&mut file)?;
diff --git a/tests/render.py b/tests/render.py
index fe7a1de4..1387ed53 100644
--- a/tests/render.py
+++ b/tests/render.py
@@ -35,10 +35,10 @@ class MultiboxRenderer:
self.fonts = {}
font_count = int(lines[0])
for i in range(font_count):
- parts = lines[i + 1].split(' ', 1)
- index = int(parts[0])
- path = parts[1]
- self.fonts[index] = os.path.join(BASE, '../fonts', path)
+ parts = lines[i + 1].split(' ', 2)
+ index = int(parts[0]), int(parts[1])
+ path = parts[2]
+ self.fonts[index] = os.path.join(BASE, '../../fonts', path)
self.content = lines[font_count + 1:]
@@ -136,8 +136,8 @@ class BoxRenderer:
self.cursor = [x, y]
elif cmd == 'f':
- index = int(parts[0])
- size = pix(float(parts[1]))
+ index = int(parts[0]), int(parts[1])
+ size = pix(float(parts[2]))
self.font = ImageFont.truetype(self.fonts[index], size)
elif cmd == 'w':