MCPcopy Create free account
hub / github.com/HumbleUI/Skija / FontMgrTest

Class FontMgrTest

tests/java/FontMgrTest.java:21–128  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

19import io.github.humbleui.skija.test.runner.TestRunner;
20
21public class FontMgrTest implements Executable {
22 @Override
23 public void execute() throws Exception {
24 TestRunner.testMethod(this, "base");
25 TestRunner.testMethod(this, "dWriteUseSystemRenderingParams");
26 }
27
28 public void base() {
29 // FontManager
30 TypefaceFontProvider fm = new TypefaceFontProvider();
31 Typeface jbMono = FontMgr.getDefault().makeFromFile("fonts/JetBrainsMono-Regular.ttf", 0);
32 fm.registerTypeface(jbMono);
33 Typeface jbMonoBold = FontMgr.getDefault().makeFromFile("fonts/JetBrainsMono-Bold.ttf", 0);
34 fm.registerTypeface(jbMonoBold);
35 Typeface inter = FontMgr.getDefault().makeFromFile("fonts/InterHinted-Regular.ttf", 0);
36 fm.registerTypeface(inter, "Interface");
37
38 assertEquals(2, fm.getFamiliesCount());
39 assertEquals("JetBrains Mono", fm.getFamilyName(0));
40 assertEquals("Interface", fm.getFamilyName(1));
41
42 try (var ss = fm.makeStyleSet(0)) {
43 assertEquals(2, ss.count()); // ?
44 }
45
46 try (var ss = fm.makeStyleSet(1)) {
47 assertEquals(1, ss.count()); // ?
48 }
49
50 // FontStyleSet
51 try (var ss = fm.matchFamily("JetBrains Mono")) {
52 assertEquals(2, ss.count());
53 assertEquals(FontStyle.NORMAL, ss.getStyle(0));
54 assertEquals("JetBrains Mono", ss.getStyleName(0));
55
56 assertEquals(FontStyle.BOLD, ss.getStyle(1));
57 assertEquals("JetBrains Mono", ss.getStyleName(1));
58
59 assertEquals(2, jbMono.getRefCount());
60 try (var face = ss.getTypeface(0)) {
61 assertEquals(3, jbMono.getRefCount());
62 assertEquals(jbMono, face);
63 }
64 assertEquals(2, jbMono.getRefCount());
65
66 assertEquals(2, jbMonoBold.getRefCount());
67 try (var face = ss.getTypeface(1)) {
68 assertEquals(3, jbMonoBold.getRefCount());
69 assertEquals(jbMonoBold, face);
70 }
71 assertEquals(2, jbMonoBold.getRefCount());
72
73 assertEquals(2, jbMono.getRefCount());
74 try (var face = ss.matchStyle(FontStyle.NORMAL)) {
75 assertEquals(3, jbMono.getRefCount());
76 assertEquals(jbMono, face);
77 }
78 assertEquals(2, jbMono.getRefCount());

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected