Skip to content

Commit b8f12f4

Browse files
committed
add design axis model woff and woff2 tests
1 parent 2b64c8d commit b8f12f4

File tree

1 file changed

+68
-0
lines changed

1 file changed

+68
-0
lines changed

tests/test_models_designaxis.py

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,14 @@ def get_font_model():
1111
return FontModel(Path("tests/assets/fonts/Recursive-VF.subset.ttf").resolve())
1212

1313

14+
def get_font_model_woff():
15+
return FontModel(Path("tests/assets/fonts/Recursive-VF.subset.woff").resolve())
16+
17+
18+
def get_font_model_woff2():
19+
return FontModel(Path("tests/assets/fonts/Recursive-VF.subset.woff2").resolve())
20+
21+
1422
def test_designaxis_model_default(qtbot, qtmodeltester):
1523
tableview = QTableView()
1624
model = DesignAxisModel()
@@ -50,6 +58,66 @@ def test_designaxis_model_filled(qtbot, qtmodeltester):
5058
]
5159

5260

61+
def test_designaxis_model_filled_woff(qtbot, qtmodeltester):
62+
tableview = QTableView()
63+
model = DesignAxisModel()
64+
tableview.setModel(model)
65+
qtbot.addWidget(tableview)
66+
model.load_font(get_font_model_woff())
67+
68+
# test with qtmodeltester
69+
qtmodeltester.check(model)
70+
71+
# confirm that font data loaded appropriately
72+
assert model._h_header == ["(Min, Max) [Default]", "Edit Values"]
73+
assert model.ordered_axis_tags == ["MONO", "CASL", "wght", "slnt", "CRSV"]
74+
assert model._v_header == ["MONO", "CASL", "wght", "slnt", "CRSV"]
75+
assert model.fvar_axes == {
76+
"MONO": [0.0, 0.0, 1.0],
77+
"CASL": [0.0, 0.0, 1.0],
78+
"wght": [300.0, 300.0, 1000.0],
79+
"slnt": [-15.0, 0.0, 0.0],
80+
"CRSV": [0.0, 0.5, 1.0],
81+
}
82+
assert model._data == [
83+
["(0.0, 1.0) [0.0]", ""],
84+
["(0.0, 1.0) [0.0]", ""],
85+
["(300.0, 1000.0) [300.0]", ""],
86+
["(-15.0, 0.0) [0.0]", ""],
87+
["(0.0, 1.0) [0.5]", ""],
88+
]
89+
90+
91+
def test_designaxis_model_filled_woff2(qtbot, qtmodeltester):
92+
tableview = QTableView()
93+
model = DesignAxisModel()
94+
tableview.setModel(model)
95+
qtbot.addWidget(tableview)
96+
model.load_font(get_font_model_woff2())
97+
98+
# test with qtmodeltester
99+
qtmodeltester.check(model)
100+
101+
# confirm that font data loaded appropriately
102+
assert model._h_header == ["(Min, Max) [Default]", "Edit Values"]
103+
assert model.ordered_axis_tags == ["MONO", "CASL", "wght", "slnt", "CRSV"]
104+
assert model._v_header == ["MONO", "CASL", "wght", "slnt", "CRSV"]
105+
assert model.fvar_axes == {
106+
"MONO": [0.0, 0.0, 1.0],
107+
"CASL": [0.0, 0.0, 1.0],
108+
"wght": [300.0, 300.0, 1000.0],
109+
"slnt": [-15.0, 0.0, 0.0],
110+
"CRSV": [0.0, 0.5, 1.0],
111+
}
112+
assert model._data == [
113+
["(0.0, 1.0) [0.0]", ""],
114+
["(0.0, 1.0) [0.0]", ""],
115+
["(300.0, 1000.0) [300.0]", ""],
116+
["(-15.0, 0.0) [0.0]", ""],
117+
["(0.0, 1.0) [0.5]", ""],
118+
]
119+
120+
53121
def test_designaxis_model_get_instance_data(qtbot):
54122
tableview = QTableView()
55123
model = DesignAxisModel()

0 commit comments

Comments
 (0)