| Index: gm/rebaseline_server/results.py
|
| diff --git a/gm/rebaseline_server/results.py b/gm/rebaseline_server/results.py
|
| index 0a53136a2508a181a04f8ebe5722e2431bb6f932..66105a49213bc182ac554df882e8ced12404efbd 100755
|
| --- a/gm/rebaseline_server/results.py
|
| +++ b/gm/rebaseline_server/results.py
|
| @@ -21,6 +21,10 @@ import time
|
|
|
| # Imports from within Skia
|
| #
|
| +# TODO(epoger): Once we move the create_filepath_url() function out of
|
| +# download_actuals into a shared utility module, we won't need to import
|
| +# download_actuals anymore.
|
| +#
|
| # We need to add the 'gm' directory, so that we can import gm_json.py within
|
| # that directory. That script allows us to parse the actual-results.json file
|
| # written out by the GM tool.
|
| @@ -31,6 +35,7 @@ GM_DIRECTORY = os.path.dirname(PARENT_DIRECTORY)
|
| TRUNK_DIRECTORY = os.path.dirname(GM_DIRECTORY)
|
| if GM_DIRECTORY not in sys.path:
|
| sys.path.append(GM_DIRECTORY)
|
| +import download_actuals
|
| import gm_json
|
| import imagediffdb
|
| import imagepair
|
| @@ -76,8 +81,8 @@ IMAGEPAIR_SET_DESCRIPTIONS = ('expected image', 'actual image')
|
|
|
| DEFAULT_ACTUALS_DIR = '.gm-actuals'
|
| DEFAULT_EXPECTATIONS_DIR = os.path.join(TRUNK_DIRECTORY, 'expectations', 'gm')
|
| -DEFAULT_GENERATED_IMAGES_ROOT = os.path.join(PARENT_DIRECTORY, 'static',
|
| - 'generated-images')
|
| +DEFAULT_GENERATED_IMAGES_ROOT = os.path.join(
|
| + PARENT_DIRECTORY, '.generated-images')
|
|
|
|
|
| class Results(object):
|
| @@ -92,16 +97,23 @@ class Results(object):
|
|
|
| def __init__(self, actuals_root=DEFAULT_ACTUALS_DIR,
|
| expected_root=DEFAULT_EXPECTATIONS_DIR,
|
| - generated_images_root=DEFAULT_GENERATED_IMAGES_ROOT):
|
| + generated_images_root=DEFAULT_GENERATED_IMAGES_ROOT,
|
| + diff_base_url=None):
|
| """
|
| Args:
|
| actuals_root: root directory containing all actual-results.json files
|
| expected_root: root directory containing all expected-results.json files
|
| generated_images_root: directory within which to create all pixel diffs;
|
| if this directory does not yet exist, it will be created
|
| + diff_base_url: base URL within which the client should look for diff
|
| + images; if not specified, defaults to a "file:///" URL representation
|
| + of generated_images_root
|
| """
|
| time_start = int(time.time())
|
| self._image_diff_db = imagediffdb.ImageDiffDB(generated_images_root)
|
| + self._diff_base_url = (
|
| + diff_base_url or
|
| + download_actuals.create_filepath_url(generated_images_root))
|
| self._actuals_root = actuals_root
|
| self._expected_root = expected_root
|
| self._load_actual_and_expected()
|
| @@ -343,8 +355,12 @@ class Results(object):
|
| self._expected_root)
|
| expected_builder_dicts = Results._read_dicts_from_root(self._expected_root)
|
|
|
| - all_image_pairs = imagepairset.ImagePairSet(IMAGEPAIR_SET_DESCRIPTIONS)
|
| - failing_image_pairs = imagepairset.ImagePairSet(IMAGEPAIR_SET_DESCRIPTIONS)
|
| + all_image_pairs = imagepairset.ImagePairSet(
|
| + descriptions=IMAGEPAIR_SET_DESCRIPTIONS,
|
| + diff_base_url=self._diff_base_url)
|
| + failing_image_pairs = imagepairset.ImagePairSet(
|
| + descriptions=IMAGEPAIR_SET_DESCRIPTIONS,
|
| + diff_base_url=self._diff_base_url)
|
|
|
| all_image_pairs.ensure_extra_column_values_in_summary(
|
| column_id=KEY__EXTRACOLUMN__RESULT_TYPE, values=[
|
|
|