Chromium Code Reviews| Index: gm/rebaseline_server/imagepairset.py |
| diff --git a/gm/rebaseline_server/imagepairset.py b/gm/rebaseline_server/imagepairset.py |
| index 26c833e1b0bd95e1c9c39ebb3103307209d5507a..bcc1940ad25a48a2ecc887fade4ea87962bac75d 100644 |
| --- a/gm/rebaseline_server/imagepairset.py |
| +++ b/gm/rebaseline_server/imagepairset.py |
| @@ -16,8 +16,12 @@ import column |
| KEY__EXTRACOLUMNHEADERS = 'extraColumnHeaders' |
| KEY__IMAGEPAIRS = 'imagePairs' |
| KEY__IMAGESETS = 'imageSets' |
| -KEY__IMAGESETS__BASE_URL = 'baseUrl' |
| -KEY__IMAGESETS__DESCRIPTION = 'description' |
| +KEY__IMAGESETS__FIELD__BASE_URL = 'baseUrl' |
| +KEY__IMAGESETS__FIELD__DESCRIPTION = 'description' |
| +KEY__IMAGESETS__SET__DIFFS = 'diffs' |
| +KEY__IMAGESETS__SET__IMAGE_A = 'imageA' |
| +KEY__IMAGESETS__SET__IMAGE_B = 'imageB' |
| +KEY__IMAGESETS__SET__WHITEDIFFS = 'whiteDiffs' |
| DEFAULT_DESCRIPTIONS = ('setA', 'setB') |
| @@ -42,16 +46,18 @@ class ImagePairSet(object): |
| self._extra_column_tallies = {} # maps column_id -> values |
| # -> instances_per_value |
| self._image_pair_dicts = [] |
| + self._image_base_url = None |
| + self._diff_base_url = '/static/generated-images' |
|
rmistry
2014/03/17 13:48:58
Can we make this a module level constant?
epoger
2014/03/17 14:21:36
Done.
|
| def add_image_pair(self, image_pair): |
| """Adds an ImagePair; this may be repeated any number of times.""" |
| # Special handling when we add the first ImagePair... |
| if not self._image_pair_dicts: |
| - self._base_url = image_pair.base_url |
| + self._image_base_url = image_pair.base_url |
| - if image_pair.base_url != self._base_url: |
| + if image_pair.base_url != self._image_base_url: |
| raise Exception('added ImagePair with base_url "%s" instead of "%s"' % ( |
| - image_pair.base_url, self._base_url)) |
| + image_pair.base_url, self._image_base_url)) |
| self._image_pair_dicts.append(image_pair.as_dict()) |
| extra_columns_dict = image_pair.extra_columns_dict |
| if extra_columns_dict: |
| @@ -127,14 +133,28 @@ class ImagePairSet(object): |
| Uses the KEY__* constants as keys. |
| """ |
| + key_description = KEY__IMAGESETS__FIELD__DESCRIPTION |
| + key_base_url = KEY__IMAGESETS__FIELD__BASE_URL |
| return { |
| KEY__EXTRACOLUMNHEADERS: self._column_headers_as_dict(), |
| KEY__IMAGEPAIRS: self._image_pair_dicts, |
| - KEY__IMAGESETS: [{ |
| - KEY__IMAGESETS__BASE_URL: self._base_url, |
| - KEY__IMAGESETS__DESCRIPTION: self._descriptions[0], |
| - }, { |
| - KEY__IMAGESETS__BASE_URL: self._base_url, |
| - KEY__IMAGESETS__DESCRIPTION: self._descriptions[1], |
| - }], |
| + KEY__IMAGESETS: { |
| + KEY__IMAGESETS__SET__IMAGE_A: { |
| + key_description: self._descriptions[0], |
| + key_base_url: self._image_base_url, |
| + }, |
| + KEY__IMAGESETS__SET__IMAGE_B: { |
| + key_description: self._descriptions[1], |
| + key_base_url: self._image_base_url, |
| + }, |
| + KEY__IMAGESETS__SET__DIFFS: { |
| + key_description: 'color difference per channel', |
| + key_base_url: self._diff_base_url + '/diffs', |
|
rmistry
2014/03/17 13:48:58
Use posixpath.join here instead? and below.
epoger
2014/03/17 14:21:36
Done.
|
| + }, |
| + KEY__IMAGESETS__SET__WHITEDIFFS: { |
| + key_description: 'differing pixels in white', |
| + key_base_url: ( |
| + self._diff_base_url + '/whitediffs'), |
| + }, |
| + }, |
| } |