diff options
author | Roozbeh Pournader <roozbeh@google.com> | 2015-01-07 19:00:54 -0800 |
---|---|---|
committer | James Godfrey-Kittle <jamesgk@google.com> | 2015-04-16 12:16:24 -0700 |
commit | a86c86786a6980296408bf22a625747ba9607c7d (patch) | |
tree | 7bd53b9ce34510e639561cced8b7e6a47a7a946b /scripts | |
parent | 403041dcfae9f364038c3dcc034238d2ea1ddafc (diff) |
Add tests for version and revision numbers.
Also add a touchup to fix the revision number.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/roboto_data.py | 13 | ||||
-rwxr-xr-x | scripts/run_android_tests.py | 13 | ||||
-rw-r--r-- | scripts/temporary_touchups.py | 13 |
3 files changed, 31 insertions, 8 deletions
diff --git a/scripts/roboto_data.py b/scripts/roboto_data.py index ef2a773..96a1060 100644 --- a/scripts/roboto_data.py +++ b/scripts/roboto_data.py @@ -1,8 +1,11 @@ #!/usr/bin/python """Post-build changes for Roboto for Android.""" +import os +from os import path import re + WEIGHTS = { 'Thin': 250, 'Light': 300, @@ -25,3 +28,13 @@ def extract_weight_name(font_name): return 'Regular' else: return match.group(1) + + +def get_build_number(): + """Returns the build number as a five-digit string.""" + build_number_txt = path.join( + path.dirname(__file__), os.pardir, 'res', 'buildnumber.txt') + build_number = open(build_number_txt).read().strip() + assert re.match('[0-9]{5}', build_number) + return build_number + diff --git a/scripts/run_android_tests.py b/scripts/run_android_tests.py index bb2bc44..15a4b36 100755 --- a/scripts/run_android_tests.py +++ b/scripts/run_android_tests.py @@ -34,6 +34,19 @@ class TestMetaInfo(unittest.TestCase): font['OS/2'].usWeightClass, expected_numeric_weight) + def test_version_numbers(self): + "Tests the two version numbers of the font to be correct.""" + for font in self.fonts: + build_number = roboto_data.get_build_number() + expected_version = '2.' + build_number + version = font_data.font_version(font) + usable_part_of_version = version.split(';')[0] + self.assertEqual(usable_part_of_version, + 'Version ' + expected_version) + + revision = font_data.printable_font_revision(font, accuracy=5) + self.assertEqual(revision, expected_version) + class TestVerticalMetrics(unittest.TestCase): """Test the vertical metrics of fonts.""" diff --git a/scripts/temporary_touchups.py b/scripts/temporary_touchups.py index 20e407f..7971e23 100644 --- a/scripts/temporary_touchups.py +++ b/scripts/temporary_touchups.py @@ -2,9 +2,6 @@ """Temporary post-build changes for Roboto.""" from datetime import date -import os -from os import path - from nototools import font_data import roboto_data @@ -17,10 +14,10 @@ def apply_temporary_fixes(font): weight_number = roboto_data.WEIGHTS[weight] font['OS/2'].usWeightClass = weight_number - # Update version number from buildnumber.txt - build_number_txt = path.join( - path.dirname(__file__), os.pardir, 'res', 'buildnumber.txt') - build_number = open(build_number_txt).read().strip() - version_record = 'Version 2.%s; %d' % (build_number, date.today().year) + # Update version and revision numbers from buildnumber.txt + build_number = roboto_data.get_build_number() + version_number = '2.' + build_number + version_record = 'Version %s; %d' % (version_number, date.today().year) font_data.set_name_record(font, 5, version_record) + font['head'].fontRevision = float(version_number) |