Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(66)

Side by Side Diff: gm/rebaseline_server/compare_rendered_pictures.py

Issue 385783002: roll "common" DEPS, and replace tools/pyutils with it (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: rearrange DEPS a bit Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 2
3 """ 3 """
4 Copyright 2014 Google Inc. 4 Copyright 2014 Google Inc.
5 5
6 Use of this source code is governed by a BSD-style license that can be 6 Use of this source code is governed by a BSD-style license that can be
7 found in the LICENSE file. 7 found in the LICENSE file.
8 8
9 Compare results of two render_pictures runs. 9 Compare results of two render_pictures runs.
10 """ 10 """
11 11
12 # System-level imports 12 # System-level imports
13 import logging 13 import logging
14 import os 14 import os
15 import re
16 import time 15 import time
17 16
17 # Must fix up PYTHONPATH before importing from within Skia
18 import fix_pythonpath # pylint: disable=W0611
19
18 # Imports from within Skia 20 # Imports from within Skia
19 import fix_pythonpath # must do this first 21 from py.utils import url_utils
20 from pyutils import url_utils
21 import gm_json 22 import gm_json
22 import imagediffdb 23 import imagediffdb
23 import imagepair 24 import imagepair
24 import imagepairset 25 import imagepairset
25 import results 26 import results
26 27
27 # URL under which all render_pictures images can be found in Google Storage. 28 # URL under which all render_pictures images can be found in Google Storage.
29 #
30 # pylint: disable=C0301
28 # TODO(epoger): Move this default value into 31 # TODO(epoger): Move this default value into
29 # https://skia.googlesource.com/buildbot/+/master/site_config/global_variables.j son 32 # https://skia.googlesource.com/buildbot/+/master/site_config/global_variables.j son
30 DEFAULT_IMAGE_BASE_URL = 'http://chromium-skia-gm.commondatastorage.googleapis.c om/render_pictures/images' 33 # pylint: enable=C0301
34 DEFAULT_IMAGE_BASE_URL = (
35 'http://chromium-skia-gm.commondatastorage.googleapis.com/'
36 'render_pictures/images')
31 37
32 38
33 class RenderedPicturesComparisons(results.BaseComparisons): 39 class RenderedPicturesComparisons(results.BaseComparisons):
34 """Loads results from two different render_pictures runs into an ImagePairSet. 40 """Loads results from two different render_pictures runs into an ImagePairSet.
35 """ 41 """
36 42
37 def __init__(self, subdirs, actuals_root, 43 def __init__(self, subdirs, actuals_root,
38 generated_images_root=results.DEFAULT_GENERATED_IMAGES_ROOT, 44 generated_images_root=results.DEFAULT_GENERATED_IMAGES_ROOT,
39 image_base_url=DEFAULT_IMAGE_BASE_URL, 45 image_base_url=DEFAULT_IMAGE_BASE_URL,
40 diff_base_url=None): 46 diff_base_url=None):
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 # TODO(epoger): Report an error if we find a different number of tiles 144 # TODO(epoger): Report an error if we find a different number of tiles
139 # for A and B? 145 # for A and B?
140 num_tiles = len(tiled_images_A) 146 num_tiles = len(tiled_images_A)
141 for tile_num in range(num_tiles): 147 for tile_num in range(num_tiles):
142 imagepairs_for_this_skp.append(self._create_image_pair( 148 imagepairs_for_this_skp.append(self._create_image_pair(
143 test=skp_name, 149 test=skp_name,
144 config='%s-%d' % (gm_json.JSONKEY_SOURCE_TILEDIMAGES, tile_num), 150 config='%s-%d' % (gm_json.JSONKEY_SOURCE_TILEDIMAGES, tile_num),
145 image_dict_A=tiled_images_A[tile_num], 151 image_dict_A=tiled_images_A[tile_num],
146 image_dict_B=tiled_images_B[tile_num])) 152 image_dict_B=tiled_images_B[tile_num]))
147 153
148 for imagepair in imagepairs_for_this_skp: 154 for one_imagepair in imagepairs_for_this_skp:
149 if imagepair: 155 if one_imagepair:
150 all_image_pairs.add_image_pair(imagepair) 156 all_image_pairs.add_image_pair(one_imagepair)
151 result_type = imagepair.extra_columns_dict\ 157 result_type = one_imagepair.extra_columns_dict\
152 [results.KEY__EXTRACOLUMNS__RESULT_TYPE] 158 [results.KEY__EXTRACOLUMNS__RESULT_TYPE]
153 if result_type != results.KEY__RESULT_TYPE__SUCCEEDED: 159 if result_type != results.KEY__RESULT_TYPE__SUCCEEDED:
154 failing_image_pairs.add_image_pair(imagepair) 160 failing_image_pairs.add_image_pair(one_imagepair)
155 161
162 # pylint: disable=W0201
156 self._results = { 163 self._results = {
157 results.KEY__HEADER__RESULTS_ALL: all_image_pairs.as_dict(), 164 results.KEY__HEADER__RESULTS_ALL: all_image_pairs.as_dict(),
158 results.KEY__HEADER__RESULTS_FAILURES: failing_image_pairs.as_dict(), 165 results.KEY__HEADER__RESULTS_FAILURES: failing_image_pairs.as_dict(),
159 } 166 }
160 167
161 def _validate_dict_version(self, result_dict): 168 def _validate_dict_version(self, result_dict):
162 """Raises Exception if the dict is not the type/version we know how to read. 169 """Raises Exception if the dict is not the type/version we know how to read.
163 170
164 Args: 171 Args:
165 result_dict: dictionary holding output of render_pictures 172 result_dict: dictionary holding output of render_pictures
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
234 extra_columns=extra_columns_dict) 241 extra_columns=extra_columns_dict)
235 except (KeyError, TypeError): 242 except (KeyError, TypeError):
236 logging.exception( 243 logging.exception(
237 'got exception while creating ImagePair for' 244 'got exception while creating ImagePair for'
238 ' test="%s", config="%s", urlPair=("%s","%s")' % ( 245 ' test="%s", config="%s", urlPair=("%s","%s")' % (
239 test, config, imageA_relative_url, imageB_relative_url)) 246 test, config, imageA_relative_url, imageB_relative_url))
240 return None 247 return None
241 248
242 249
243 # TODO(epoger): Add main() so this can be called by vm_run_skia_try.sh 250 # TODO(epoger): Add main() so this can be called by vm_run_skia_try.sh
OLDNEW
« no previous file with comments | « gm/rebaseline_server/compare_configs.py ('k') | gm/rebaseline_server/compare_to_expectations.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698