aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/tests
Commit message (Collapse)AuthorAge
* combine base_unittest.py modules from gm and toolsGravatar epoger2014-07-17
| | | | | | | | | | general cleanup, which will also help with http://skbug.com/2752 ('split existing "gpu" GM results into "gl" and "gles"') R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/397103003
* Drop --clone from commands in skia repo.Gravatar Mike Klein2014-06-27
| | | | | | | | | | | --clone, and SkPicture::clone(), are no longer. CQ_EXTRA_TRYBOTS=tryserver.skia:Housekeeper-PerCommit-Trybot BUG=skia: R=rmistry@google.com Review URL: https://codereview.chromium.org/343813006
* reland "rebaseline_server: download actual-results.json files from GCS ↵Gravatar epoger2014-06-05
| | | | | | | | | | | | | instead of SVN" relands https://codereview.chromium.org/310093003 with modifications. BUG=skia:2641 R=jcgregorio@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/313343003
* Revert "rebaseline_server: download actual-results.json files from GCS ↵Gravatar epoger2014-06-04
| | | | | | | | | | | | | | | | instead of SVN" This reverts commit f4666045f378dee22ce40108e90bf5195634ebfc. BUG=skia:2641 NOTREECHECKS=True NOTRY=True R=jcgregorio@google.com TBR=jcgregorio Author: epoger@google.com Review URL: https://codereview.chromium.org/317783004
* rebaseline_server: download actual-results.json files from GCS instead of SVNGravatar epoger2014-06-04
| | | | | | | | | BUG=skia:553 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/310093003
* make render_pictures properly handle empty expectations fileGravatar commit-bot@chromium.org2014-05-19
| | | | | | | | | | | | | note that this changes the parameters taken by ImageResultsAndExpectations::Parse() BUG=skia:1942 R=scroggo@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/289063010 git-svn-id: http://skia.googlecode.com/svn/trunk@14779 2bbb7eff-a529-9590-31e7-b0007b416f81
* render_pictures: add --mismatchPath flagGravatar commit-bot@chromium.org2014-05-15
| | | | | | | | | | | | | When set, it will only write out images that don't match expectations. BUG=skia:1942 R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/283123002 git-svn-id: http://skia.googlecode.com/svn/trunk@14748 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adds dashboard link for one-line plot on each alert item.Gravatar commit-bot@chromium.org2014-05-13
| | | | | | | | | | | | | BUG=skia:2523 NOTRY=true R=kelvinly@google.com TBR=rmistry@google.com Author: bensong@google.com Review URL: https://codereview.chromium.org/280663002 git-svn-id: http://skia.googlecode.com/svn/trunk@14713 2bbb7eff-a529-9590-31e7-b0007b416f81
* add --readJsonSummaryPath to render_picturesGravatar commit-bot@chromium.org2014-05-12
| | | | | | | | | | | BUG=skia:1942 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/273783004 git-svn-id: http://skia.googlecode.com/svn/trunk@14695 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove self-tests for no-longer-supported rebaseline.pyGravatar commit-bot@chromium.org2014-05-02
| | | | | | | | | | | | | | | see https://codereview.chromium.org/262703003 ('mark rebaseline.py as deprecated') NOTREECHECKS=True NOTRY=True R=borenet@google.com TBR=borenet Author: epoger@google.com Review URL: https://codereview.chromium.org/265073002 git-svn-id: http://skia.googlecode.com/svn/trunk@14538 2bbb7eff-a529-9590-31e7-b0007b416f81
* reland r14391 ('fix contents of render_pictures JSON summary')Gravatar commit-bot@chromium.org2014-04-29
| | | | | | | | | | | | BUG=skia:2043,skia:2044,skia:1942,skia:2466 R=caryclark@google.com TBR=caryclark Author: epoger@google.com Review URL: https://codereview.chromium.org/262453002 git-svn-id: http://skia.googlecode.com/svn/trunk@14443 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of fix contents of render_pictures JSON summary ↵Gravatar commit-bot@chromium.org2014-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/259703002/) Reason for revert: This appears to have caused regressions such as this one: http://108.170.220.120:10117/builders/Perf-Win7-ShuttleA-HD2000-x86-Release/builds/2117/steps/CheckForRegressions/logs/stdio Original issue's description: > fix contents of render_pictures JSON summary > > BUG=skia:2043,skia:2044,skia:1942 > > Committed: http://code.google.com/p/skia/source/detail?r=14391 R=scroggo@google.com, epoger@google.com TBR=epoger@google.com, scroggo@google.com NOTREECHECKS=true NOTRY=true BUG=skia:2043,skia:2044,skia:1942 Author: caryclark@google.com Review URL: https://codereview.chromium.org/251103004 git-svn-id: http://skia.googlecode.com/svn/trunk@14399 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix contents of render_pictures JSON summaryGravatar commit-bot@chromium.org2014-04-28
| | | | | | | | | | | BUG=skia:2043,skia:2044,skia:1942 R=scroggo@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/259703002 git-svn-id: http://skia.googlecode.com/svn/trunk@14391 2bbb7eff-a529-9590-31e7-b0007b416f81
* add some .gitignores related to gm and toolsGravatar commit-bot@chromium.org2014-04-11
| | | | | | | | | | | | | NOTREECHECKS=True NOTRY=True R=scroggo@google.com TBR=scroggo Author: epoger@google.com Review URL: https://codereview.chromium.org/234603004 git-svn-id: http://skia.googlecode.com/svn/trunk@14150 2bbb7eff-a529-9590-31e7-b0007b416f81
* add explicit filepaths to render_pictures JSON summaryGravatar commit-bot@chromium.org2014-04-10
| | | | | | | | | | | BUG=skia:2230,skia:1942 R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/226293002 git-svn-id: http://skia.googlecode.com/svn/trunk@14133 2bbb7eff-a529-9590-31e7-b0007b416f81
* Adds bench expectations to expectations/bench; fixes bench alert test's ↵Gravatar commit-bot@chromium.org2014-03-28
| | | | | | | | | | | | | | dependency on script line number. BUG=skia:2307 NOTRY=true R=borenet@google.com Author: bensong@google.com Review URL: https://codereview.chromium.org/214913005 git-svn-id: http://skia.googlecode.com/svn/trunk@13979 2bbb7eff-a529-9590-31e7-b0007b416f81
* add --writeChecksumBasedFilenames flag to render_picturesGravatar commit-bot@chromium.org2014-03-19
| | | | | | | | | | | BUG=skia:1455,skia:2230 R=robertphillips@google.com, robertphillips@chromium.org Author: epoger@google.com Review URL: https://codereview.chromium.org/202983003 git-svn-id: http://skia.googlecode.com/svn/trunk@13859 2bbb7eff-a529-9590-31e7-b0007b416f81
* short-term fix for RunToolSelfTestsGravatar commit-bot@chromium.org2014-03-18
| | | | | | | | | | | | | | BUG=skia:2307 NOTREECHECKS=True NOTRY=True R=bensong@google.com TBR=bensong Author: epoger@google.com Review URL: https://codereview.chromium.org/202203010 git-svn-id: http://skia.googlecode.com/svn/trunk@13846 2bbb7eff-a529-9590-31e7-b0007b416f81
* render_pictures unittests: run over a dir with multiple SKPs, like productionGravatar commit-bot@chromium.org2014-03-12
| | | | | | | | | | | BUG=skia:1942 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/194563004 git-svn-id: http://skia.googlecode.com/svn/trunk@13775 2bbb7eff-a529-9590-31e7-b0007b416f81
* Updates bench alert test output to match latest changes.Gravatar commit-bot@chromium.org2014-02-20
| | | | | | | | | | | | BUG=skia:2193 TBR=epoger@google.com NOTRY=true Author: bensong@google.com Review URL: https://codereview.chromium.org/167703005 git-svn-id: http://skia.googlecode.com/svn/trunk@13513 2bbb7eff-a529-9590-31e7-b0007b416f81
* Separates faster and slower bench alerts; sorts by delta.Gravatar commit-bot@chromium.org2014-02-20
| | | | | | | | | | | | | | Separate faster and slower bench alerts; sort by delta. BUG=skia:2193 NOTRY=true R=epoger@google.com Author: bensong@google.com Review URL: https://codereview.chromium.org/172683002 git-svn-id: http://skia.googlecode.com/svn/trunk@13512 2bbb7eff-a529-9590-31e7-b0007b416f81
* Create a common utility for finding and running binaries in out/Gravatar commit-bot@chromium.org2014-02-07
| | | | | | | | | | | | NOTRY=true BUG=skia:2019 R=epoger@google.com Author: rmistry@google.com Review URL: https://codereview.chromium.org/156173005 git-svn-id: http://skia.googlecode.com/svn/trunk@13367 2bbb7eff-a529-9590-31e7-b0007b416f81
* render_pictures: adjust unittests to show specific failuresGravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | BUG=skia:2043,skia:2044 R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/139383004 git-svn-id: http://skia.googlecode.com/svn/trunk@13100 2bbb7eff-a529-9590-31e7-b0007b416f81
* [try 2] skpmaker: make the SKP more graphically interesting (add a border)Gravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | | | | | relanding https://codereview.chromium.org/137993008/ BUG=skia:1942 NOTRY=True R=rmistry@google.com TBR=rmistry Author: epoger@google.com Review URL: https://codereview.chromium.org/139583002 git-svn-id: http://skia.googlecode.com/svn/trunk@13088 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of skpmaker: make the SKP slightly more interesting (add a border) ↵Gravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/137993008/) Reason for revert: broke http://108.170.217.252:10117/builders/Build-Mac10.6-GCC-x86-Debug/builds/2837 Original issue's description: > skpmaker: make the SKP slightly more interesting (add a border) > > This will help with render_pictures self-testing > BUG=skia:1942 > > Committed: http://code.google.com/p/skia/source/detail?r=13086 R=rmistry@google.com TBR=rmistry@google.com NOTREECHECKS=true NOTRY=true BUG=skia:1942 Author: epoger@google.com Review URL: https://codereview.chromium.org/139553002 git-svn-id: http://skia.googlecode.com/svn/trunk@13087 2bbb7eff-a529-9590-31e7-b0007b416f81
* skpmaker: make the SKP slightly more interesting (add a border)Gravatar commit-bot@chromium.org2014-01-15
| | | | | | | | | | | | This will help with render_pictures self-testing BUG=skia:1942 R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/137993008 git-svn-id: http://skia.googlecode.com/svn/trunk@13086 2bbb7eff-a529-9590-31e7-b0007b416f81
* deprecate tools/test_rendering.py and tools/test_pictures.pyGravatar commit-bot@chromium.org2014-01-14
| | | | | | | | | | | | | they will be removed entirely on/after Feb 1 unless there is objection BUG=skia:1943 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/135783003 git-svn-id: http://skia.googlecode.com/svn/trunk@13065 2bbb7eff-a529-9590-31e7-b0007b416f81
* add unittest for render_pictures binaryGravatar commit-bot@chromium.org2014-01-07
| | | | | | | | | | | | | Once committed, this will be run as part of RunToolSelfTests on http://108.170.217.252:10117/builders/Housekeeper-PerCommit . BUG=skia:1943 R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/124253002 git-svn-id: http://skia.googlecode.com/svn/trunk@12941 2bbb7eff-a529-9590-31e7-b0007b416f81
* create tools/tests/run_all.py to run all our Python self-tests within toolsGravatar commit-bot@chromium.org2013-12-19
| | | | | | | | | | | | | | | | Eventually, we want all of these self-tests to be written in Python; this change makes it easier for us to add new Python self-tests, and discourages the addition of bash self-tests. BUG=skia:677,skia:1943 NOTRY=True R=rmistry@google.com, scroggo@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/112163004 git-svn-id: http://skia.googlecode.com/svn/trunk@12775 2bbb7eff-a529-9590-31e7-b0007b416f81
* Changes bench_graph_svg.py test to check_bench_regressions.py test; deletes ↵Gravatar bensong@google.com2013-10-24
| | | | | | | | deprecated chunks in syn_bucket_subdir. Review URL: https://codereview.chromium.org/27377002 git-svn-id: http://skia.googlecode.com/svn/trunk@11952 2bbb7eff-a529-9590-31e7-b0007b416f81
* More work to integrate skimage with rebaseline tools.Gravatar scroggo@google.com2013-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tools/skimage_main.cpp: Add the ability to write the results to checksum based filenames, much like GM uses. This will allow using the skpdiff server to rebaseline images. Write the keys in the JSON file as <original image>_<pref config>.png, so it matches gm_json.IMAGE_FILENAME_PATTERN. Also replace '_' with '-' in the original file name, to avoid confusing the pattern matcher. The '_' to '-' replacement also happens on the output filename. Read the keys in a similar manner. In make_outname, no longer remove a suffix. This fixes a bug where subset decoding writes multiple subsets to the same file. tools/rebaseline.py: Since the filenames written to json files now match gm_json.IMAGE_FILENAME_PATTERN, enable the option to match based on configs/tests when rebaselining skimage. test json files: Update to match the new format of output. gm/gm_expectations: Add a constructor that takes a BitmapAndDigest as input. tools/tests/skimage_self_test.py: Test that reading the expectations file just created by skimage with the same file actually compares to the original file (rather than just succeeding because expectations were missing). Change the expectations files to match the new format. Will require a buildbot change to use the new flag: https://codereview.chromium.org/27389002/ BUG=1466 R=epoger@google.com Review URL: https://codereview.chromium.org/26297004 git-svn-id: http://skia.googlecode.com/svn/trunk@11902 2bbb7eff-a529-9590-31e7-b0007b416f81
* Truly ignore failures in skimage.Gravatar scroggo@google.com2013-10-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the expectation is set to ignore failures, do not return a negative 1 (indicating a failure) when a successful decode does not match the expectation. If the file could not be decoded at all, report this to the user depending on the input expectations file: No expectations: Report failure. The user wanted to know if the file could be decoded. Expectations expected a valid result: Report failure. The decode should have matched the result. Empty expectations: Print a message that the expectation was missing, but still return success from skimage, since this is a newly added file (i.e. it has no expectation yet). Ignore failure: Return success from skimage, since it is a known failure. Update the self tests to ensure these behaviors. R=epoger@google.com Review URL: https://codereview.chromium.org/22293006 git-svn-id: http://skia.googlecode.com/svn/trunk@11790 2bbb7eff-a529-9590-31e7-b0007b416f81
* Suppresses failing test due to change of bench_graph_svg. Will fix later.Gravatar bensong@google.com2013-10-15
| | | | | | Review URL: https://codereview.chromium.org/26894004 git-svn-id: http://skia.googlecode.com/svn/trunk@11766 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add README file so git will create empty dirGravatar epoger@google.com2013-09-11
| | | | | | | | | | | BUG=skia:1613 (SkipBuildbotRuns) R=rmistry@google.com Review URL: https://codereview.chromium.org/24112002 git-svn-id: http://skia.googlecode.com/svn/trunk@11203 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add forgotten file from https://code.google.com/p/skia/source/detail?r=11063Gravatar epoger@google.com2013-09-03
| | | | | | Review URL: https://codereview.chromium.org/23911002 git-svn-id: http://skia.googlecode.com/svn/trunk@11064 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py: fix --add-new when there are no expectations at allGravatar epoger@google.com2013-09-03
| | | | | | | | | BUG=skia:1582 R=rmistry@google.com Review URL: https://codereview.chromium.org/23899003 git-svn-id: http://skia.googlecode.com/svn/trunk@11063 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py: add --bugs and --unreviewed flagsGravatar epoger@google.com2013-09-03
| | | | | | | | | BUG=skia:1569 R=borenet@google.com Review URL: https://codereview.chromium.org/23478011 git-svn-id: http://skia.googlecode.com/svn/trunk@11058 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py self-test: validate that unknown fields are maintainedGravatar epoger@google.com2013-08-29
| | | | | | | | | BUG=skia:1569 R=bsalomon@google.com Review URL: https://codereview.chromium.org/23702006 git-svn-id: http://skia.googlecode.com/svn/trunk@11008 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove temporary workaround TODOs from tools/tests/run.shGravatar epoger@google.com2013-08-28
| | | | | | | | R=rmistry@google.com Review URL: https://codereview.chromium.org/23490009 git-svn-id: http://skia.googlecode.com/svn/trunk@10989 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove base-* directories from gm expected/actual paths; just use platform namesGravatar epoger@google.com2013-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BUG=skia:1512 The buildbot master continues to set gm_image_subdir, but the slaves no longer use that component when building GM paths (they just use builder_name instead). But gm_image_subdir is still used for SKP storage paths under gs://chromium-skia-gm/playback/gm-actual , for now... Immediately before committing this CL, I will copy the actual-results.json files from their old locations to their new locations (within the skia-autogen repo) so that both old and new versions of rebaseline.py will be able to retrieve actual results, like so: svn cp base-android-galaxy-nexus/Test-Android-GalaxyNexus-SGX540-Arm7-Debug/base-android-galaxy-nexus Test-Android-GalaxyNexus-SGX540-Arm7-Debug svn cp base-android-galaxy-nexus/Test-Android-GalaxyNexus-SGX540-Arm7-Release/base-android-galaxy-nexus Test-Android-GalaxyNexus-SGX540-Arm7-Release svn cp base-android-nexus-10/Test-Android-Nexus10-MaliT604-Arm7-Debug/base-android-nexus-10 Test-Android-Nexus10-MaliT604-Arm7-Debug ... svn cp base-shuttle-win7-intel-float/Test-Win7-ShuttleA-HD2000-x86-Debug/base-shuttle-win7-intel-float Test-Win7-ShuttleA-HD2000-x86-Debug svn cp base-shuttle-win7-intel-float/Test-Win7-ShuttleA-HD2000-x86-Release/base-shuttle-win7-intel-float Test-Win7-ShuttleA-HD2000-x86-Release Once we see this CL land successfully, I will delete the actual-results.json files from their OLD location within skia-autogen, like so: svn rm base-android-galaxy-nexus svn rm base-android-nexus-10 ... svn rm base-shuttle-win7-intel-directwrite svn rm base-shuttle-win7-intel-float R=borenet@google.com, rmistry@google.com Review URL: https://codereview.chromium.org/23120002 git-svn-id: http://skia.googlecode.com/svn/trunk@10821 2bbb7eff-a529-9590-31e7-b0007b416f81
* Delete image-based rebaselining tool; we have switched to checksumsGravatar epoger@google.com2013-08-02
| | | | | | | | R=borenet@google.com Review URL: https://codereview.chromium.org/21901004 git-svn-id: http://skia.googlecode.com/svn/trunk@10524 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py: add --keep-going-on-failure option, off by defaultGravatar epoger@google.com2013-07-16
| | | | | | | | R=borenet@google.com Review URL: https://codereview.chromium.org/18092004 git-svn-id: http://skia.googlecode.com/svn/trunk@10109 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix Housekeeper bot after r9961Gravatar epoger@google.com2013-07-10
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9965 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py: error out early if --expectations-root not pointing at ↵Gravatar epoger@google.com2013-07-10
| | | | | | | | | | | gm-expected dir BUG=https://code.google.com/p/skia/issues/detail?id=1403 R=senorblanco@chromium.org Review URL: https://codereview.chromium.org/18416005 git-svn-id: http://skia.googlecode.com/svn/trunk@9961 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py: use specified configs/tests as a FILTER over actually-run testsGravatar epoger@google.com2013-07-10
| | | | | | | | | | | | | Now that we have the actual-results.json file for every bot type, we know the full set of tests that actual results are available for. If configs and/or tests are specified, just use those as FILTERS over the actually available results. R=senorblanco@chromium.org Review URL: https://codereview.chromium.org/18324018 git-svn-id: http://skia.googlecode.com/svn/trunk@9956 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py: if expectations dir contains JSON format results, update ↵Gravatar epoger@google.com2013-07-08
| | | | | | | | | | | | those instead of image files Part of Step 3 in https://goto.google.com/ChecksumTransitionDetail R=senorblanco@chromium.org Review URL: https://codereview.chromium.org/18348018 git-svn-id: http://skia.googlecode.com/svn/trunk@9910 2bbb7eff-a529-9590-31e7-b0007b416f81
* rebaseline.py self-tests: prepare to add tests of JSON-format rebaseliningGravatar epoger@google.com2013-07-03
| | | | | | | | | | | | For now, rebaseline.py still does not support JSON-format rebaselining, so the one self-test reports failure. But this change will allow us to test the JSON-format rebaselining once rebaseline.py supports it. R=scroggo@google.com Review URL: https://codereview.chromium.org/18348015 git-svn-id: http://skia.googlecode.com/svn/trunk@9896 2bbb7eff-a529-9590-31e7-b0007b416f81
* Create jsondiff tool to capture diffs between two JSON expectations files.Gravatar epoger@google.com2013-07-02
| | | | | | | | | | | | | This will be used to view diffs before committing rebaselines, or to review exactly what changed between two baseline revisions in the past. Part of Step 3 in https://goto.google.com/ChecksumTransitionDetail R=scroggo@google.com Review URL: https://codereview.chromium.org/18103005 git-svn-id: http://skia.googlecode.com/svn/trunk@9878 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix rebaseline.py self-test to account for r9859Gravatar epoger@google.com2013-07-02
| | | | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/18559002 git-svn-id: http://skia.googlecode.com/svn/trunk@9872 2bbb7eff-a529-9590-31e7-b0007b416f81
* Treat empty directory properly in skimage.Gravatar scroggo@google.com2013-06-21
| | | | | | | | | | | | | | | | Instead of treating an empty directory as a file that failed to decode, treat it as an empty directory. Add self tests to check for this. Builds upon from https://codereview.chromium.org/16866010, which was reverted. R=epoger@google.com Review URL: https://codereview.chromium.org/17101029 git-svn-id: http://skia.googlecode.com/svn/trunk@9730 2bbb7eff-a529-9590-31e7-b0007b416f81