def test_output(self): """Test that empty or intentionally unchanged glyphs are unchanged, and everything else is changed. """ glyph_sets = self.getGlyphSets( self.instance_glyph_sets, self.instance_weights_to_test) standard = glyph_sets[0] pen = GlyphAreaPen(standard) areas = {} for name in self.instance_glyphs_to_test: standard[name].draw(pen) areas[name] = pen.unload() for other in glyph_sets[1:]: other_pen = GlyphAreaPen(other) for name, area in areas.iteritems(): if name in self.whitelist: continue other[name].draw(other_pen) other_area = other_pen.unload() if name in self.unchanged or not area: self.assertEqual( area, other_area, name + " has changed, but should not have: %s vs. %s." % (area, other_area)) else: self.assertNotEqual( area, other_area, name + " has not changed, but should have: %s vs. %s." % (area, other_area))
def setUp(self): """Determine which glyphs are intentionally unchanged.""" self.unchanged = set() master_a, master_b = self.getGlyphSets( self.master_glyph_sets, self.master_weights_to_test) pen_a = GlyphAreaPen(master_a) pen_b = GlyphAreaPen(master_b) for name in self.master_glyphs_to_test: if name in self.whitelist: continue master_a[name].draw(pen_a) area_a = pen_a.unload() master_b[name].draw(pen_b) area_b = pen_b.unload() if area_a == area_b: if area_a: self.unchanged.add(name) else: assert area_a and area_b
def setUp(self): """Determine which glyphs are intentionally unchanged.""" self.unchanged = set() pen = self.pen = GlyphAreaPen() thin, bold = self.getFonts(self.masters[1], "Roboto", "Thin", "Bold") for glyph in thin: glyph.draw(pen) thin_area = pen.unload() bold[glyph.name].draw(pen) bold_area = pen.unload() if thin_area == bold_area: if thin_area: self.unchanged.add(glyph.name) else: assert thin_area and bold_area